⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 email.h

📁 基于东南大学开发的SEP3203的ARM7中的所有驱动
💻 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 + -