📄 mmidatatype.h
字号:
typedef unsigned short pBOOL;
typedef short S16;
typedef short *PS16;
typedef unsigned short U16;
typedef unsigned short *PU16;
typedef long S32;
typedef long *PS32;
typedef unsigned long U32;
typedef unsigned long *PU32;
typedef float float32;
typedef unsigned int UINT;
typedef unsigned long STRING_ID;
typedef unsigned long IMAGE_ID;
typedef unsigned long MENU_ID;
typedef unsigned long screen_ID;
typedef unsigned short MMI_ID_TYPE;
typedef unsigned char byte;
typedef unsigned short word;
typedef unsigned long dword;
typedef char sbyte;
typedef short sword;
typedef long sdword;
typedef void (*oslTimerFuncPtr)(void*);
typedef struct _win32_msgqid {
S8 q_name[20]; /* Queue name */
U32 q_queue_size; /* Total size of queue */
U32 q_max_messages; /* Messages in queue */
U32 q_max_message_size; /* Size of each message */
volatile U32 q_messages; /* Available words */
PU32 q_start; /* Start of queue area */
PU32 q_message_size; /* Start queue size area */
volatile U32 q_read; /* Read pointer */
volatile U32 q_write; /* Write pointer */
volatile U32 q_tasks_waiting_write; /* Number of waiting tasks */
volatile U32 q_tasks_waiting_read; /* Number of waiting tasks */
HANDLE q_semaphore_read;
HANDLE q_semaphore_write;
CRITICAL_SECTION q_cs;
} win32_msgqid;
typedef win32_msgqid *oslMsgqid;
typedef struct _win32_timerid {
S8 tmr_name[20];
U32 tmr_handler;
U32 tmr_timeout;
oslTimerFuncPtr tmr_callback;
void *tmr_callback_arg;
} win32_timerid;
typedef win32_timerid *oslTimerid;
typedef HANDLE oslTaskid;
typedef void (*oslTaskFuncPtr)(void*);
typedef enum {
OSL_NO_WAIT,
OSL_INFINITE_WAIT
} OSLWAITMODE;
typedef enum {
OSL_SUCCESS,
OSL_ERROR,
OSL_Q_FULL,
OSL_Q_EMPTY,
OSL_SEM_NOT_AVAILABLE,
OSL_WOULD_BLOCK,
OSL_MESSAGE_TOO_BIG,
OSL_INVALID_ID,
OSL_NOT_INITIALIZED,
OSL_INVALID_LENGHT,
OSL_NULL_ADDRESS,
OSL_NOT_RECEIVE,
OSL_NOT_SEND,
OSL_MEMORY_NOT_VALID
} OSLSTATUS;
typedef struct {
PS8 task_name;
PS8 task_qname;
U8 task_priority;
U32 task_stack_size;
oslTaskid task_id;
oslMsgqid task_ext_qid;
U32 task_ext_qsize;
oslTaskFuncPtr task_entry_func;
} win32_task_info;
typedef win32_task_info osl_task_info;
typedef struct {
PS8 task_name;
PS8 task_qname;
U8 task_priority;
U32 task_stack_size;
U32 task_ext_qsize;
oslTaskFuncPtr task_entry_func;
} win32_task_create_info;
typedef win32_task_create_info osl_task_create_info;
typedef void osl_entry_struct;
#endif /* CUSTOMIZE_TOOL */
/****************************************************************************
*
* Applcation Enum
*
*****************************************************************************/
/* Ranges of hash defines given to various Application */
#define APP_DEFAULT_BASE 101 /* UNDEPLOYABLE Application base id */
/* Application under APPLICATION_DEFAULT enum can not be undeployed. */
typedef enum {
APP_MAINMENU=APP_DEFAULT_BASE,
APP_IDLEAPP,
APP_BOOTUP,
APP_SIMTOOLKIT,
APP_EMAIL,
APP_GLOBALDEFS,
APP_CHARGER,
APP_UIFRAMEWORK,
APP_PHONEBOOK,
APP_MESSAGES,
APP_SETTINGS,
APP_CALLMANAGEMENT,
APP_CALLHISTORY,
APP_CALLSETUP,
APP_PROFILES,
APP_NETWORKSETUP,
APP_WORLDCLOCK,
APP_DEMOAPP,
APP_SECURITY_SETUP,
APP_IMPS,
APP_JATAAYU_MMS,
APP_JATAAYU_BROWSER,
APP_JATAAYU_PROVISIONING,
APP_JATAAYU_JDD
}APPLICATION_DEFAULT;
/* Application under APPLICATION_DEPLOY enum can be deployed or undeployed. */
typedef enum {
APP_SHORTCUTS=1,
APP_FUNANDGAMES,
APP_SERVICES,
APP_ORGANIZER,
APP_CALLBARRING,
APP_DATAACCOUNT,
APP_DOWNLOAD,
APP_TODOLIST,
APP_INPUTMETHOD,
APP_VOICEMEMO,
APP_ENGINEERMODE,
APP_CALENDAR,
APP_FACTORYMODE,
APP_RINGTONECOMPOSER,
APP_GAMES,
APP_WAP,
APP_ALARM,
APP_CALCULATOR,
APP_UNITCONVETER,
APP_CURRENCYCONVERTER,
APP_HEALTHBMI,
APP_HEALTHCALORIE,
APP_HEALTHMENSTRUAL,
APP_STOPWATCH,
APP_PHONESETUP,
APP_PICTURE_EDITOR,
APP_AUDIOPLAYER,
APP_FILEMANAGER,
APP_SOUNDRECORDER,
APP_CAMERA,
APP_IMAGEVIEWER,
APP_EXTDEVICE,
APP_JAVA,
APP_MULTIMEDIA,
APP_EXTRA,
APP_VDOPLY,
APP_VDOREC,
APP_CHAT,
APP_FMRDO,
APP_PHOEDT,
APP_MESSAGE_CLUB,
APP_ABREPEATER,
APP_FMSCHEDULEREC,
APP_BGSOUND,
APP_DICTIONARY,
APP_FTP,
APP_EBOOK,
APP_DOWNLOADAGENT,
APP_DEVAPP,
APP_UNIFIEDMESSAGE,
APP_BARCODEREADER,
APP_SWFLASH
} APPLICATION_DEPLOY;
/* 120304 Calvin added */
typedef enum {
RES_IMAGE,
RES_MEDIA,
RES_AUDIO,
RES_JAVA_GAME
} RESOURCE_TYPE_LIST;
/* Calvin end */
/* 101205 audio resource Calvin move here */
typedef enum _image_type_enum
{
SYSTEM_IMAGE,
EXT_IMAGE,
NFB_PROGRESS_IMAGE
}image_type_enum;
/* 101205 audio resource Calvin end */
/****************************************************************************
*
* Resource Base ID
*
* Note: We define the the starting value of resource enum ID
* for each application instead of using one big enum definition.
* As a result, we can avoid re-compile of the whole plutommi
* when add/remove string/image enum ID.
*
* Note: The maximum value of resource ID is 65535 due to U16 datatype.
*
*****************************************************************************/
#define RESOURCE_BASE_RANGE(name, count) \
RESOURCE_BASE_##name, \
RESOURCE_BASE_##name##_END = RESOURCE_BASE_##name + count - 1
/*
* Declare the range of resource ID of each application.
*
* For example:
* RESOURCE_BASE_MAIN_MENU = 14000,
* RESOURCE_BASE_MAIN_MENU_END = 14599,
* RESOURCE_BASE_PHONE_BOOK = 14600,
* RESOURCE_BASE_PHONE_BOOK_END = 15199,
*/
typedef enum
{
/* HACK. The value of PHONE_SETUP_BASE=13000 is fixed in NVRAM definition */
RESOURCE_BASE_FIRST_VALUE = 13999,
RESOURCE_BASE_RANGE(MAIN_MENU, 600),
RESOURCE_BASE_RANGE(PHONE_BOOK, 600),
RESOURCE_BASE_RANGE(SHORTCUTS, 50),
RESOURCE_BASE_RANGE(FUN_GAMES, 300),
/* Service */
RESOURCE_BASE_RANGE(SERVICES, 100),
RESOURCE_BASE_RANGE(INFO_NUM, 100),
RESOURCE_BASE_RANGE(DATA_ACCOUNT, 200),
/* Organizer */
RESOURCE_BASE_RANGE(ORGANIZER, 100),
RESOURCE_BASE_RANGE(TO_DO_LIST, 100),
RESOURCE_BASE_RANGE(ALARM, 50),
RESOURCE_BASE_RANGE(CALCULATOR, 50),
RESOURCE_BASE_RANGE(UNIT_CONVERTER, 100),
RESOURCE_BASE_RANGE(CURRENCY_CONVERTER, 50),
RESOURCE_BASE_RANGE(WORLD_CLOCK, 200),
RESOURCE_BASE_RANGE(HEALTH_CALORIE, 100),
RESOURCE_BASE_RANGE(HEALTH_MENSTRUAL, 50),
RESOURCE_BASE_RANGE(HEALTH_BMI, 50),
/* Message */
RESOURCE_BASE_RANGE(MESSAGES, 1500),
RESOURCE_BASE_RANGE(CHAT, 200),
/* Unified Message */
RESOURCE_BASE_RANGE(UNIFIED_MESSAGE, 300),
/* XXX unused */
RESOURCE_BASE_RANGE(CONNECTS, 100),
/* Setting */
RESOURCE_BASE_RANGE(SETTINGS, 300),
RESOURCE_BASE_RANGE(SECURITY_SETUP, 300),
/* Call Management */
RESOURCE_BASE_RANGE(CALL_MANAGEMENT, 700),
/* Idle App */
RESOURCE_BASE_RANGE(IDLE_APP, 500),
RESOURCE_BASE_RANGE(CATEGORY_SCREENS, 700),
/* Demo App */
RESOURCE_BASE_RANGE(DEMO_APP, 700),
#if 0 /* HACK. The value of PHONE_SETUP_BASE is fixed in NVRAM definition */
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
#endif
/* Misc */
RESOURCE_BASE_RANGE(SIM_DETECTION, 1000),
RESOURCE_BASE_RANGE(SAT, 500),
RESOURCE_BASE_RANGE(EMAIL, 300),
RESOURCE_BASE_RANGE(IMPS, 300),
/* Used for FDL/BDL/SDL/Call fwd/call waiting*/
RESOURCE_BASE_RANGE(CALL_NEW, 700),
RESOURCE_BASE_RANGE(CALL_HISTORY, 300),
RESOURCE_BASE_RANGE(PROFILES, 600),
RESOURCE_BASE_RANGE(CHARGER, 200),
/* XXX unused */
RESOURCE_BASE_RANGE(CALL_BARRING, 100),
RESOURCE_BASE_RANGE(GLOBAL, 300),
RESOURCE_BASE_RANGE(NETWORK_SETUP, 200),
RESOURCE_BASE_RANGE(DOWNLOAD, 100),
RESOURCE_BASE_RANGE(VOICE_MEMO, 200),
RESOURCE_BASE_RANGE(INPUT_METHOD, 200),
RESOURCE_BASE_RANGE(CTK, 200),
RESOURCE_BASE_RANGE(ENGINEER_MODE, 1000),
/* Calendar */
RESOURCE_BASE_RANGE(CAL, 300),
RESOURCE_BASE_RANGE(FACTORY_MODE, 300),
RESOURCE_BASE_RANGE(COMPOSE_RING_TONE_ENGINE, 200),
RESOURCE_BASE_RANGE(COMPOSE_RINGTONE, 100),
RESOURCE_BASE_RANGE(WAP, 1500),
RESOURCE_BASE_RANGE(AUDIO_PLAYER, 500),
RESOURCE_BASE_RANGE(SOUND_RECORDER, 300),
RESOURCE_BASE_RANGE(FILE_MANAGER, 600),
RESOURCE_BASE_RANGE(JAVA, 500),
/* Download application. XXX. To be removed */
RESOURCE_BASE_RANGE(NV_RAM_FILE_IMAGE, 2000),
RESOURCE_BASE_RANGE(EXT_DEVICE, 300),
RESOURCE_BASE_RANGE(MMEDIA, 100),
RESOURCE_BASE_RANGE(EXTRA_APP, 100),
RESOURCE_BASE_RANGE(EBOOK, 100),
/* Download application. XXX. To be removed */
RESOURCE_BASE_RANGE(NV_RAM_FILE_EXT_MELODY, 1000),
RESOURCE_BASE_RANGE(GAME, 3000),
RESOURCE_BASE_RANGE(MMIAPI, 100),
RESOURCE_BASE_RANGE(VOBJECT, 50),
RESOURCE_BASE_RANGE(VCARD, 50),
RESOURCE_BASE_RANGE(VCALENDAR, 50),
RESOURCE_BASE_RANGE(STOPWATCH, 100),
RESOURCE_BASE_RANGE(DICTIONARY, 150),
RESOURCE_BASE_RANGE(PICTURE_EDITOR, 200),
RESOURCE_BASE_RANGE(CAMERA, 600),
RESOURCE_BASE_RANGE(IMAGE_VIEWER, 100),
RESOURCE_BASE_RANGE(VDOPLY, 500),
RESOURCE_BASE_RANGE(VDOREC, 500),
RESOURCE_BASE_RANGE(FM_RADIO, 300),
/* Voice Command - SD */
RESOURCE_BASE_RANGE(VRSD, 100),
/* Voice Command - SI */
RESOURCE_BASE_RANGE(VRSI, 200),
RESOURCE_BASE_RANGE(PHOEDT, 300),
RESOURCE_BASE_RANGE(MESSAGE_CLUB, 1000),
RESOURCE_BASE_RANGE(POC, 200),
RESOURCE_BASE_RANGE(AB_REPEATER, 200),
/*Schedule FM Radio Record*/
RESOURCE_BASE_RANGE(FM_SCHEDULE_REC, 200),
/*Background Sound Effect*/
RESOURCE_BASE_RANGE(BG_SOUND, 200),
RESOURCE_BASE_RANGE(DEVAPP, 300),
RESOURCE_BASE_RANGE(DL_AGENT, 100),
#ifdef PLX_APP_SUPPORT
#ifdef __MMI_PLX_BROWSER__
RESOURCE_BASE_RANGE(PLX_BROW_RES, 500),
#endif
#ifdef __MMI_PLX_MMS__
RESOURCE_BASE_RANGE(PLX_MMS_RES, 500),
#endif
RESOURCE_BASE_RANGE(PLX_RES, 100),
RESOURCE_BASE_RANGE(PLX_UIL_RES, 100),
#endif //PLX_APP_SUPPORT
RESOURCE_BASE_RANGE(JATAAYU_MMS, 1000),
RESOURCE_BASE_RANGE(JATAAYU_BROWSER, 1000),
RESOURCE_BASE_RANGE(JATAAYU_PROVISIONING, 200),
RESOURCE_BASE_RANGE(JATAAYU_JDD, 200),
RESOURCE_BASE_RANGE(BARCODEREADER, 600),
RESOURCE_BASE_RANGE(SWFLASH, 600)
} RESOURCE_BASE_ENUM;
/*
* Declare MACRO to cast enum names (such as RESOURCE_BASE_MAIN_MENU)
* into U16 datatype to be compatible with RVCT.
*
* For example:
* #define MAIN_MENU_BASE ((U16) RESOURCE_BASE_MAIN_MENU)
* #define MAIN_MENU_BASE_MAX ((U16) RESOURCE_BASE_MAIN_MENU_END)
*/
#if defined(_POPULATE_RES_C) && !defined(PRODUCTION_RELEASE)
typedef struct
{
char *appname;
U16 value;
} mmi_resource_base_struct;
/* Table of resource base ID used for reference in debugging */
#define RESOURCE_BASE_TABLE_BEGIN() \
const mmi_resource_base_struct g_mmi_resource_base_table[] = {
#define RESOURCE_BASE_TABLE_ITEM(ENUM_NAME) \
{#ENUM_NAME, (U16) RESOURCE_BASE_##ENUM_NAME},
#define RESOURCE_BASE_TABLE_END() \
};
#else /* _POPULATE_RES_C */
#define RESOURCE_BASE_TABLE_BEGIN()
#define RESOURCE_BASE_TABLE_ITEM(ENUM_NAME)
#define RESOURCE_BASE_TABLE_END()
#endif /* _POPULATE_RES_C */
/****************************************************************************
* Definition of applications
*****************************************************************************/
/* Beginning of resource table */
RESOURCE_BASE_TABLE_BEGIN()
/****************************************************************************
* Main Menu
*****************************************************************************/
#define MAIN_MENU_BASE ((U16) RESOURCE_BASE_MAIN_MENU)
#define MAIN_MENU_BASE_MAX ((U16) RESOURCE_BASE_MAIN_MENU_END)
RESOURCE_BASE_TABLE_ITEM(MAIN_MENU)
/****************************************************************************
* PhoneBook
*****************************************************************************/
#define PHONE_BOOK_BASE ((U16) RESOURCE_BASE_PHONE_BOOK)
#define PHONE_BOOK_BASE_MAX ((U16) RESOURCE_BASE_PHONE_BOOK_END)
RESOURCE_BASE_TABLE_ITEM(PHONE_BOOK)
/****************************************************************************
* Shortcut
*****************************************************************************/
#define SHORTCUTS_BASE ((U16) RESOURCE_BASE_SHORTCUTS)
#define SHORTCUTS_BASE_MAX ((U16) RESOURCE_BASE_SHORTCUTS_END)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -