1、ICE 模块代码#ifdef _MMI_PHB_ORANGE_ICE_/*step4-ICE*/#define NVRAM_EF_PHB_ICE_NUM_LID_VERNO 000#endif#ifdef _MMI_PHB_ORANGE_ICE_ /*step8-ICE*/ LID_BIT VER_LID(NVRAM_EF_PHB_ICE_NUM_LID) NVRAM_PHB_ICE_NUM_INFO_STRUCT* NVRAM_PHB_ICE_NUM_LID_TOTAL ;#endif /_MMI_PHB_ORANGE_ICE_#ifdef _MMI_PHB_ORANGE_ICE_ BYTE
2、_ENTRY( I_SDMID_JRD_PHB_ICE_FEATURE_SUPPORT, NVRAM_APP_PHNSET, NVRAM_CACHE_ID_RESERVED, KAL_FALSE, ,I_SDMID_JRD_PHB_ICE_FEATURE_SUPPORT_VALUE),#endif#ifdef _MMI_PHB_ORANGE_ICE_ I_SDMID_JRD_PHB_ICE_FEATURE_SUPPORT,#endif /_MMI_PHB_ORANGE_ICE_#ifdef _MMI_PHB_ORANGE_ICE_#define NVRAM_PHB_ICE_NUMBER_LGT
3、H (51+1)/*step6-ICE*/typedef struct kal_uint8 numberNVRAM_PHB_ICE_NUMBER_LGTH; NVRAM_PHB_ICE_NUM_INFO_STRUCT;#endif#ifdef _MMI_PHB_ORANGE_ICE_ MENU_ID_ICE_NUMBERS, MENU_ID_PHB_ICE_LIST_OPTION, MENU_ID_PHB_ICE_OPTION_VIEW, MENU_ID_PHB_ICE_OPTION_ADD, MENU_ID_PHB_ICE_OPTION_EDIT, MENU_ID_PHB_ICE_OPTIO
4、N_DELETE,#endif#ifdef _MMI_PHB_ORANGE_ICE_/*step3-ICE*/#define NVRAM_PHB_ICE_NUM_LID_TOTAL 3 /*3 ICE NUMBER support*/#define NVRAM_PHB_ICE_NUM_LID_SIZE sizeof(NVRAM_PHB_ICE_NUM_INFO_STRUCT) /*the max length of number*/ #endif#ifdef _MMI_PHB_ORANGE_ICE_ /*step1-ICE*/ , NVRAM_EF_PHB_ICE_NUM_LID, /* LI
5、D */ NVRAM_PHB_ICE_NUM_LID_SIZE, /* Size */ NVRAM_PHB_ICE_NUM_LID_TOTAL, /* Total */ NVRAM_NORMAL(const kal_uint8 *)NVRAM_EF_ZERO_DEFAULT), NVRAM_ATTR_AVERAGE | NVRAM_ATTR_FACTORY_RESET, /* Attributes */ NVRAM_CATEGORY_USER , /* Category */ CT62, VER(NVRAM_EF_PHB_ICE_NUM_LID), Phonebook ICE number0,
6、 NVRAM_RESERVED_VALUE #endif /_MMI_PHB_ORANGE_ICE_#ifdef _MMI_PHB_ORANGE_ICE_#define MAX_ICE_NUMBER_COUNT 3S8 m_current_ice_number_index;S8 m_phb_ice_edit_input_buff(MAX_PB_NUMBER_LENGTH + 1) * ENCODING_LENGTH;MMI_BOOL g_phb_is_ice_support = 0x00;static BOOL g_ice_should_add = MMI_TRUE;typedef struc
7、t BOOL m_ice_be_edit_number; U8 m_ice_count; S8 numberMAX_ICE_NUMBER_COUNTMAX_PB_NUMBER_LENGTH + 1;mmiPHB_ICE_info_struct;mmiPHB_ICE_info_struct g_phb_ice_info;void mmi_sms_send_from_ICE(void);void mmi_mms_send_from_ICE(void);void mmi_phb_entry_edit_ICE_number_screen(void);void mmi_phb_entry_edit_ic
8、e_number(void);void mmi_phb_ice_delete_number_confirm(void);void mmi_phb_op_delete_ice_number(void);void mmi_phb_entry_ice_number_list(void);void mmi_phb_entry_ice_option(void);extern void mmi_phb_choose_number_ice(void);extern void DisplayIdleScreen(void);#endif#ifdef _MMI_PHB_ORANGE_ICE_#define MA
9、X_PB_OWNER_NUMBERS 4 /*For Compile OK*/#define MAX_PB_SIM_ENTRIES MAX_PHB_SIM_ENTRY /* value defined in option.mak */#define MAX_PB_PHONE_ENTRIES MAX_PHB_PHONE_ENTRY /* value defined in option.mak */void mmiPHB_init_ICE_number(void) U16 index = 0; S16 err = 0; NVRAM_PHB_ICE_NUM_INFO_STRUCT ice_info
10、= 0; for (index = 0; index MAX_ICE_NUMBER_COUNT ; index+) memset(g_phb_ice_info.numberindex, 0 ,MAX_PB_NUMBER_LENGTH + 1); /*For Compile OK*/ ReadRecord(NVRAM_EF_PHB_ICE_NUM_LID, index+1, (void*)&ice_info, sizeof(ice_info), &err); strncpy(char*)g_phb_ice_info.numberindex,(char*)ice_info.number, NVRA
11、M_PHB_ICE_NUMBER_LGTH); m_current_ice_number_index = 0;#include CallsResDef.h#include MainMenuDef.h#include MessagesResourceData.h/* Function name : mmi_phb_entry_op_view_ICE* Description : View most calls detail* Input/Output : None*/void mmi_phb_entry_op_view_ICE(void) /*-*/ /* Local Variables */
12、/*-*/ U16 DetailPbNameImageListMAX_PB_FIELDS; U8 item_index = 2; U8 *guiBuffer = NULL; U8 highlight = 0, start = 0; EntryNewScreen(SCR_ID_VIEW_ICE, NULL, mmi_phb_entry_op_view_ICE, NULL); guiBuffer = GetCurrGuiBuffer(SCR_ID_VIEW_ICE); highlight = m_current_ice_number_index; subMenuDataPtrs0= subMenu
13、Data0; subMenuDataPtrs1= subMenuData1; mmi_ucs2ncpy(S8*)subMenuDataPtrs0, (S8*)GetString(STR_ID_PHB_ICE_ONE+highlight) ,MAX_SUB_MENUS); AnsiiToUnicodeString(S8*) subMenuDataPtrs1, (S8*) g_phb_ice_info.numberhighlight); DetailPbNameImageList0 = IMG_ID_CHIST_DURATION; DetailPbNameImageList1 = IMG_ID_C
14、HIST_DURATION; ShowCategory84Screen( STR_SCR_ENTRY_VIEW_CAPTION, MAIN_MENU_TITLE_PHONEBOOK_ICON, 0, 0, STR_GLOBAL_BACK, IMG_GLOBAL_BACK, item_index, subMenuDataPtrs, DetailPbNameImageList, LIST_MENU, 0, guiBuffer); SetRightSoftkeyFunction(GoBackHistory, KEY_EVENT_UP);/*Function name : mmi_phb_choose
15、_number_ice* Description : make call from ice list* Input : None* Output : None*/void mmi_phb_choose_number_ice(void) S8 temp_number(MAX_PB_NUMBER_LENGTH + 1) * ENCODING_LENGTH = 0; U8 highlight = m_current_ice_number_index; ascii_to_ucs2(U8*) g_phb_ice_info.numberhighlight, (S8*) temp_number); Make
16、Call(temp_number);/*Function name : mmi_phb_ice_check_add* Description : check whether need add the ice number after setup* *Input : none *Output : none*/BOOL mmi_phb_ice_check_add(void) U16 index = 0; if (MMI_TRUE = g_phb_is_ice_support) & hssa_is_orange_sim() & g_ice_should_add = MMI_TRUE) for (in
17、dex = 0; index MAX_ICE_NUMBER_COUNT ; index+) if (strlen(char*)g_phb_ice_info.numberindex) return MMI_FALSE; return MMI_TRUE; return MMI_FALSE;/* * FUNCTION * mmi_phb_entry_ice_number_list * DESCRIPTION * entry ice number list * PARAMETERS * void * RETURNS * the description of return value, if any.(
18、?) */void mmi_phb_entry_set_ice_in_idle(void) /g_ice_should_add = MMI_FALSE; mmi_phb_entry_ice_number_list(); DeleteScreenIfPresent(SCR_ID_PHB_ICE_ADD_QUERY);/* * FUNCTION * mmi_phb_ice_exit_query * DESCRIPTION * exit ice query screen. * PARAMETERS * void * RETURNS * the description of return value,
19、 if any.(?) */void mmi_phb_ice_exit_query(void) g_ice_should_add = MMI_FALSE; GoBackHistory();/* * FUNCTION * mmi_phb_ice_query_goback_to_idle * DESCRIPTION * go to idle form ice * PARAMETERS * void * RETURNS * the description of return value, if any.(?) */void mmi_phb_ice_query_goback_to_idle(void)
20、 g_ice_should_add = MMI_FALSE; DisplayIdleScreen();/*Function name : mmi_phb_ice_add_qurey* Description : check whether need add the ice number after setup* *Input : none *Output : none*/void mmi_phb_ice_add_qurey(void) EntryNewScreen(SCR_ID_PHB_ICE_ADD_QUERY, NULL, mmi_phb_ice_add_qurey, NULL); Sho
21、wCategory141Screen( STR_ID_PHB_ICE_NUMBER, IMG_SCR_PBOOK_CAPTION, STR_GLOBAL_OK, IMG_GLOBAL_OK, STR_GLOBAL_CANCEL, IMG_GLOBAL_NO, (U8*) GetString(STR_ID_PHB_ICE_ADD_QUERY), IMG_GLOBAL_INFO, NULL); SetLeftSoftkeyFunction(mmi_phb_entry_set_ice_in_idle, KEY_EVENT_UP); SetRightSoftkeyFunction(mmi_phb_ic
22、e_exit_query, KEY_EVENT_UP); SetKeyHandler(mmi_phb_ice_query_goback_to_idle, KEY_END, KEY_EVENT_DOWN);/*Function name : mmiPHB_my_favourite_add_process* Description : add my favourite number* *Input : none *Output : none*/static void mmi_phb_ice_edit_process(void) S16 err = 0; NVRAM_PHB_ICE_NUM_INFO
23、_STRUCT ice_info = 0; if (!mmi_ucs2strlen(S8*)m_phb_ice_edit_input_buff) DisplayPopup(PU8)GetString(STR_ID_PHB_NUM_REQUIRE), IMG_GLOBAL_ACTIVATED, TRUE, PHB_NOTIFY_TIMEOUT, SUCCESS_TONE); else mmi_ucs2_to_asc(S8 *) ice_info.number, (S8*)m_phb_ice_edit_input_buff); /UnicodeToAnsii(S8 *) ice_info.numb
24、er, (S8*)m_phb_ice_edit_input_buff); strncpy(S8*)g_phb_ice_info.numberm_current_ice_number_index, (S8*) ice_info.number, MAX_PB_NUMBER_LENGTH); WriteRecord( NVRAM_EF_PHB_ICE_NUM_LID, m_current_ice_number_index+1, (void*)&ice_info, NVRAM_PHB_ICE_NUM_LID_SIZE, &err); DisplayPopup(PU8)GetString(STR_ID_
25、PHB_ICE_NUMBER_CREATED), IMG_GLOBAL_ACTIVATED, TRUE, PHB_NOTIFY_TIMEOUT, SUCCESS_TONE); DeleteNHistory(1);#if 0/*Function name : mmiPHB_ice_edit_entry_general* Description : entry phonebook to chose my favourite number* *Input : none *Output : none*/void mmiPHB_ice_edit_entry_general(void) phbListView = MMI_PHB_LIST_FOR_EDIT_ICE; vmmiPHB_tab_info.cur_tab = TAB_PHB_GE
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1