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

📄 newsddt.h

📁 这一款新闻类业务的源码
💻 H
📖 第 1 页 / 共 2 页
字号:
#ifndef _Newsddt_H_
#define _Newsddt_H_
/*===============================================================================
头文件包含
=============================================================================== */
#include "AEEModGen.h"
#include "AEEAppGen.h"
#include "AEEShell.h"
#include "AEEMenu.h"
#include "AEEHtmlViewer.h"
#include "AEETAPI.h"
#include "AEEHeap.h"
#include "AEEFile.h"
#include "AEEDB.h"
#include "AEELicense.h"
#include "promptbox.h"
#include "ReadBox.h"
#include "softkey.h"
#include "newsddt_res.h"
#include "newsddt.bid"

/*===============================================================================
常量定义
=============================================================================== */
//服务器地址
#ifdef AEE_SIMULATOR
	#define WEB_HOST            "http://220.194.61.11:1340/"
    #define WEB_HOST_RECOMMEND  "http://220.194.61.16:1113/"                //精彩推荐
#else
	#define WEB_HOST            "http://newsddt.max.uniwise:1340/"
    #define WEB_HOST_RECOMMEND  "http://imgdownload3.max.uniwise:1113/"     //精彩推荐
#endif

#define     WEB_HOST_RECOMMEND2 "?appid=30380"                              //精彩推荐

//#define BLACK_WHITE//是否是黑白机

#ifdef BLACK_WHITE
#define RGB_TEXT                MAKE_RGB(0,0,0)
#define RGB_BK                  MAKE_RGB(255,255,255)
#else
#define RGB_TEXT                MAKE_RGB(0,255,0)
#define RGB_BK                  MAKE_RGB(128,128,128)
#endif

#define	MAX_LIST	            10                  //列表队列最大深度
#define TIME_SPLASH	            1000                //闪屏显示时间
#define WEB_TIMEOUT	            30000	            //WEB连接的超时限制
#define WEB_URL_MAXLENGTH	    1024                //URL的最大长度
#define TITLE_MAX               WEB_URL_MAXLENGTH   //标题的最大长度(我的收藏存储用)
#define CUSTMISE_NAME_MAX       11                  //定制内容名字的最大长度
#define BAR_BOTTOM			    16		            //场景低段条高
#define SPACE_BETWEEN_LINE      5                   //显示文字的行间距
#define	MY_COMMAND			    EVT_USER+15			//菜单命令参数宏
#define	ACTION_TIME			    200 	            //连接动画时间间隔
#define BKLIGHT_SET_TIME        5000                //背景灯的刷新时间
#define LABELNAME_CNT           10                  //记录的中文名称
#define MAINMENU_TXT_FRAMECNT   10                  //主菜单文字帧数
#define FREESPACE_MINISIZE      3072                //数据库添加记录时系统最小剩余空间

//自动阅读速度
#define AUTOREAD_SPEED_FAST     100                 //快速
#define AUTOREAD_SPEED_MIDDLE   400                 //中速
#define AUTOREAD_SPEED_SLOW     900                 //非常慢

//输入框相关
#define INPUTTEXT_MAXINPUT      10                  //输入框能输入的最大字数

//////////////////////////////////////////////////////////////////////////
//坐标相关
#define TEXTBOX_X               0                  //输入框位置
#define TEXTBOX_Y               2*BAR_BOTTOM+3
#define TEXTBOX_DX              128
#define TEXTBOX_DY              BAR_BOTTOM+4
#define MAINMENU_TEXT_X         43                  //主菜单
#define MAINMENU_TEXT_Y         94

//文件名和数据库名
#define	INFOFILE			    "inf.ini"           //配置文件
#define	MYFAVFILE			    "fav.ini"           //保存收藏夹内容信息
#define	TEMPSAVEF			    "temp.tx"	        //保存临时文件信息的文件
#define MYFAV_DBNAME            "myfav"             //我的收藏
#define CUSTMISE_DBNAME         "customise"         //用户定制

