📄 email.h
字号:
#ifndef _ASIX_EMAIL_H
#define _ASIX_EMAIL_H
#include "stdio.h"
#include "stdlib.h"
#include "string.h"
"
#include "asixdef.h"
#include "ppsmtype.h"
#include "systmr.h"
#include "asixwin.h"
#include "asixapp.h"
#include "asix_tb.h"
#include "asix_mn.h"
#include "asix_lb.h"
#include "asix_sb.h"
#include "asix_ed.h"
#include "select.h"
#include "alarm_q.h"
#include "disp.h"
#include "bitmap.h"
#include "const.h"
#include "cdtime.h"
//#include <..\app\phbook\phbook.h>
//#include <..\app\phbook\phdatabs.h>
#include "scheme.h"
#include "emaildb.h"
#include "carddb.h"
#include "ntpaddb.h"
//字段
#define EMAIL_TIME 0 // 邮件时间字段
#define EMAIL_SUBIECT 1 // 主题字段
#define EMAIL_ADDRESSER 2 // 发件人字段
#define EMAIL_TYPE 3 // 邮件类型字段
#define EMAIL_BOX 4 // 邮件所在箱型字段(收件箱、发件箱、草稿箱、垃圾箱)
#define EMAIL_ADDRESSEE 5 // 收件人字段
#define EMAIL_CONTENT 6 // 内容字段
#define EMAIL_FIELD_NUM 7 // 字段数目
#define UNACTIVE 0
#define SINGLEACTIVE 1
#define DOUBLEACTIVE 2
#define EOD 0xFFFF
//search mode
//#define BY_TIME 0
#define BY_SUBJECT 1
#define BY_ADDRESSER 2
//邮件类型(已阅、未阅、已发、未发)
#define EMAIL_READ '0' // 已阅
#define EMAIL_UNREAD '1' // 未阅
#define EMAIL_SEND '2' // 已发
#define EMAIL_UNSEND '3' // 未发
//邮件所在箱型(收件箱、发件箱、发件箱、垃圾箱)
#define EMAIL_RECEIVED_BOX '0' // 收件箱
#define EMAIL_UNSEND_BOX '1' // 发件箱
#define EMAIL_SEND_BOX '2' // 草稿箱
#define EMAIL_RUB_BOX '3' // 垃圾箱
//时间查找范围
#define EMAIL_DAY_RANGE "0" // 一天内
#define EMAIL_WEEK_RANGE "1" // 一周内
#define EMAIL_MONTH_RANGE "2" // 一月内
#define EMAIL_YEAR_RANGE "3" // 一年内
//返回值
#define EMAIL_ERROR 0
#define EMAIL_OK 1
#define EMAIL_X_DISP_NUM 5 //横向显示邮件数
#define EMAIL_Y_DISP_NUM 2 //纵向显示邮件数
#define EMAIL_DISP_NUM 7 //一页可显示邮件数目
#define MAX_EMAIL_NUM 100
#define KEYSTRING_LEN 20
#define EMAIL_TIME_LEN 15 //时间字符串长度
#define EMAIL_SUBJECT_LEN 13 //可显示主题长度
#define EMAIL_ADDRESSER_LEN 31 //发件人字符串长度
#define EMAIL_TYPE_LEN 2 //邮件类型字符串长度
#define EMAIL_BOX_LEN 2 //邮件所在箱型字符串长度
#define EMAIL_ADDRESSEE_LEN 31 //收件人字符串长度
#define EMAIL_CONTENT_LEN 2000//内容字符串长度
#define EMAIL_DISP_TIME_LEN 17 //可显示时间的长度
//调用地址本的3种模式
#define EMAIL_EXTER_ACCESS 0 //从地址本获得地址
#define EMAIL_INTER_ACCESS 1 //把地址保存到地址本
#define EMAIL_EXTER_NEW 2 //直接从地址本到新建邮件
//用户帐号显示页面
#define ACCOUNT_LEN 60 //直接从地址本到新建邮件
#define ACCOUNT_DISP_NUM 5 //一页可显示帐号数目
#define ACCOUNT_MAX_NUM 10 //可容纳的最大帐号数目
/*** data layer ***/
typedef struct {
/*前5个作为索引字段*/
char *time; //邮件时间
char *subject; //主题
char *addresser; //发件人(别人)
char *type; //邮件类型
char *box; //邮件所在箱型字段(收件箱、发件箱、草稿箱、垃圾箱)
char *addressee; //收件人(本人)
char *content; //内容
}EMAIL_STRU;
/*
//时间结构
typedef struct
{
U32 year;
U16 month;
U16 day;
U16 hour;
U16 minute;
U16 second;
}EMAIL_TIME_STRU;
*/
//查找结构
typedef struct{
char *keystring; //查找关键字
// char *type; //显示某信箱或未读邮件
U8 field; //搜索字段
U8 mode; //查找模式
}EMAIL_SEARCH_STRU;
//网络服务器结构
typedef struct{
char dns_srv[40];
char helo[40];
char smtp_srv[40];
char pop3_srv[40];
char pop3_user[40];
char pop3_pass[40];
char dial_acnts[40];
char dial_pass[40];
}NET_SERVER_STRU;
/*
//应有程序存放字段值的结构
typedef struct
{
BYTE *fieldvalue; //字段值(单值)
WORD headoffset; //字段头的偏移
}FIELDLIST;
*/
//全局变量
//extern LOCALSEARCHLIST *global_email_list; //当前列表
//extern DBLACB *emaillacb; //定义一个数据库控制块的变量
extern char cur_account[ACCOUNT_LEN]; //定义一个当前使用的帐号变量
extern NET_SERVER_STRU net_server_stru; //服务器
extern void EmailBox(void);
extern void SelectOrAddEmailAccount( void );
extern STATUS AccountDisplayList( char *account_list, U16 *suffix_in_digs, U32 *bt_name, U8 reserved );
extern void TimetoChar( TIME_STRU *time, TIME_STRU *conversion_time );
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -