/***************************************************************************** * FUNCTION * ExitSpofEdit * DESCRIPTION * Exit Handler For SPOF Edit Screen * PARAMETERS * None. * RETURNS * None. * GLOBALS AFFECTED * None *****************************************************************************/ void ExitSpofEdit(void) { history_t Scr; U16 inputBufferSize; //added for inline edit history S16 nHistory =0; Scr.scrnID = SCR_ID_SPOF_EDITOR; CloseCategory57Screen(); Scr.entryFuncPtr = EntrySpofEdit; pfnUnicodeStrcpy((S8*)Scr.inputBuffer,(S8*)&nHistory); GetCategoryHistory(Scr.guiBuffer); inputBufferSize = (U16)GetCategory57DataSize(); //added for inline edit history GetCategory57Data ((U8*) Scr.inputBuffer ); //added for inline edit history AddNHistory(Scr, inputBufferSize); //added for inline edit history }
/************************************************************** FUNCTION NAME : ExitSECSETFDNDetails(void) PURPOSE : Exit fn for FDL add screen INPUT PARAMETERS : nil OUTPUT PARAMETERS : nil RETURNS : void Author : Vanita Jain **************************************************************/ void ExitSECSETFDNDetails(void) { history_t Scr; /* Variable to hold the history data*/ S16 nHistory = 0; U16 size; CloseCategory57Screen(); Scr.scrnID = SCR_ID_SECSET_FDN_DETAILS; Scr.entryFuncPtr = EntrySECSETFDNDetails; pfnUnicodeStrcpy((S8*)Scr.inputBuffer, ( S8*)&nHistory); GetCategory57History(Scr.guiBuffer); size = (U16)GetCategory57DataSize( ); //added for inline edit history GetCategory57Data ((U8*) Scr.inputBuffer ); //added for inline edit history AddNHistory(Scr, size); }
/************************************************************** FUNCTION NAME : SelectInputMethodHandler PURPOSE : Exit function for input method screen INPUT PARAMETERS : nil OUTPUT PARAMETERS : nil RETURNS : void **************************************************************/ void SelectInputMethodHandler(void) { U16 data; S16 error; U16 index; index = GetCurrHiliteID(); SetInputMethod(currInputMethodIndex); data = MMI_prefered_input_type; WriteValue( NVRAM_SETTING_PREFER_INPUT_METHOD, &data, DS_SHORT , &error); pfnUnicodeStrcpy((PS8)hintData[index],(PS8)inputMethodList[currInputMethodIndex]); Category52ChangeItemDescription(index,hintData[index]); RedrawCategoryFunction(); DisplayPopup((PU8)GetString(STR_GLOBAL_DONE) ,IMG_GLOBAL_ACTIVATED, 1,ST_NOTIFYDURATION,SUCCESS_TONE); DeleteNHistory(1); return; }
/***************************************************************************** * FUNCTION * ExitBMIInputScreen * DESCRIPTION * Exit handler of EntryBMIInputScreen * PARAMETERS * None * RETURNS * None * GLOBALS AFFECTED * None *****************************************************************************/ void ExitBMIInputScreen(void) { history_t h; U16 inputBufferSize; //added for inline edit history U16 nHistory = 0; set_leading_zero(TRUE); CloseCategory57Screen(); h.scrnID = SCR_BMI_INPUT; h.entryFuncPtr = EntryBMIInputScreen; pfnUnicodeStrcpy((S8*)h.inputBuffer, (S8*)&nHistory); GetCategoryHistory(h.guiBuffer); inputBufferSize = (U16)GetCategory57DataSize(); //added for inline edit history GetCategory57Data ((U8*)h.inputBuffer); //added for inline edit history AddNHistory(h, inputBufferSize); //added for inline edit history #ifdef __MMI_SLIM_LISTMENU_NUMBER__ wgui_restore_list_menu_slim_style(); #endif }
void AudioPlayIMelodyFileWithId(U8 *file, U8 style, U16 nId) { if(file)//!=NULL { MYQUEUE Message; mmi_eq_play_audio_by_name_req_struct *audioByNamePlayReq; if(pfnUnicodeStrlen((PS8)file)>MAX_MELODY_FILE_NAME) return; audioByNamePlayReq = OslConstructDataPtr(sizeof (mmi_eq_play_audio_by_name_req_struct)); audioByNamePlayReq->style=style, audioByNamePlayReq->identifier=nId, pfnUnicodeStrcpy((PS8)audioByNamePlayReq->file_name,(PS8)file), Message.oslMsgId = PRT_EQ_PLAY_AUDIO_BY_NAME_REQ; Message.oslDataPtr = (oslParaType *)audioByNamePlayReq; Message.oslPeerBuffPtr= NULL; Message.oslSrcId=MOD_MMI; Message.oslDestId=MOD_L4C; OslMsgSendExtQueue(&Message); } }
/************************************************************** FUNCTION NAME : CALLSETBarringPassRsp(void ) PURPOSE : function for handling response for call barring change passwd req. INPUT PARAMETERS : nil OUTPUT PARAMETERS : nil RETURNS : void **************************************************************/ void CALLSETBarringPassRsp(void *info) { mmi_ss_call_barring_rsp_struct *pMsgBarringRsp = (mmi_ss_call_barring_rsp_struct *) info ; /* change passwd response handling */ DeleteScreenIfPresent(SCR_ID_CALLSET_BARRING_OUT); DeleteScreenIfPresent(SCR_ID_CALLSET_BARRING_IN); DeleteScreenIfPresent(SCR_ID_CALLSET_BARRING_PASS); DeleteScreenIfPresent(SCR_ID_CALLSET_BARRING_OLD_PASS); DeleteScreenIfPresent(SCR_ID_CALLSET_BARRING_OPTION); DeleteScreenIfPresent(SCR_ID_CALLSET_BARRING_NEW_PASS); DeleteScreenIfPresent(SCR_ID_CALLSET_BARRING_CFRM_PASS); if(pMsgBarringRsp->result.flag == 0) { pfnUnicodeStrcpy((PS8)g_callset_cntx_p->SSDisplayBuffer,(PS8)GetString(STR_CHANGE_PSW_SUCCESS_TEXT)); //micha0322 DeleteScreenIfPresent(SCR_ID_CALLSET_GENERAL_SS_RESULT); EntryCALLSETGeneralSSResut(); }else { //micha0616 if ( pMsgBarringRsp->result.cause == CM_SS_ERR_NEGATIVEPW_CHECK ) { DisplayPopup( (PU8) GetString( STR_SETTING_WRONG), IMG_GLOBAL_UNFINISHED, 0, CS_NOTIFYDURATION, ERROR_TONE); } else if (pMsgBarringRsp->result.cause == CM_SS_ERR_NUMBEROFPW_ATTEMPTSVIOLATION) { DisplayPopup( (PU8) GetString( STR_SETTING_BLOCK), IMG_GLOBAL_UNFINISHED, 0, CS_NOTIFYDURATION, ERROR_TONE); } else { DisplayPopup( (PU8) GetString( STR_GLOBAL_NOT_DONE), IMG_GLOBAL_UNFINISHED, 0, CS_NOTIFYDURATION, ERROR_TONE); } //micha0915 RemoveSSReqScr(); } aud_speech_set_mode(KAL_FALSE); //chenhe,070808. for callforward,CM_KB_OUTGOINGCALL is been sent,so have to do so here return; }
//added by guojian :get the fdn list to gFDLBDLContext, not PhoneBook[]. for our fdn process, not the same with previous one void GetFDLToContext(void *info) { MSG_PHB_GET_ENTRY_BY_INDEX_RSP_STRUCT* localPtr; U8 i= 0,j=0; //micha0317 U8 TempBuff[(MAX_PB_NUMBER_LENGTH+2)*ENCODING_LENGTH]; U8 *tmpConvertBuf = NULL; U16 convertOutLen = 0; U8 name_dcs;//Renwy add 2008/06/25 for '$' error U8 nSimId = 0; #ifdef __MMI_MULTI_SIM__ nSimId = gSecSetupMenuSimID; #endif mmi_trace(1, TSTXT("GetFDLToContext")); localPtr = (MSG_PHB_GET_ENTRY_BY_INDEX_RSP_STRUCT *)info; if (localPtr->result.flag == 0 /*OK*/) { mmi_trace(1, TSTXT("if GetFDLToContext (localPtr->result.flag == 0 /*OK*/) ")); i = gFDLBDLContext[nSimId].FDNBDNCount; gFDLBDLContext[nSimId].FDNBDNCount = localPtr->no_list; //Add number of new entries in current list length. mmi_trace(TRUE," Func: %s gpFDLBDLContext->FDNBDNCount=%d", __FUNCTION__,gFDLBDLContext[nSimId].FDNBDNCount); if (gFDLBDLContext[nSimId].FDNBDNCount > MAX_SIM_ENTRIES) gFDLBDLContext[nSimId].FDNBDNCount = MAX_SIM_ENTRIES; for (; i < gFDLBDLContext[nSimId].FDNBDNCount; i++, j++) { gFDLBDLContext[nSimId].FDLBDLEntries[i].storage = localPtr->list[j].storage; gFDLBDLContext[nSimId].FDLBDLEntries[i].index = localPtr->list[j].index; gFDLBDLContext[nSimId].FDLBDLEntries[i].record_index = localPtr->list[j].record_index; memset(gFDLBDLContext[nSimId].FDLBDLEntries[i].alpha_id.name, 0, MAX_NAME_LEN_FSB_LIST*ENCODING_LENGTH); memset(gFDLBDLContext[nSimId].FDLBDLEntries[i].tel.number, 0, MAX_NUMBER_LEN_FSB_LIST*ENCODING_LENGTH); gFDLBDLContext[nSimId].FDLBDLEntries[i].alpha_id.name_length = localPtr->list[j].alpha_id.name_length; gFDLBDLContext[nSimId].FDLBDLEntries[i].alpha_id.name_dcs = localPtr->list[j].alpha_id.name_dcs; {//Renwy add begine 2008/06/25 for '$' error name_dcs = gFDLBDLContext[0].FDLBDLEntries[i].alpha_id.name_dcs; if (MMI_PHB_ASCII == gFDLBDLContext[0].FDLBDLEntries[i].alpha_id.name_dcs) { name_dcs = MMI_8BIT_DCS; } }//Renwy add end 2008/06/25 for '$' error tmpConvertBuf = CovertStringForPlatform(localPtr->list[j].alpha_id.name, gFDLBDLContext[nSimId].FDLBDLEntries[i].alpha_id.name_length,name_dcs,&convertOutLen);//Renwy modify 2008/06/25 //tmpConvertBuf = CovertStringForPlatform(localPtr->list[j].alpha_id.name, gFDLBDLContext.FDLBDLEntries[i].alpha_id.name_length,gFDLBDLContext.FDLBDLEntries[i].alpha_id.name_dcs,&convertOutLen); gFDLBDLContext[nSimId].FDLBDLEntries[i].alpha_id.name_length = (U8) convertOutLen; if (pfnUnicodeStrlen((PS8) tmpConvertBuf) <= MAX_PB_NAME_LENGTH) { pfnUnicodeStrcpy((PS8) gFDLBDLContext[nSimId].FDLBDLEntries[i].alpha_id.name, (PS8) tmpConvertBuf); } else { pfnUnicodeStrncpy((PS8) gFDLBDLContext[nSimId].FDLBDLEntries[i].alpha_id.name, (PS8) tmpConvertBuf, MAX_PB_NAME_LENGTH); } if (tmpConvertBuf!=NULL) OslMfree(tmpConvertBuf); if (localPtr->list[j].tel.type == MMI_CSMCC_INTERNATIONAL_ADDR) { gFDLBDLContext[nSimId].FDLBDLEntries[i].tel.type = localPtr->list[j].tel.type; gFDLBDLContext[nSimId].FDLBDLEntries[i].tel.number[0] = '+';//insert '+' before the number. gFDLBDLContext[nSimId].FDLBDLEntries[i].tel.length = localPtr->list[j].tel.length; AnsiiToUnicodeString((PS8)TempBuff, (PS8)localPtr->list[j].tel.number); memcpy(gFDLBDLContext[nSimId].FDLBDLEntries[i].tel.number + ENCODING_LENGTH, TempBuff, (localPtr->list[j].tel.length)*ENCODING_LENGTH); } else { gFDLBDLContext[nSimId].FDLBDLEntries[i].tel.type = localPtr->list[j].tel.type; gFDLBDLContext[nSimId].FDLBDLEntries[i].tel.length = localPtr->list[j].tel.length; AnsiiToUnicodeString((PS8)TempBuff, (PS8)localPtr->list[j].tel.number); memcpy(gFDLBDLContext[nSimId].FDLBDLEntries[i].tel.number, (PS8)TempBuff, (localPtr->list[j].tel.length)*ENCODING_LENGTH); } } } }
/************************************************************** FUNCTION NAME : SECSETGetFdlEntriesRsp(void) PURPOSE : getting all entries rsp INPUT PARAMETERS : nil OUTPUT PARAMETERS : nil RETURNS : void Author : Vanita Jain **************************************************************/ void SECSETGetFdlEntriesRsp(void *info) { MSG_PHB_GET_ENTRY_BY_INDEX_RSP_STRUCT* localPtr; U8 i= 0,j=0; //micha0317 U8 TempBuff[(MAX_PB_NUMBER_LENGTH+2)*ENCODING_LENGTH]; U8 *tmpConvertBuf = NULL; U16 convertOutLen = 0; U8 name_dcs;//Renwy add 2008/06/25 for '$' error U8 nSimID; nSimID = MTPNP_AD_get_protocol_event_src_mode(); mmi_trace(1, TSTXT("SECSETGetFdlEntriesRsp")); SetProtocolEventHandlerExt(NULL, PRT_PHB_GET_ENTRY_BY_INDEX_RSP,nSimID); localPtr = (MSG_PHB_GET_ENTRY_BY_INDEX_RSP_STRUCT *)info; if (localPtr->result.flag == 0 /*OK*/) { mmi_trace(1, TSTXT("if (localPtr->result.flag == 0 /*OK*/) ")); i = gpFDLBDLContext->FDNBDNCount; gpFDLBDLContext->FDNBDNCount += localPtr->no_list; //Add number of new entries in current list length. if (gpFDLBDLContext->FDNBDNCount > MAX_SIM_ENTRIES) gpFDLBDLContext->FDNBDNCount = MAX_SIM_ENTRIES; for (; i < gpFDLBDLContext->FDNBDNCount; i++, j++) { gpFDLBDLContext->FDLBDLEntries[i].storage = localPtr->list[j].storage; gpFDLBDLContext->FDLBDLEntries[i].index = localPtr->list[j].index; gpFDLBDLContext->FDLBDLEntries[i].record_index = localPtr->list[j].record_index; memset(gpFDLBDLContext->FDLBDLEntries[i].alpha_id.name, 0, MAX_NAME_LEN_FSB_LIST*ENCODING_LENGTH); memset(gpFDLBDLContext->FDLBDLEntries[i].tel.number, 0, MAX_NUMBER_LEN_FSB_LIST*ENCODING_LENGTH); gpFDLBDLContext->FDLBDLEntries[i].alpha_id.name_length = localPtr->list[j].alpha_id.name_length; gpFDLBDLContext->FDLBDLEntries[i].alpha_id.name_dcs = localPtr->list[j].alpha_id.name_dcs; {//Renwy add begine 2008/06/25 for '$' error name_dcs = gpFDLBDLContext->FDLBDLEntries[i].alpha_id.name_dcs; if (MMI_PHB_ASCII == gpFDLBDLContext->FDLBDLEntries[i].alpha_id.name_dcs) { name_dcs = MMI_8BIT_DCS; } }//Renwy add end 2008/06/25 for '$' error tmpConvertBuf = CovertStringForPlatform(localPtr->list[j].alpha_id.name, gpFDLBDLContext->FDLBDLEntries[i].alpha_id.name_length,name_dcs,&convertOutLen);//Renwy modify 2008/06/25 //tmpConvertBuf = CovertStringForPlatform(localPtr->list[j].alpha_id.name, gFDLBDLContext.FDLBDLEntries[i].alpha_id.name_length,gFDLBDLContext.FDLBDLEntries[i].alpha_id.name_dcs,&convertOutLen); gpFDLBDLContext->FDLBDLEntries[i].alpha_id.name_length = (U8) convertOutLen; if (pfnUnicodeStrlen((PS8) tmpConvertBuf) <= MAX_PB_NAME_LENGTH) { pfnUnicodeStrcpy((PS8) gpFDLBDLContext->FDLBDLEntries[i].alpha_id.name, (PS8) tmpConvertBuf); } else { pfnUnicodeStrncpy((PS8) gpFDLBDLContext->FDLBDLEntries[i].alpha_id.name, (PS8) tmpConvertBuf, MAX_PB_NAME_LENGTH); } if (tmpConvertBuf!=NULL) OslMfree(tmpConvertBuf); if (localPtr->list[j].tel.type == MMI_CSMCC_INTERNATIONAL_ADDR) { gpFDLBDLContext->FDLBDLEntries[i].tel.type = localPtr->list[j].tel.type; gpFDLBDLContext->FDLBDLEntries[i].tel.number[0] = '+';//insert '+' before the number. gpFDLBDLContext->FDLBDLEntries[i].tel.length = localPtr->list[j].tel.length; AnsiiToUnicodeString((PS8)TempBuff, (PS8)localPtr->list[j].tel.number); memcpy(gpFDLBDLContext->FDLBDLEntries[i].tel.number + ENCODING_LENGTH, TempBuff, (localPtr->list[j].tel.length)*ENCODING_LENGTH); } else { gpFDLBDLContext->FDLBDLEntries[i].tel.type = localPtr->list[j].tel.type; gpFDLBDLContext->FDLBDLEntries[i].tel.length = localPtr->list[j].tel.length; AnsiiToUnicodeString((PS8)TempBuff, (PS8)localPtr->list[j].tel.number); memcpy(gpFDLBDLContext->FDLBDLEntries[i].tel.number, (PS8)TempBuff, (localPtr->list[j].tel.length)*ENCODING_LENGTH); } } if (localPtr->no_list == MAX_ENTRIES_IN_LIST) { mmi_trace(1, TSTXT(" if (localPtr->no_list == MAX_ENTRIES_IN_LIST) ")); SECSETGetFdlEntriesReq(); } else { mmi_trace(1, TSTXT(" ViewFDList ")); if(g_FixedInit[nSimID] != TRUE)////man for fdn { ViewFDList(); } gSimReady[nSimID] = TRUE; /* * Retrieve FDN list to ADN buffer when FDN is enable. * Because ADN will not read when FDN is on, so use ADN's buffer to store FDN temporarily * This is for call lookup FDN number usage. */ // if(g_SecuritySetupContext.FdlStatus) // mmi_phb_fdn_get_list_to_ram(); } } else if (localPtr->result.flag == 1 && localPtr->result.cause == 5) { // gFDLBDLContext.FDNBDNCount = 0; gSimReady[nSimID] = TRUE; ViewFDList(); } else { DisplayPopup((PU8)GetString(STR_GLOBAL_UNFINISHED) ,IMG_GLOBAL_UNFINISHED, 1,ST_NOTIFYDURATION,ERROR_TONE); DeleteUptoScrID(SCR_ID_SECSET_FIX_DIAL); } }
void CALLSETBarringRsp(void * info ) { mmi_ss_call_barring_rsp_struct *pMsgBarringRsp = (mmi_ss_call_barring_rsp_struct *) info ; U8 bs_index; memset(g_callset_cntx_p->SSDisplayBuffer,0, MAX_DISP_UCS2); DeleteScreenIfPresent(SCR_ID_CALLSET_BARRING_OUT); DeleteScreenIfPresent(SCR_ID_CALLSET_BARRING_IN); DeleteScreenIfPresent(SCR_ID_CALLSET_BARRING_PASS); DeleteScreenIfPresent(SCR_ID_CALLSET_BARRING_OLD_PASS); DeleteScreenIfPresent(SCR_ID_CALLSET_BARRING_OPTION); DeleteScreenIfPresent(SCR_ID_CALLSET_BARRING_NEW_PASS); DeleteScreenIfPresent(SCR_ID_CALLSET_BARRING_CFRM_PASS); /* check the status of the response result */ if(pMsgBarringRsp->result.flag == L4C_OK) { /* if the response is success check the type */ switch ( pMsgBarringRsp->type) { /* call barring all outgoing calls */ case L4_BAOC: pfnUnicodeStrcpy((PS8)g_callset_cntx_p->SSDisplayBuffer,(PS8)GetString(STR_BAOC_A)); break; /* call barring all outgoing international calls */ case L4_BOIC: pfnUnicodeStrcpy((PS8)g_callset_cntx_p->SSDisplayBuffer,(PS8)GetString(STR_BOIC_A)); break; /* call barring all outgoing international calls except home */ case L4_BOICEXHC: pfnUnicodeStrcpy((PS8)g_callset_cntx_p->SSDisplayBuffer,(PS8)GetString(STR_BOICEXHC_A)); break; /* call barring all incoming calls */ case L4_BAIC: pfnUnicodeStrcpy((PS8)g_callset_cntx_p->SSDisplayBuffer,(PS8)GetString(STR_BAIC_A)); break; /* call barring all incoming roaming calls */ case L4_BAICROAM: pfnUnicodeStrcpy((PS8)g_callset_cntx_p->SSDisplayBuffer,(PS8)GetString(STR_BAICROAM_A)); break; /* call barring cancel all calls */ case L4_BAC: pfnUnicodeStrcpy((PS8)g_callset_cntx_p->SSDisplayBuffer,(PS8)GetString(STR_BAC_A)); break; /* call barring all outgoing calls */ case L4_BOC: pfnUnicodeStrcpy((PS8)g_callset_cntx_p->SSDisplayBuffer,(PS8)GetString(STR_BOC_A)); break; /* call barring all incoming calls */ case L4_BIC: pfnUnicodeStrcpy((PS8)g_callset_cntx_p->SSDisplayBuffer,(PS8)GetString(STR_BIC_A)); break; default: pfnUnicodeStrcpy((PS8)g_callset_cntx_p->SSDisplayBuffer,(PS8)GetString(STR_DEFAULT_A)); break; } /* format the result string with active/deactive tags. */ if (pMsgBarringRsp->count == 0 ) { pfnUnicodeStrcat((PS8) g_callset_cntx_p->SSDisplayBuffer,(PS8)GetString(STR_DEACTIVATED)); } for ( bs_index = 0; bs_index < pMsgBarringRsp->count; bs_index++) { if (( pfnUnicodeStrlen((PS8)GetString(STR_L4_ALL_TELESERVICES_EXCEPT_SMS)) + pfnUnicodeStrlen((PS8)GetString(STR_DEACTIVATED)) + pfnUnicodeStrlen((PS8)g_callset_cntx_p->SSDisplayBuffer)) < MAX_DISP_UCS2 / ENCODING_LENGTH) { if (pMsgBarringRsp->list[bs_index].ss_status & SS_ABIT) { pfnUnicodeStrcat((PS8) g_callset_cntx_p->SSDisplayBuffer,(PS8)GetString(STR_ACTIVATED)); } else { pfnUnicodeStrcat((PS8) g_callset_cntx_p->SSDisplayBuffer,(PS8)GetString(STR_DEACTIVATED)); } AppendBScodeString( pMsgBarringRsp->list[bs_index].bs_code, (PS8)g_callset_cntx_p->SSDisplayBuffer); } } /* call the result screen function to display the result string */ //micha0322 DeleteScreenIfPresent(SCR_ID_CALLSET_GENERAL_SS_RESULT); EntryCALLSETGeneralSSResut(); } else { /* in case of response failure */ #ifdef __MMI_SS_SHOW_CAUSE__ ShowCauseString( pMsgBarringRsp->result.cause, (PS8)g_callset_cntx_p->SSDisplayBuffer); //micha0322 DeleteScreenIfPresent(SCR_ID_CALLSET_GENERAL_SS_RESULT); EntryCALLSETGeneralSSResut(); #else /* display the not done popup */ //micha0616 if ( pMsgBarringRsp->result.cause == CM_SS_ERR_NEGATIVEPW_CHECK ) { DisplayPopup( (PU8) GetString( STR_SETTING_WRONG), IMG_GLOBAL_UNFINISHED, 0, CS_NOTIFYDURATION, ERROR_TONE); } else if (pMsgBarringRsp->result.cause == CM_SS_ERR_NUMBEROFPW_ATTEMPTSVIOLATION) { DisplayPopup( (PU8) GetString( STR_SETTING_BLOCK), IMG_GLOBAL_UNFINISHED, 0, CS_NOTIFYDURATION, ERROR_TONE); } else { DisplayPopup( (PU8) GetString( STR_GLOBAL_NOT_DONE), IMG_GLOBAL_UNFINISHED, 0, CS_NOTIFYDURATION, ERROR_TONE); } //micha0915 RemoveSSReqScr(); #endif } aud_speech_set_mode(KAL_FALSE); //chenhe,070808. for callforward,CM_KB_OUTGOINGCALL is been sent,so have to do so here return; }
/* void mmi_gamesimu_exit_from_fmgr(void *filename, int is_short) { //DeleteUptoScrID(SCREENID_GAMESIMU_LIST); DeleteNHistory(1); GoBackHistory(); } */ void EntryRomList(void) { #if 0 /*----------------------------------------------------------------*/ /* Local Variables */ /*----------------------------------------------------------------*/ S8 buf_filepath[FMGR_PATH_BUFFER_SIZE]; FS_HANDLE file_handle; FMGR_FILTER filter; S32 create_result; /*----------------------------------------------------------------*/ /* Code Body */ /*----------------------------------------------------------------*/ memset(buf_filepath,0x00,FMGR_PATH_BUFFER_SIZE); pfnUnicodeStrcpy((S8 *)buf_filepath,(const S8 *)u8_g_game_dir); #ifndef NAND_SUPPORT if(fmgr_is_msdc_present() == FALSE) { DisplayPopup((PU8)GetString(STR_GLOBAL_NOTIFY_NO_MEMORY_CARD), IMG_GLOBAL_EMPTY,0, 1000, EMPTY_LIST_TONE); return; } #endif EntryNewScreen(SCREENID_GAMESIMU_LIST, NULL, EntryRomList, NULL); create_result = mmi_gamesimu_create_file_dir(buf_filepath); /* check if it is valid path */ file_handle = FS_Open((PU16) buf_filepath, FS_OPEN_DIR | FS_READ_ONLY); if (file_handle >= 0) { FS_Close(file_handle); FMGR_FILTER_INIT(&filter); FMGR_FILTER_SET(&filter,FMGR_TYPE_NES); mmi_fmgr_select_path_and_enter( APP_GAME_SIMU, FMGR_SELECT_BROWSE, filter, buf_filepath, (PsExtFuncPtr) mmi_gamesimu_exit_from_fmgr); /* check if device is busy or not */ if (FS_GetDevStatus(buf_filepath[0], FS_FEATURE_STATE_ENUM) == FS_DEVICE_BUSY) { /* mmi_fmgr_select_path_and_enter will also add screen to histry */ DeleteUptoScrID(SCREENID_GAMESIMU_LIST); /* Delete up to previous screen */ DeleteNHistory(1); } } else { { /* storage is card */ /* photo's path is not exist, and card is write protected, cant create photo folder */ if (create_result == FS_WRITE_PROTECTION) { DisplayPopup( (PU8) GetString(FMGR_FS_WRITE_PROTECTION_TEXT), IMG_GLOBAL_WARNING, 1, ST_NOTIFYDURATION, WARNING_TONE); } else if (create_result == FS_DISK_FULL) { DisplayPopup( (PU8) GetString(FMGR_FS_DISK_FULL_TEXT), IMG_GLOBAL_WARNING, 1, ST_NOTIFYDURATION, WARNING_TONE); } else if (create_result == FS_ROOT_DIR_FULL) { DisplayPopup( (PU8) GetString(FMGR_FS_ROOT_DIR_FULL_TEXT), IMG_GLOBAL_WARNING, 1, ST_NOTIFYDURATION, WARNING_TONE); } else { DisplayPopup( (PU8) GetString(STR_GLOBAL_NOTIFY_NO_MEMORY_CARD), IMG_GLOBAL_WARNING, 1, ST_NOTIFYDURATION, WARNING_TONE); } DeleteUptoScrID(SCREENID_GAMESIMU); return; } } #endif }