//资源释放宏,可以释放除了铃声意外的资源,C的多太性
#define		BREW_FREE(p) 		HP_FreeIF((IBase **)&(p))

/*===============================================================================
结构体定义
=============================================================================== */
//程序状态信息
typedef enum{
    APP_STATE_MainMenu,         //主菜单
    APP_STATE_BigNews,          //热点头条
    APP_STATE_Customise,        //用户定制
    APP_STATE_NewsCenter,       //新闻中心
    APP_STATE_SearchNews,       //新闻搜索
    APP_STATE_HotSearch,        //热点搜索
    APP_STATE_MyFav,            //我的收藏
    APP_STATE_Setting,          //功能设置
    APP_STATE_Recomand,         //精彩推荐
    APP_STATE_HelpAbout,        //帮助关于
    APP_STATE_ExitApp,          //退出应用
}EAppState;

//主菜单
typedef enum
{
    MAINMENU_BIGNEWS = 0        //热点头条
    ,MAINMENU_CUSTOMISE         //用户定制
    ,MAINMENU_NEWSCENTER        //新闻中心
    ,MAINMENU_SEARCHNEWS        //新闻搜索
    ,MAINMENU_HOTSEARCH         //热点搜索
    ,MAINMENU_MYFAV             //我的收藏
    ,MAINMENU_SETTING           //功能设置
    ,MAINMENU_RECOMAND          //精彩推荐
    ,MAINMENU_HELPABOUT         //帮助关于
    ,MAINMENU_EXITAPP           //退出应用
    ,MAINMENU_MAX
}enMainMenuItem;

//接收数据的类型
/////////////////////////////////////////////////////////////////////////////////
//可能会接收到一个特殊的HeadType"@35",表示接收新闻内容,在高端版本的《新闻点点通》
//中是由图文混排模块处理的,这里只能通过判断来做特殊处理
/////////////////////////////////////////////////////////////////////////////////
typedef enum{
    SERVERNOTIFY_Err                     = -1   //发生错误
    ,SERVERNOTIFY_PublicOK               = -2   //评论发表成功
    ,SERVERNOTIFY_ListItem               = 0    //取系统列表(列表可包含目录、消息、文件)
    ,SERVERNOTIFY_File                   = 1    //取系统文件
    ,SERVERNOTIFY_ListCate               = 2    //取系统列表分类
    ,SERVERNOTIFY_Chat                   = 3    //新闻评论
    ,SERVERNOTIFY_ChatList               = 4    //新闻评论列表
    ,SERVERNOTIFY_HotSearch              = 6    //热点搜索
    ,SERVERNOTIFY_VaneSearch             = 7    //风向标搜索
    ,SERVERNOTIFY_KeySearch              = 8    //关键字搜索
    ,SERVERNOTIFY_RecomandList           = 10   //精彩推荐列表
    ,SERVERNOTIFY_CustomList             = 11   //栏目定制
    ,SERVERNOTIFY_Help                   = 50   //帮助
}WEB_SERVERNOTIFY;

//文件操作返回值信息
typedef enum{
    FI_SUCCESS                  //成功
    ,FI_FAILED                  //失败
    ,FI_NOSPACE                 //空间不足
    ,FI_NOCREATE                //创建失败
    ,FI_EXIST                   //文件已经存在
}FileError;

//数据库添加记录返回值信息
typedef enum{
    ADDDBRD_Success = 0          //成功
    ,ADDDBRD_Failed              //失败
    ,ADDDBRD_Exist               //已经存在
    ,ADDDBRD_NoSpace             //已经存在
}enAddDBrdErr;

//自动阅读种别
typedef enum{
    AUTOREAD_NULL               //未设定
    ,AUTOREAD_PIXEL             //像素级滚动
    ,AUTOREAD_LINE              //滚行
    ,AUTOREAD_PAGE              //翻页滚动
}enAutoRead;

//用户设置种别
typedef enum{
    SETTING_NULL
    ,SETTING_AUTOREAD_SWITCH    //自动阅读设定开关
    ,SETTING_AUTOREAD_SPEED     //自动阅读速度设定
    ,SETTING_BACKLIGHT_SWITCH   //背景光设定开关
}enSettingType;

//菜单种别
typedef enum{
    MENU_Null                   //没有菜单
    ,MENU_Read                  //阅读菜单
    ,MENU_List                  //网络列表菜单
    ,MENU_MyFav                 //我的收藏菜单
    ,MENU_Cust                  //定制新闻菜单
}enMenuType;

//输入框种别
typedef enum{
    INPUTTEXT_NULL
    ,INPUTTEXT_JUMPLINE         //新闻跳行
    ,INPUTTEXT_JUMPPAGE         //网络列表跳转
    ,INPUTTEXT_CUSTOMISE        //定制新闻
    ,INPUTTEXT_SEARCHNEWS       //搜索新闻
    ,INPUTTEXT_COMMENT          //发表评论
    ,INPUTTEXT_COMMENT_NAME     //输入昵称
}enInpType;

//阅读种别
typedef enum{
    READ_NULL                   //没有在阅读状态
    ,READ_NET                   //在线阅读
    ,READ_MYFAV                 //我的收藏阅读
}enReadType;

//新闻定制种别
typedef enum{
    CUSTOMISE_NULL = 0
    ,CUSTOMISE_NEWS             //定制新闻
    ,CUSTOMISE_CHANNEL          //定制栏目
}enCustomiseType;

//列表种别
typedef enum{
    LIST_Default = 0
    ,LIST_SearchRes             //搜索结果
    ,LIST_HotSearch             //热点搜索
}enListType;

//用户定制状态
typedef enum{
    CUST_STATE_Null = 0         //没有处于定制状态
    ,CUST_STATE_AddNewCust      //添加新的定制内容
    ,CUST_STATE_CustList        //已经定制的内容列表
    ,CUST_STATE_AddNews         //定制新闻
    ,CUST_STATE_AddChannel      //定制栏目
    ,CUST_STATE_ViewHelp        //查看帮助
    ,CUST_STATE_ViewCust        //查看已经定制内容
    ,CUST_STATE_CustMenu        //用户定制的菜单(包含查看,添加定制,删除定制,帮助等功能)
}enCustState;
//////////////////////////////////////////////////////////////////////////
//属性结构体
typedef struct _Info
{
    boolean			m_bBackLitTm;	//背景灯是否常明

    //主结构设置信息
    uint8			m_nLooktypeTm;	//自动浏览方式  0 未设 , 1 象素级滚动 , 2 滚行 ,3 翻页
    int32			m_nTimeTm[3];	//自动阅读的时间间隔
    uint16			m_nBeLineTm;	//行间距离
}Info;

//////////////////////////////////////////////////////////////////////////
//与列表项相关联的数据结构体
typedef struct _ListData
{
    uint32   nNewsID;
    char     szUrl[WEB_URL_MAXLENGTH];
    uint16   nPageCnt;
    uint16   nCurPage;
}ListData;
/*===============================================================================
应用主结构体
===============================================================================*/
typedef struct
{
	AEEApplet	        a;

	uint16		        m_nDevWidth;	                    //屏幕的宽度
	uint16		        m_nDevHeight;	                    //屏幕的高度
	char		        m_szMobileID[MOBILE_ID_LEN +1];
	uint32		        m_dwPlatformID;                     //手机平台号
//  AEELicenseType	    m_lt;
//  AEEPriceType	    m_pt;	                            //购买类型
//  uint32		        m_dwCredit;	                        //点数
	EAppState	        m_eAppState;	                    //程序当前状态级
    enSettingType       m_eSettingType;                     //当前设定种别
    enInpType           m_eInpType;                         //输入框的种别

    //////////////////////////////////////////////////////////////////////////
    //列表队列
    IMenuCtl *	        m_pList[MAX_LIST];
    uint8		        m_nIdx;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -