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

📄 kernel.h

📁 好记星的控件,包括button,list,对文件操作
💻 H
字号:
/****************************************************************************/
/*                                                                          */
/*              Copyright (C) 2005 SHENZHEN MEIJIN CO.LTD                   */
/*                                                                          */
/* FILE NAME:   Kernel.h                                                    */
/* MODULE NAME: 内核模块                                                    */
/* DESCRIPTION: 本文件综合包含所有内核模块的头文件                          */
/*                                                                          */
/****************************************************************************/
/*    NAME         DATE               REMARKS                               */
/* ==========  ============   ==============================================*/
/*   谢永良     2005-03-18          创建                                    */
/****************************************************************************/

#ifndef __KERNEL_H__
#define __KERNEL_H__

#include "plus\nucleus.h"
#include ".\Include\Base.h"
#include ".\Include\RegionInit.h"
#include ".\Include\Maskrom.h"
#include ".\Include\Res.h"
#include ".\Include\IoDriver.h"
#include ".\Include\MemMng.h"
#include ".\Include\FontMng.h"
#include ".\Include\ResMng.h"
#include ".\Include\Graphic.h"
#include ".\Include\Timer.h"
#include ".\Include\TimeMng.h"

#ifdef _WIN32
    //#include ".\Include\FlashMng.h"
    #define OS_DLL
    #include ".\Include\FlashManager.h"
#else
    #define OS_DLL
    #include ".\Include\FlashManager.h"
#endif

#include ".\Include\CardMng.h"
#include ".\Include\File.h"
#include ".\Include\Ime.h"
#include ".\Include\Button.h"
#include ".\Include\Edit.h"
#include ".\Include\List.h"
#include ".\Include\Msgbox.h"
#include ".\Include\Audio.h"
#include ".\Include\Voice.h"
#include ".\Include\Record.h"
#include ".\Include\Edit.h"
#include ".\Include\List.h"
#include ".\Include\Browser.h"
#include ".\Include\SmpBrowser.h"


// AP运行返回值定义
#define EXIT_CODE_FORCE_START   -100    // 强行退出代码之最小值
#define EXIT_CODE_HOME			-80     // 返回到主界面之退出
#define EXIT_CODE_OFF			-70     // 关机退出(手动或自动关机)
#define EXIT_CODE_LOWPOWER		-60     // 低电压退出
#define EXIT_CODE_UDISK			-50     // 进入U盘退出
#define EXIT_CODE_FORCE_END     -10     // 强行退出代码之最大值

#define EXIT_CODE_ERROR			-1		// 错误退出
#define EXIT_CODE_NORMAL		0		// 正常退出

// MSGBOX的返回通知
#define	MSGBOX_EXIT_BASE		0x1002
#define MSGBOX_EXIT_ESC         MSGBOX_EXIT_BASE		// 退出(自动消失类和确定类的退出值);
#define MSGBOX_EXIT_YES         (MSGBOX_EXIT_BASE+1)	// YES;
#define MSGBOX_EXIT_NO          (MSGBOX_EXIT_BASE+2)	// NO;

#define	CODE_EXIT_USER1			0x1100		// FILEMNG的返回通知
#define	CODE_EXIT_USER2			0x1200		// No used
#define	CODE_EXIT_USER3			0x1300		// No used
#define	CODE_EXIT_USER4			0x1400		// No used
#define	CODE_EXIT_USER5			0x1500		// No used


//#define MSGBOX_EXIT_ENTER       0x1001  // 确认;
//#define MSGBOX_EXIT_CANCEL      0x1005  // CANCEL;
//#define MSGBOX_EXIT_TIMEOUT     0x1006  // 超时关闭;
//#define MSGBOX_EXIT_ANYKEY      0x1007  // 任意键退出。

#define EVENT_SIZE          2   // 队列中每个事件的大小(2个DWORD)
extern NU_QUEUE				g_quEventQueue; // 事件队列

// 内核模块函数声明
BOOL  KernelInitialize(VOID);           // 内核模块初始化
INT   RunAp(APGUI_STRUCT *pApGui);      // 运行AP
VOID  ExitAp(INT nExitCode);            // 退出AP(真正退出)
INT   GetCurExitCode(VOID);             // Get Current Exit Code Data
VOID  RequestExitAp(INT nExitCode);     // 请求退出AP
VOID  DrawCurrentAp(VOID);              // 重新显示当前(顶层)AP
VOID  DrawFullScreenAp(VOID);           // 显示全屏AP
BOOL  MsgPost(APGUI_STRUCT_MODEL* pGui, UINT uEvent, UINT uParam); //往消息队列里发送一个消息
INT	  MsgSend2(APGUI_STRUCT_MODEL* pGui,UINT uEvent, UINT uParam); //往一个窗口处理函数发送一个消息
APGUI_STRUCT_MODEL* GetApHandle(VOID);	// 获取当前AP模板句柄
// AP事件处理表结构定义:
typedef struct tagAPEV_HANDLE_TABLE
{
    UINT	            uEvent;	        // AP要处理的事件类型
    FPGUIHANDLEEVENT    fpHandleFunc;   // AP对应事件的处理函数入口
} APEV_HANDLE_TABLE;
// AP事件处理表扩展结构定义:
typedef struct tagAPEV_HANDLE_TABLE_EX
{
    UINT	            uEvent;	        // AP要处理的事件类型
    UINT	            uParam;	        // AP要处理的事件参数
    FPGUIHANDLEEVENT    fpHandleFunc;   // AP对应事件的处理函数入口
} APEV_HANDLE_TABLE_EX;
INT  HanldeEventTable(  APGUI_STRUCT *pGui, UINT uEvent, UINT uParam,
                        APEV_HANDLE_TABLE *pTable );
                        // 根据事件类型寻找对应的事件处理函数
INT  HanldeEventTableEx(APGUI_STRUCT *pGui, UINT uEvent,
                        UINT uParam, APEV_HANDLE_TABLE_EX *pTable );
                        // 根据事件类型和事件参数寻找对应的事件处理函数

typedef INT   (*FPHANDLEEVENT)( UINT uEvent, UINT uParam );     // 事件处理函数
FPHANDLEEVENT   KnlSetEventPrevHandle( FPHANDLEEVENT fpProc);   // 设置优先事件处理函数
FPHANDLEEVENT   KnlSetEventBehindHandle( FPHANDLEEVENT fpProc); // 设置事后事件处理函数
APGUI_STRUCT  **KnlGetDesktopGui(VOID);

//======================================
// DennyHan Added this for USB, reserved
VOID GetOsKnlMsg(UINT *pEvent,UINT *pMsg);

//==============================================
// DennyHan Added for OS GUI Help
BOOL OsGuiHelpInitialize(VOID);
UINT OsGuiHelpSet(UINT uParam, INT nLevel);
UINT OsGuiHelpGet(INT nLevel);
UINT SetGuiHelp(UINT uParam);
UINT GetGuiHelp(VOID);
INT GetGuiHelpLevel(VOID);
INT IncGuiHelpLevel(VOID);
INT DecGuiHelpLevel(VOID);
//=============================================

// Dennyhan Added fir IME
int MyIsAlpha(int a);
#endif  /*__KERNEL_H__*/

⌨️ 快捷键说明

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