📄 scheme.h
字号:
#ifndef _ASIX_SCHEME_H
#define _ASIX_SCHEME_H
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <asixdef.h>
#include <sys\ppsmtype.h>
#include <sys\systmr.h>
#include <database\schemedb.h>
#include <ppsm.h> //1
#include <asixwin.h>
#include <asixapp.h>
#include <asixwin\asix_mn.h>
#include <asixwin\asix_lb.h>
#include <asixwin\asix_sb.h>
#include <asixwin\asix_ed.h>
#include <asixwin\select.h>
#include <asixwin\alarm_q.h>
#include <asixwin\disp.h>
#include <resource\bitmap.h>
#include <..\app\include\const.h>
#include <..\app\include\cdtime.h>
//字段
#define SCHEME_TIME 0 // 时间字段
#define SCHEME_NAME 1 // 名称字段
#define SCHEME_ALARM_TYPE 2 // 提醒方式(不提醒、开闹铃或提示窗)
#define SCHEME_TYPE 3 // 到期标志
#define SCHEME_ALARM_MODE 4 // 定期提醒模式(按月或按年等)
#define SCHEME_CONTENT 5 // 内容字段
#define SCHEME_REPEAT_NUM 6 // 定期提醒次数字段
#define SCHEME_FIELD_NUM 7 // 字段数目
#define UNACTIVE 0
#define SINGLEACTIVE 1
#define DOUBLEACTIVE 2
#define EOD 0xFFFF
//alarm type
#define DO_NOT_ALARM '0'
#define RING_ALARM '1'
#define WINDOW_ALARM '2'
//alarm mode
//#define ALL_ROUTINE_ALARM 0
#define BY_HOUR '0'
#define BY_DAY '1'
#define BY_WEEK '2'
#define BY_MONTH '3'
#define BY_YEAR '4'
#define BY_HALF_HOUR 5
#define BY_QUARTER 6
#define BY_FIVE_MINUTE 7
//search mode
#define BY_TIME 0
#define BY_NAME 1
//显示的类别(到期、未到期或全部的提醒)
#define SCHEME_MATURITY '0' // 到期
#define SCHEME_NO_MATURITY '1' // 未到期
#define SCHEME_ALL '2' // 全部
//时间查找范围
#define SCHEME_DAY_RANGE "0" // 一天内
#define SCHEME_WEEK_RANGE "1" // 一周内
#define SCHEME_MONTH_RANGE "2" // 一月内
#define SCHEME_YEAR_RANGE "3" // 一年内
//返回值
#define SCHEME_ERROR 0
#define SCHEME_OK 1
#define SCHEME_DEL 2 //记录已删除
#define SCHEME_MATU 3 //此记录已到期或已被删除
#define SCHEME_DISP_NUM 7 //主页面可显示提醒底数目
#define MAX_SCHEME_NUM 50
#define MAX_EMPTY_PERCENT 5
#define MAX_INPUT_SCHEME MAX_SCHEME_NUM //当天可容纳底最多提醒
#define KEYSTRING_LEN 20
#define SCHEME_TIME_LEN 15 //时间字符串长度
#define SCHEME_NAME_LEN 13 //可显示名称长度
#define SCHEME_ALARM_TYPE_LEN 2 //提醒方式(不提醒、开闹铃或提示窗)字符串长度
#define SCHEME_TYPE_LEN 2 //到期标志字符串长度
#define SCHEME_ALARM_MODE_LEN 2 //定期提醒模式(按月或按年等)的字符串长度
#define SCHEME_CONTENT_LEN 61 //提醒内容的最大长度
#define SCHEME_ALARM_REPEAT_NUM_LEN 5 //提醒次数的长度
#define SCHEME_DISP_TIME_LEN 17 //可显示时间的长度
//#define SCHEME_DATE_LEN 9 //日期长度
//使用定时器的类别
#define ADD_TIMER 0 //增加定时器
#define DEL_TIMER 1 //删除定时器
#define MODIFY_TIMER 2 //修改定时器
//下拉框列表
extern struct LBOX_ITEM list_alarm[4]; //提醒方式(不提醒、开闹铃或提示窗)
extern struct LBOX_ITEM list_period[6]; //定期提醒模式(按月或按年等)
extern struct LBOX_ITEM list_year[16];
extern struct LBOX_ITEM list_month[13];
extern struct LBOX_ITEM list_day[32];
extern struct LBOX_ITEM list_hour[25];
extern struct LBOX_ITEM list_minute[61];
//全局变量
extern LOCALSEARCHLIST *global_scheme_list;//当前列表
//extern DBLACB *schemelacb; //定义一个数据库控制块的变量
/*** data layer ***/
typedef struct scheme_stru{
/*前5个作为索引字段*/
char *time; //提醒时间
char *name; //行程名字
char *alarm_type; //提醒方式(不提醒、开闹铃或提示窗)
char *type; //到期标志
char *alarm_mode; //定期提醒模式(按月或按年等)
char *content; //内容
char *alarm_repeat_num; //定期提醒次数
}SCHEME_STRU;
//时间结构
typedef struct
{
U32 year;
U16 month;
U16 day;
U16 hour;
U16 minute;
U16 second;
}TIME_STRU;
//查找结构
typedef struct{
char *keystring; //查找关键字
char *type; //显示到期、未到期或全部的提醒
U8 field; //搜索字段
U8 mode; //查找模式
}SCHEME_SEARCH_STRU;
//应有程序存放字段值的结构
typedef struct
{
BYTE *fieldvalue; //字段值(单值)
WORD headoffset; //字段头的偏移
}FIELDLIST;
/*del by DSA 2004.07.01*/
//此函数在emldb.c中定义
//extern void FreeDBList( LOCALSEARCHLIST **DB_list, U16 *num );
/*end del*/
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -