/***************************************************************************** * FUNCTION * mmi_java_terminate_dialog_yes_hdlr * DESCRIPTION * Handler Function: revoked when select "YES" in "TERMINATE" dialog * PARAMETERS * void * RETURNS * void *****************************************************************************/ static void mmi_java_terminate_dialog_yes_hdlr(void) { /*----------------------------------------------------------------*/ /* Local Variables */ /*----------------------------------------------------------------*/ /*----------------------------------------------------------------*/ /* Code Body */ /*----------------------------------------------------------------*/ if (mmi_java_highlight_index == 0) /* pause */ { jvm_enter_pause_mode(); DeleteScreenIfPresent(SCR_JAVA_APP_MIDS_OPTION); DeleteScreenIfPresent(SCR_JAVA_APP_OPTION_SELECT); DeleteScreenIfPresent(SCR_JAVA); } else /* terminate */ { jvm_pause_state_exit(); mmi_java_entry_terminating(MMI_FALSE); } if(GetActiveScreenId() == SCR_JAVA_TERMINATE_DIALOG) { GoBackHistory(); } else { DeleteScreenIfPresent(SCR_JAVA_TERMINATE_DIALOG); } }
/***************************************************************************** * FUNCTION * mmi_idle_entry_change_dial_mode * DESCRIPTION * * PARAMETERS * void * RETURNS * void *****************************************************************************/ void mmi_idle_entry_change_dial_mode(void) { /*----------------------------------------------------------------*/ /* Local Variables */ /*----------------------------------------------------------------*/ /*----------------------------------------------------------------*/ /* Code Body */ /*----------------------------------------------------------------*/ g_idle_context.DigitScreenDialMode = (g_idle_context.DigitScreenDialMode) ? 0 : 1; /* 0: GSM, 1: WLAN */ sprintf(g_idle_context.DialPadCallBuffer, ""); g_idle_context.IdleScreenDigitKeyCode = -1; IdleScreenDigitHandler(); DeleteScreenIfPresent(IDLE_SCREEN_DIGIT_OPTIONS_ID); DeleteScreenIfPresent(IDLE_SCREEN_DIGIT_HANDLER_ID); DeleteScreenIfPresent(SCR_ID_VOIP_CALL_EDITOR); if (mmi_netset_get_active_preferred_mode() == P_WLAN_PREFERRED || mmi_idle_get_dial_mode() == 0) { /* enter VoIP dialer screen first then change dialer mode to digit dialer */ /* restore RSK/LSK handers because they are changed to disable long press */ SetLeftSoftkeyFunction(mmi_idle_entry_dial_pad_option, KEY_EVENT_UP); SetRightSoftkeyFunction(GoBackHistory, KEY_EVENT_UP); } }
/***************************************************************************** * FUNCTION * mmi_idle_delete_dial_pad_screens * DESCRIPTION * Callback function of UCM dial option * PARAMETERS * p [IN] * RETURNS * void *****************************************************************************/ void mmi_idle_delete_dial_pad_screens(void *p) { /*----------------------------------------------------------------*/ /* Local Variables */ /*----------------------------------------------------------------*/ /*----------------------------------------------------------------*/ /* Code Body */ /*----------------------------------------------------------------*/ DeleteScreenIfPresent(IDLE_SCREEN_DIGIT_OPTIONS_ID); DeleteScreenIfPresent(IDLE_SCREEN_DIGIT_HANDLER_ID); /* no need to delet VoIP dial pad screen because it will be deleted by VoIP application */ }
/***************************************************************************** * FUNCTION * mmi_netset_save_user_ctrl_plmn_cancel * DESCRIPTION * Cancellation of save * PARAMETERS * void * RETURNS * void *****************************************************************************/ void mmi_netset_save_user_ctrl_plmn_cancel(void) { /*----------------------------------------------------------------*/ /* Local Variables */ /*----------------------------------------------------------------*/ /*----------------------------------------------------------------*/ /* Code Body */ /*----------------------------------------------------------------*/ stopRequestedTone(WARNING_TONE); DeleteScreenIfPresent(SCR_ID_NETSET_USER_CTRL_PLMN_OPTIONS); DeleteScreenIfPresent(SCR_ID_NETSET_USER_CTRL_PLMN_ADD); GoBackHistory(); }
/***************************************************************************** * FUNCTION * RspDeleteAllMissedNum * DESCRIPTION * Response handler for deleteallmissedcalls request. * NA * * PARAMETERS * info [?] * RETURNS * void *****************************************************************************/ void RspDeleteAllMissedNum(void *info) { /*----------------------------------------------------------------*/ /* Local Variables */ /*----------------------------------------------------------------*/ DEL_LAST_NUMBER_RSP *rsp; /*----------------------------------------------------------------*/ /* Code Body */ /*----------------------------------------------------------------*/ /* retrive the data from the response info structure */ rsp = (DEL_LAST_NUMBER_RSP*) info; /* Check the response is success or not */ if (rsp->result.flag == CALL_LOG_RESULT_OK) { /* Incase of success */ /* Reset the missed call icon on idle screen */ IdleResetStatusIcon(STATUS_ICON_MISSED_CALL); /* Reset the missed calls counters */ /* MTK Leo add 20040322, add two new statusicons on sublcd */ #ifndef __MMI_SUBLCD_SHORT_STATUSICON_LIST__ IdleResetStatusIcon(STATUS_ICON_SUBLCD_MISSED_CALL); #endif /* MTK Leo end */ chis_p->nMissedCalls = 0; chis_p->nMissedCallBeforeView = 0; #ifdef __MMI_DUAL_SIM_MASTER__ DeleteScreenIfPresent(SCR_MTPNP_CALL_HISTORY_NOTIFY); #endif /* __MMI_DUAL_SIM_MASTER__ */ g_chist_have_missed_call = 0; mmi_chist_set_have_missed_call(); } if (chis_p->isDeleteAll == TRUE) { if (chis_p->nRecvdCalls != 0) { DeleteAllRecdCalls(); return; } chis_p->isDeleteAll = FALSE; } if (rsp->result.flag == CALL_LOG_RESULT_OK) { /* Incase of success */ /* Display success popup for user notification */ DisplayPopup((PU8) GetString(STR_GLOBAL_DELETED), IMG_GLOBAL_ACTIVATED, 1, CS_NOTIFYDURATION, SAVE_TONE); } else { /* If failure; then display failure popup for user notification */ DisplayPopup((PU8) GetString(STR_GLOBAL_UNFINISHED), IMG_GLOBAL_UNFINISHED, 1, CS_NOTIFYDURATION, ERROR_TONE); } /* Delete screens in history to go back to reset call main screen */ /* DeleteUptoScrID(SCR_CALLHISTORY_RESETCALL); */ return; }
/***************************************************************************** * FUNCTION * mmi_syncml_phb_sync_rsp * DESCRIPTION * Callback for phonebook access * PARAMETERS * void * RETURNS * void *****************************************************************************/ void mmi_syncml_phb_sync_rsp(U16 phb_result, U16 store_index) { /*----------------------------------------------------------------*/ /* Local Variables */ /*----------------------------------------------------------------*/ /*----------------------------------------------------------------*/ /* Code Body */ /*----------------------------------------------------------------*/ #ifdef __MMI_SYNCML_REFRESH_SYNC_SUPPORT__ if (g_syncml_context.sync_type == SYNCML_TYPE_RESTORE && mmi_syncml_is_phb_sync_now() == MMI_FALSE) { if (phb_result == MMI_PHB_SYNC_SUCCESS) { /* delete phb for RESTORE sync type */ mmi_syncml_perform_delete_phb_one_by_one(); } else { DisplayPopup( (U8*) GetString(STR_GLOBAL_UNFINISHED), IMG_GLOBAL_UNFINISHED, 1, UI_POPUP_NOTIFYDURATION_TIME, (U8) ERROR_TONE); DeleteScreenIfPresent(SCR_ID_SYNC_DELETE_ALL); } return; } #endif /* __MMI_SYNCML_REFRESH_SYNC_SUPPORT__ */ switch (phb_result) { case MMI_PHB_SYNC_SUCCESS: g_syncml_sync_context.result = SYNCML_OK; break; case MMI_PHB_SYNC_STORAGE_FULL: g_syncml_sync_context.result = SYNCML_DEVICE_FULL; break; default: g_syncml_sync_context.result = SYNCML_FAIL; break; } if (g_syncml_sync_context.operation == SYNCML_RECORD_ADD) { g_syncml_sync_context.luid = store_index; } if (g_syncml_sync_context.operation == SYNCML_RECORD_GET) { mmi_syncml_get_record_res_req(); } else { mmi_syncml_set_record_res_req(); } }
/************************************************************** FUNCTION NAME : RspDeleteAllMissedNum PURPOSE : Response handler for deleteallmissedcalls request. INPUT PARAMETERS : void * OUTPUT PARAMETERS : nil RETURNS : void **************************************************************/ void RspDeleteAllMissedNum( void *info ) { DEL_LAST_NUMBER_RSP *rsp; /* retrive the data from the response info structure */ rsp = (DEL_LAST_NUMBER_RSP *) info; /* Check the response is success or not */ if( rsp->result.flag == CALL_LOG_RESULT_OK) { /* Incase of success */ /* Reset the missed call icon on idle screen */ chis_p->nMissedCalls = 0; chis_p->nMissedCallBeforeView = 0; mmi_chist_rearrange_missed_call_status_icon(); #ifdef __MMI_CHIST_ACCU_NUM_MISSED_CALL_BEFORE_VIEW_AFTER_REBOOT__ mmi_chist_set_num_missed_call_before_view(); #endif #ifdef __MMI_MULTI_SIM__ DeleteScreenIfPresent(SCR_MTPNP_CALL_HISTORY_NOTIFY); #endif } if (chis_p->isDeleteAll == TRUE) { if (chis_p->nRecvdCalls != 0) { DeleteAllRecdCalls(); return; } else if (chis_p->nRejectedCalls != 0) { DeleteAllRejectedCalls(); return; } chis_p->isDeleteAll = FALSE; } if( rsp->result.flag == CALL_LOG_RESULT_OK) { /* Incase of success */ /* Display success popup for user notification */ DisplayPopup((PU8)GetString(STR_GLOBAL_DONE) , IMG_GLOBAL_ACTIVATED, 1, CS_NOTIFYDURATION,SAVE_TONE); } else { /* If failure; then display failure popup for user notification */ DisplayPopup((PU8)GetString(STR_GLOBAL_UNFINISHED) , IMG_GLOBAL_UNFINISHED, 1, CS_NOTIFYDURATION,ERROR_TONE); } /* Delete screens in history to go back to reset call main screen */ //DeleteUptoScrID(SCR_CALLHISTORY_RESETCALL); return; }
/************************************************************** FUNCTION NAME : SECSETDelFdlReq(void) INPUT PARAMETERS : nil OUTPUT PARAMETERS : nil RETURNS : void Author : Vanita Jain **************************************************************/ void SECSETDelFdlReq() { MSG_PHB_DELETE_ENTRY_REQ_STRUCT *pMsgDelEntry = NULL ; MYQUEUE Message; module_type dest_mod_id = MOD_L4C + gSecSetupMenuSimID; EntrySECSETFDNBDNDeleting(); pMsgDelEntry = (MSG_PHB_DELETE_ENTRY_REQ_STRUCT*) OslConstructDataPtr(sizeof(MSG_PHB_DELETE_ENTRY_REQ_STRUCT)); pMsgDelEntry->no_data = 1; pMsgDelEntry->del_all = MMI_FALSE; //No pMsgDelEntry->index = gpFDLBDLContext->FDLBDLEntries[gpFDLBDLContext->HighlightedFDN].index; pMsgDelEntry->type = MMI_PHB_FDN ; //PHB_PHONEBOOK Message.oslSrcId=MOD_MMI; Message.oslDestId=dest_mod_id; Message.oslMsgId = PRT_PHB_DEL_ENTRY_REQ; Message.oslDataPtr = (oslParaType *)pMsgDelEntry; Message.oslPeerBuffPtr= NULL; DeleteUptoScrID(SCR_ID_SECSET_FDN_LIST); DeleteScreenIfPresent(SCR_ID_SECSET_FDN_LIST); ExitSECSETFDNListReload(); SetProtocolEventHandlerExt(SECSETDelFdlRsp,PRT_PHB_DEL_ENTRY_RSP,gSecSetupMenuSimID); OslMsgSendExtQueue(&Message); }
/***************************************************************************** * FUNCTION * ResetGPRSCounterRsp * DESCRIPTION * * PARAMETERS * info [?] * RETURNS * void *****************************************************************************/ void ResetGPRSCounterRsp(void *info) { /*----------------------------------------------------------------*/ /* Local Variables */ /*----------------------------------------------------------------*/ /* micha1020 */ #ifdef __MMI_GPRS_FEATURES__ mmi_ps_reset_gprs_data_counter_rsp_struct *localPtr; /*----------------------------------------------------------------*/ /* Code Body */ /*----------------------------------------------------------------*/ localPtr = (mmi_ps_reset_gprs_data_counter_rsp_struct*) info; if (localPtr->result == MMI_TRUE) { gprsTotalSent = 0; gprsTotalReceived = 0; gprsLastSent = 0; gprsLastReceived = 0; DisplayPopup((PU8) GetString(STR_GLOBAL_DONE), IMG_GLOBAL_ACTIVATED, 1, CS_NOTIFYDURATION, SUCCESS_TONE); } else { DisplayPopup((PU8) GetString(STR_GLOBAL_NOT_DONE), IMG_GLOBAL_UNFINISHED, 1, CS_NOTIFYDURATION, ERROR_TONE); } DeleteScreenIfPresent(SCR_CONFIRM_SCREEN); return; #endif /* __MMI_GPRS_FEATURES__ */ }
/***************************************************************************** * FUNCTION * mmi_netset_entry_user_ctrl_plmn_del_one * DESCRIPTION * * PARAMETERS * void * RETURNS * void *****************************************************************************/ void mmi_netset_entry_user_ctrl_plmn_del_one(void) { /*----------------------------------------------------------------*/ /* Local Variables */ /*----------------------------------------------------------------*/ U8 i; /*----------------------------------------------------------------*/ /* Code Body */ /*----------------------------------------------------------------*/ DisplayPopup( (U8*) GetString(STR_GLOBAL_DONE), IMG_GLOBAL_ACTIVATED, 1, UI_POPUP_NOTIFYDURATION_TIME, (U8) SUCCESS_TONE); DeleteScreenIfPresent(SCR_ID_NETSET_USER_CTRL_PLMN_OPTIONS); /* write data to nvram */ for (i = gUserCtrlPlmnList.CurrSelPlmn + 1; i < gUserCtrlPlmnList.PlmnListSize; i++) { memcpy(gUserCtrlPlmnList.PrefPLMN[i - 1], gUserCtrlPlmnList.PrefPLMN[i], 24); } memset(gUserCtrlPlmnList.PrefPLMN[gUserCtrlPlmnList.PlmnListSize - 1], 0, 24); gUserCtrlPlmnList.PlmnListSize--; mmi_netset_access_user_ctrl_plmn_nvram(1); RefreshNwProviderName(gPLMN); }
/***************************************************************************** * FUNCTION * mmi_brw_delete_all_push_messages * DESCRIPTION * Deletes the entire recent page list * PARAMETERS * void * RETURNS * void *****************************************************************************/ void mmi_brw_delete_all_push_messages(void) { /*----------------------------------------------------------------*/ /* Local Variables */ /*----------------------------------------------------------------*/ U16 msg_counter; JC_UINT32 brw_total_msg_count = 0; JC_UINT32 brw_unread_msg_count = 0; /*----------------------------------------------------------------*/ /* Code Body */ /*----------------------------------------------------------------*/ /* added by Vivek */ HideStatusIcon(STATUS_ICON_WAP); mmi_brw_get_push_statistics(&brw_total_msg_count, &brw_unread_msg_count); for (msg_counter = 0; msg_counter < brw_total_msg_count; msg_counter++) { mmi_brw_delete_push_msg(0); } /* Added by Vivek - 13072006 */ mmi_brw_push_free_service_value_struct(&g_mmi_brw_push_cntx.current_service_message); /* Edited By Vivek - 5 July 2006 */ /* DisplayPopup((PU8) GetString(STR_GLOBAL_DONE), IMG_GLOBAL_DELETED, 1, UI_POPUP_NOTIFYDURATION_TIME, SUCCESS_TONE); */ /* Edited by Vivek - 02082006. Now instead of displaying the image IMG_GLOBAL_DELETED we are displaying IMG_GLOBAL_ACTIVATED as we are doing in other part of browser */ DisplayPopup((PU8) GetString(STR_GLOBAL_DONE), IMG_GLOBAL_ACTIVATED, 1, UI_POPUP_NOTIFYDURATION_TIME, SUCCESS_TONE); if (IsScreenPresent(SCR_ID_BRW_SERVICE_INBOX)) { DeleteUptoScrID(SCR_ID_BRW_SERVICE_INBOX); } else /* when message is deleted from idle screen */ { mmi_brw_entry_service_inbox(); DeleteScreenIfPresent(SCR_ID_BRW_PUSH_MESSAGE_READ_OPTIONS); DeleteScreenIfPresent(SCR_ID_BRW_NEW_PUSH_MESSAGE_IND); DeleteScreenIfPresent(SCR_ID_BRW_READ_SERVICE_MESSAGE); } /* Save to persistant storage */ mmi_brw_save_current_push_info(); }
/***************************************************************************** * FUNCTION * csb_frm_testtool_callback * DESCRIPTION * Callback to take snap shots one by one (non-blocking) * PARAMETERS * void * RETURNS * U16 *****************************************************************************/ void csb_frm_testtool_callback(void) { /*----------------------------------------------------------*/ /* Local Variables */ /*----------------------------------------------------------*/ BOOL error_code = TRUE; /*----------------------------------------------------------*/ /* Code Body */ /*----------------------------------------------------------*/ StopTimer(CSB_AUTO_MODE_TIMER_ID); /* Lock the buffer as we dont want to display the category screens */ gdi_layer_lock_frame_buffer(); /* ASSERT if the entryFuncPtr is NULL */ ASSERT(g_CSB_struct.pscreen_info[g_csb_index].entryFuncPtr != NULL); /* Call the category as the buffer must built before calling csb_frm_save_screen_shot */ g_CSB_struct.pscreen_info[g_csb_index].entryFuncPtr(); /* Unlock the buffer as it is already built */ gdi_layer_unlock_frame_buffer(); /* API to create the file path and save the LAYER contents in JPEG format */ error_code = (BOOL)csb_frm_save_screen_shot((U32)g_csb_index); if (error_code == FALSE) { /* Clear the key events */ ClearKeyEvents(); DisplayPopup((PU8) GetString(STR_ID_CSB_JPEG_FAIL_TEXT), IMG_GLOBAL_ERROR, 1, CSB_NOTIFY_DURATION, 0); DeleteUptoScrID(SCR_ID_CSB_TESTTOOL_SCR_ID); return; } /* Show processing screen till all the screenshots are taken */ TestToolProcessingScr(STR_ID_CSB_PROCESSING_TEXT); g_csb_index++; /* Delete the screens from History, as all the screens are getting added in History */ DeleteUptoScrID(SCR_ID_CSB_TESTTOOL_SCR_ID); DeleteScreenIfPresent(SCR_ID_CSB_DUMMY_SCR_ID); if(g_csb_index < TOTAL_CATEGORY_SCREENS) { EntryCSBTestToolRun(); } else { g_csb_index = 0; /* Once all the category screenshots are taken, show the DONE pop-up */ DisplayPopup((PU8) GetString(STR_ID_CSB_TESTTOOL_PASS), IMG_GLOBAL_ACTIVATED, 1, CSB_NOTIFY_DURATION, 0); DeleteUptoScrID(SCR_ID_CSB_TESTTOOL_SCR_ID); } }
/***************************************************************************** * FUNCTION * mmi_java_resume_dialog_yes_hdlr * DESCRIPTION * Handle Function: revoked when select "YES" in "RESUME" dialog * PARAMETERS * void * RETURNS * void *****************************************************************************/ void mmi_java_resume_dialog_yes_hdlr(void) { /*----------------------------------------------------------------*/ /* Local Variables */ /*----------------------------------------------------------------*/ /*----------------------------------------------------------------*/ /* Code Body */ /*----------------------------------------------------------------*/ // TODO: hope we can update wap profile in java task , not in MMI task if (mmi_java_highlight_index == 0) /* resume */ { if (g_mmi_java_get_wap_prof_ok && !mmi_java_is_no_sim()) { /* this is used to update the wap profile data for java */ /* default */ if(g_mmi_java_wap_prof_id == 0xFF) { MYQUEUE Message; SetProtocolEventHandler(j2me_get_wap_rsp, MSG_ID_WAP_GET_BRA_PROF_ID_RSP); Message.oslSrcId = MOD_MMI; Message.oslDestId = wap_get_service_module(MSG_ID_WAP_GET_BRA_PROF_ID_REQ);; Message.oslMsgId = MSG_ID_WAP_GET_BRA_PROF_ID_REQ; Message.oslDataPtr = NULL; Message.oslPeerBuffPtr = NULL; OslMsgSendExtQueue(&Message); } else { MYQUEUE Message; wap_get_prof_content_req_struct *get_prof; SetProtocolEventHandler(j2me_get_wap_rsp, MSG_ID_WAP_GET_PROF_CONTENT_RSP); get_prof = construct_local_para(sizeof(wap_get_prof_content_req_struct), TD_CTRL); get_prof->id = g_mmi_java_wap_prof_id; Message.oslSrcId = MOD_MMI; Message.oslDestId = wap_get_service_module(MSG_ID_WAP_GET_PROF_CONTENT_REQ); Message.oslMsgId = MSG_ID_WAP_GET_PROF_CONTENT_REQ; Message.oslDataPtr = (local_para_struct*) get_prof; Message.oslPeerBuffPtr = NULL; OslMsgSendExtQueue(&Message); } g_mmi_java_get_wap_prof_ok = KAL_FALSE; } /*********************************************************/ jvm_resume_screen(); } else /* terminate */ { jvm_pause_state_exit(); mmi_java_entry_terminating(MMI_FALSE); } DeleteScreenIfPresent(SCR_JAVA_RESUME_DIALOG); }
/************************************************************** FUNCTION NAME : ExitSECSETFDNListReload(void) PURPOSE : INPUT PARAMETERS : nil OUTPUT PARAMETERS : nil RETURNS : void Author : Vanita Jain **************************************************************/ void ExitSECSETFDNListReload(void) { history_t Scr; S16 nHistory = 0; DeleteScreenIfPresent(SCR_ID_SECSET_FDN_LIST); Scr.scrnID = SCR_ID_SECSET_FDN_LIST; Scr.entryFuncPtr = EntryFdlList; pfnUnicodeStrcpy((S8*)Scr.inputBuffer, (S8*)&nHistory); GetCategoryHistory(Scr.guiBuffer); AddHistory(Scr); }
/***************************************************************************** * FUNCTION * mmi_opp_request_timeout_callback * DESCRIPTION * This function is the call back used the request timeout * PARAMETERS * void * RETURNS * void *****************************************************************************/ void mmi_opp_request_timeout_callback(void) { /*----------------------------------------------------------------*/ /* Local Variables */ /*----------------------------------------------------------------*/ /*----------------------------------------------------------------*/ /* Code Body */ /*----------------------------------------------------------------*/ if ((MMI_OPP_CTX(opc_state) == MMI_OPC_DISCONNECTING) || (MMI_OPP_CTX(opc_state) == MMI_OPC_ABORTING)) { if (MMI_OPP_CTX(opc_state) == MMI_OPC_ABORTING) { } mmi_opp_opc_connection_terminated(MMI_OPP_ERR_SUCCESS); } else if (MMI_OPP_CTX(opc_state) != MMI_OPC_IDLE) { mmi_opp_opc_connection_terminated(MMI_OPP_ERR_DISCONNECT); } DeleteScreenIfPresent(SCR_OPP_SENDING); DeleteScreenIfPresent(SCR_OPP_ABORTING); }
/***************************************************************************** * FUNCTION * mmi_java_force_terminate_dialog_no_hdlr * DESCRIPTION * Handle Function: revoked when select "NO" in "FORCE TERMINATE" dialog * PARAMETERS * void * RETURNS * void *****************************************************************************/ static void mmi_java_cb_terminate_dialog_no_hdlr(void) { /*----------------------------------------------------------------*/ /* Local Variables */ /*----------------------------------------------------------------*/ /*----------------------------------------------------------------*/ /* Code Body */ /*----------------------------------------------------------------*/ mmi_java_terminate_cb(MMI_FALSE); if( GetActiveScreenId() == SCR_JAVA_TERMINATE_DIALOG2) { GoBackHistory(); } else { DeleteScreenIfPresent(SCR_JAVA_TERMINATE_DIALOG2); } }
/***************************************************************************** * FUNCTION * mmi_rmgr_http_profile_entry_done * DESCRIPTION * Entry function of http profile done screen * PARAMETERS * void * RETURNS * void *****************************************************************************/ void mmi_rmgr_http_profile_entry_done(void) { /*----------------------------------------------------------------*/ /* Local Variables */ /*----------------------------------------------------------------*/ /*----------------------------------------------------------------*/ /* Code Body */ /*----------------------------------------------------------------*/ mmi_rmgr_p->http_profile_idx = mmi_rmgr_p->http_profile_hilite_idx; DisplayPopupCallBack( (U8*) GetString(STR_GLOBAL_DONE), IMG_GLOBAL_ACTIVATED, 0, UI_POPUP_NOTIFYDURATION_TIME, SUCCESS_TONE, mmi_rmgr_http_profile_done_go_back_to_rmgr_main); DeleteScreenIfPresent(SCR_ID_RMGR_HTTP_PROFILE_MAIN); }
/************************************************************** 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; }
/***************************************************************************** * FUNCTION * mmi_java_force_terminate_dialog_yes_hdlr * DESCRIPTION * Handle Function: revoked when select "YES" in "FORCE TERMINATE" dialog * PARAMETERS * void * RETURNS * void *****************************************************************************/ static void mmi_java_force_terminate_dialog_yes_hdlr(void) { /*----------------------------------------------------------------*/ /* Local Variables */ /*----------------------------------------------------------------*/ /*----------------------------------------------------------------*/ /* Code Body */ /*----------------------------------------------------------------*/ jvm_pause_state_exit(); mmi_java_entry_terminating(MMI_FALSE); if(GetActiveScreenId() == SCR_JAVA_FORCE_TERMINATE_DIALOG) { GoBackHistory(); } else { DeleteScreenIfPresent(SCR_JAVA_FORCE_TERMINATE_DIALOG); } }
iBOOL i51PortReleaseFrontEnd () { // author : Jelo // since : 2011.10.19 // (C) PKIG Tech. Co., Ltd. #if( I51_MTK_VS >= VS_11B_1212 ) MMI_ID ParentScreen,Currentscreen; #endif i51AdeOsLog(i51_LOG_SC, "PORT : i51PortReleaseFrontEnd , Release Front-End S"); l_InI51 = iFALSE; #if( I51_MTK_VS >= VS_11B_1212 ) mmi_frm_get_active_scrn_id(&ParentScreen,&Currentscreen); if( Currentscreen == I51_SCREEN_ID ) { GoBackHistory(); } if( mmi_frm_group_is_present(I51_GROUP_ID)) { mmi_frm_group_close(I51_GROUP_ID); } #else if( GetActiveScreenId() == I51_SCREEN_ID ) GoBackHistory(); if( IsScreenPresent (I51_SCREEN_ID) )//在历史屏幕中 DeleteScreenIfPresent (I51_SCREEN_ID); #endif i51ExitDo(); i51AdeOsLog(i51_LOG_SC, "PORT : i51PortReleaseFrontEnd , Release Front-End E"); return iTRUE ; }
/***************************************************************************** * FUNCTION * mmi_opp_entry_recv_confirm_scr * DESCRIPTION * * PARAMETERS * void * RETURNS * void *****************************************************************************/ void mmi_opp_entry_recv_confirm_scr(void) { /*----------------------------------------------------------------*/ /* Local Variables */ /*----------------------------------------------------------------*/ /*----------------------------------------------------------------*/ /* Code Body */ /*----------------------------------------------------------------*/ if (isIncomingCall() ) { mmi_opp_add_history_before_cm_marker(SCR_OPP_NOTY_RECV_ACCEPT,mmi_opp_entry_recv_confirm_scr); return; } MMI_OPP_BUILD_RECV_ACCEPT_NOTY_STR(); EntryNewScreen(SCR_OPP_NOTY_RECV_ACCEPT, NULL, mmi_opp_entry_recv_confirm_scr, NULL); SetDelScrnIDCallbackHandler(SCR_OPP_NOTY_RECV_ACCEPT, (HistoryDelCBPtr) NULL); DeleteScreenIfPresent(SCR_OPP_NOTY_RECV_ACCEPT); ShowCategory165Screen( STR_GLOBAL_YES, IMG_GLOBAL_YES, STR_GLOBAL_NO, IMG_GLOBAL_NO, (UI_string_type) mmi_opp_idle_notify_str, IMG_GLOBAL_QUESTION, NULL); SetLeftSoftkeyFunction(mmi_opp_accept_file_recv, KEY_EVENT_UP); SetRightSoftkeyFunction(mmi_opp_reject_file_recv, KEY_EVENT_UP); SetDelScrnIDCallbackHandler(SCR_OPP_NOTY_RECV_ACCEPT, (HistoryDelCBPtr) mmi_opp_confirm_del_cb); TurnOnBacklight(1); }
/***************************************************************************** * FUNCTION * mmi_opp_fmgr_forward_to_opp_callback * DESCRIPTION * This function is the call back used when the transfer gets completed * PARAMETERS * buf_p [?] * result [IN] * RETURNS * void *****************************************************************************/ void mmi_opp_fmgr_forward_to_opp_callback(void *buf_p, U32 result) { /*----------------------------------------------------------------*/ /* Local Variables */ /*----------------------------------------------------------------*/ /*----------------------------------------------------------------*/ /* Code Body */ /*----------------------------------------------------------------*/ if (buf_p) { OslMfree(buf_p); } if (result == MMI_OPP_ERR_SUCCESS) { DisplayPopup( (PU8) GetString(STR_GLOBAL_DONE), IMG_GLOBAL_ACTIVATED, 1, UI_POPUP_NOTIFYDURATION_TIME, SUCCESS_TONE); } else { DisplayPopup( (PU8) GetString(STR_GLOBAL_UNFINISHED), IMG_GLOBAL_UNFINISHED, 1, UI_POPUP_NOTIFYDURATION_TIME, WARNING_TONE); } DeleteScreenIfPresent(SCR_OPP_SENDING); StopTimer(FMGR_PROG_UPDATE_TIMER); }
/************************************************************** FUNCTION NAME : SECSETSetFdlEntryReq(void) INPUT PARAMETERS : nil OUTPUT PARAMETERS : nil RETURNS : void Author : Vanita Jain **************************************************************/ void SECSETSetFdlEntryReq(void) { MSG_PHB_SET_ENRTY_REQ_STRUCT *pMsgNewEntry = NULL ; MYQUEUE Message; //U8 pbName_ASCII[MAX_PB_NAME_LENGTH]; U8 pbNumber_ASCII[MAX_PB_NUMBER_LENGTH+1]; module_type dest_mod_id = MOD_L4C + gSecSetupMenuSimID; EntrySECSETFDNBDNSaving(); pMsgNewEntry = (MSG_PHB_SET_ENRTY_REQ_STRUCT*) OslConstructDataPtr(sizeof(MSG_PHB_SET_ENRTY_REQ_STRUCT)); //memset(pMsgNewEntry->list.alpha_id.name, 0, strlen((PS8)pbName_ASCII)+1); //memset(pMsgNewEntry->list.tel.number, 0, strlen((PS8)pbNumber_ASCII)+1); memset(pMsgNewEntry->list.alpha_id.name, 0, MAX_PB_NAME_LENGTH+1); memset(pMsgNewEntry->list.tel.number, 0, MAX_PB_NAME_LENGTH+1); pMsgNewEntry->type = MMI_PHB_FDN; pMsgNewEntry->no_data = 1; pMsgNewEntry->list.storage = MMI_SIM + gSecSetupMenuSimID; pMsgNewEntry->list.index = 0xFFFF; // For New Entry It should Always be 0xFFFF; pMsgNewEntry->list.record_index = 0xFFFF; // For New Entry It should be alaways 0xFFFF if(gpFDLBDLContext->FDNBDNEdit)//If entry is edited { pMsgNewEntry->list.index = gpFDLBDLContext->FDLBDLEntries[gpFDLBDLContext->HighlightedFDN].index; pMsgNewEntry->list.record_index = gpFDLBDLContext->FDLBDLEntries[gpFDLBDLContext->HighlightedFDN].record_index; } if (gpFDLBDLContext->FDLBDLNumber[0] == '+')//If Number is International { pMsgNewEntry->list.tel.type = MMI_CSMCC_INTERNATIONAL_ADDR; //INTERNATIONAL pMsgNewEntry->list.tel.length = (U8)pfnUnicodeStrlen((const S8 *)(gpFDLBDLContext->FDLBDLNumber+ ENCODING_LENGTH)); UnicodeToAnsii((PS8)pbNumber_ASCII,(PS8)( gpFDLBDLContext->FDLBDLNumber+ ENCODING_LENGTH)); memcpy(pMsgNewEntry->list.tel.number, pbNumber_ASCII, strlen((PS8)pbNumber_ASCII)+1); } else { pMsgNewEntry->list.tel.type = MMI_CSMCC_DEFAULT_ADDR_TYPE; //DEFAULT pMsgNewEntry->list.tel.length = (U8)pfnUnicodeStrlen((PS8)gpFDLBDLContext->FDLBDLNumber); UnicodeToAnsii((PS8)pbNumber_ASCII, (PS8)gpFDLBDLContext->FDLBDLNumber); memcpy(pMsgNewEntry->list.tel.number, pbNumber_ASCII, strlen((PS8)pbNumber_ASCII)+1); } if(GetUCS2Flag((PS8)gpFDLBDLContext->FDLBDLName)) { pMsgNewEntry->list.alpha_id.name_dcs = MMI_PHB_UCS2; pMsgNewEntry->list.alpha_id.name_length = ((U8)pfnUnicodeStrlen((PS8)gpFDLBDLContext->FDLBDLName))*ENCODING_LENGTH; BigEndianToLittleEndian((PS8)pMsgNewEntry->list.alpha_id.name, (PS8)gpFDLBDLContext->FDLBDLName); } else { pMsgNewEntry->list.alpha_id.name_dcs = MMI_PHB_ASCII; pMsgNewEntry->list.alpha_id.name_length = (U8)pfnUnicodeStrlen((PS8)gpFDLBDLContext->FDLBDLName); UnicodeToAnsii((PS8)pMsgNewEntry->list.alpha_id.name, (PS8)gpFDLBDLContext->FDLBDLName); PhbAsciiToGSM7Bit(pMsgNewEntry->list.alpha_id.name); } Message.oslSrcId=MOD_MMI; Message.oslDestId=dest_mod_id; Message.oslMsgId = PRT_PHB_SET_ENTRY_REQ; Message.oslDataPtr = (oslParaType *)pMsgNewEntry; Message.oslPeerBuffPtr= NULL; DeleteUptoScrID(SCR_ID_SECSET_FDN_LIST); DeleteScreenIfPresent(SCR_ID_SECSET_FDN_LIST); ExitSECSETFDNListReload(); SetProtocolEventHandlerExt(SECSETSetFdlEntryRsp,PRT_PHB_SET_ENTRY_RSP,gSecSetupMenuSimID); OslMsgSendExtQueue(&Message); }
/***************************************************************************** * FUNCTION * ShowCallManagementErrorMessage * DESCRIPTION * This function shows the failure in case of call management * * This is a part of other hardware application. * PARAMETERS * cause [IN] * TRUE(?) [OUT] Or FALSE * RETURNS * pBOOL(?) *****************************************************************************/ void ShowCallManagementErrorMessage(U16 cause) { /*----------------------------------------------------------------*/ /* Local Variables */ /*----------------------------------------------------------------*/ U16 error_code, img_id = IMG_ERROR_NOTIFY; U16 tone_id = ERROR_TONE_IN_CALL; /*----------------------------------------------------------------*/ /* Code Body */ /*----------------------------------------------------------------*/ MMI_TRACE(MMI_TRACE_G5_CM, MMI_CM_FUNC_ShowCallManagementErrorMessage); if (GetCallEndCause() == 0) { SetCallEndCause(cause); } SetCbackAfterSS(NULL); if (GetNotifySSFlag()) { MMI_TRACE(MMI_TRACE_G5_CM, MMI_CM_INFO_ShowErrorAfterNotifySS); SetCbackAfterSS((FuncPtr) ShowCallManagementErrorMessage); return; } EntryNewScreen(CM_SCR_ERR_MSG, ExitScrCMErrMsg, NULL, NULL); switch (GetCallEndCause()) { case ERR_UNASSIGNED_NUM: tone_id = NUM_UNOBTAIN_TONE; case ERR_INVALID_NUMBER_FORMAT: error_code = ERROR_UNRECOGNIZED_NUMBER; break; case ERR_SWITCH_EQUIPMENT_CONGESTION: tone_id = CONGESTION_TONE; case ERR_CALL_REJECTED: tone_id= AUTH_FAIL_TONE; case ERR_NO_ROUTE_TO_DESTINATION: case ERR_DEST_OUT_OF_ORDER: case ERR_FACILITY_REJECT: case ERR_TEMPORARY_FAILURE: case ERR_SER_UNAVAILABLE: case ERR_BEARER_SER_UNIMPL: case ERR_INVALID_TI_VALUE: case ERR_USER_NOT_IN_CUG: case ERR_INCOMPATIBLE_DEST: case ERR_SEMANTIC_ERR: case ERR_INTER_WRK_UNSPECIFIED: case ERR_CSMCC_ILLEGAL_CALL_ID: case ERR_CSMCC_CALL_ALLOC_FAIL: case ERR_CSMCC_BC_FILL_FAIL: case ERR_CSMCC_ILLEGAL_BC: case ERR_CSMCC_MODIFY_ACTUAL_MODE: case ERR_CSMCC_DATA_ACT_FAIL: case ERR_MAC_FAILURE: case ERR_SYNC_FAILURE: case ERR_CONGESTION: case ERR_ILLEGAL_MS: case ERR_ILLEGAL_ME: case ERR_CM_MM_CM_ENQUEUE_FAIL: case ERR_CM_MM_NOT_UPDATED: case ERR_CM_MM_STATE_NOT_ALLOWED_CM: error_code = ERROR_FAIL; break; case ERR_CHANNEL_UN_ACCP: case ERR_NO_CIRCUIT_CHANNEL_AVAIL: case ERR_NETWORK_OUT_OF_ORDER: case ERR_QOS_UNAVAIL: case ERR_INVALID_TRANSIT_NW_SEL: case ERR_CSMCC_NO_RESPONSE_FROM_NW: case ERR_NETWORK_FAILURE: case ERR_CM_MM_RR_CONN_RELEASE: case ERR_CM_SS_SYSTEMFAILURE: error_code = ERROR_NETWORK_FAIL; break; case ERR_REQUESTED_CKT_CHANEL_NOT_AVIL: case ERR_RESOURCE_UNAVAIL_UNSPECIFIED: case ERR_CM_MM_AUTH_FAILURE: error_code = ERROR_NETWORK_NOT_AVAILABLE; break; case ERR_OPR_DTR_BARRING: case ERR_CALL_BARRED: case ERR_IC_BAR_CUG: case ERR_BEARER_CAP_NOT_AVAIL: case ERR_CM_MM_ACCESS_BARRED: error_code = INCOMING_DEFAULT_ERROR; break; case ERR_USER_BUSY: { /* voice call shows user busy, csd call shows network busy */ if (cm_p->state_info.CallStructureForCallLog.call_type == CM_VOICE_CALL) { error_code = ERROR_USER_BUSY; } else { error_code = ERROR_BUSY_NETWORK; } } break; case ERR_NO_USER_RESPONDING: error_code = ERROR_NOT_RESPONDING; break; case ERR_NO_ANSWER_ON_ALERT: error_code = ERROR_NO_ANSWER; break; case ERR_ACM_EXCEEDED: error_code = ERROR_ACM_EXCEEDED; break; case ERR_REQ_FACILITY_UNAVAIL: case ERR_IE_NOT_IMPLEMENTED: case ERR_CONDITIONAL_MM_IE_ERROR: case ERR_CM_MM_ASSIGNMENT_REJECT: error_code = ERROR_UNAVAILABLE; break; case ERR_CSMCC_ILLEGAL_DTMF_TONE: case ERR_CSMCC_CALL_ACCEPT_NOT_ALLOW: case ERR_MS_ID_NOT_DERIVED_BY_NW: case ERR_IMPLICIT_DETACH: case ERR_MSG_NOT_COMPAT_WITH_PROTO_STATE: case ERR_PROTO_ERROR_UNSPECIFIED: error_code = ERROR_UNEXPECTED_ERROR; break; case ERR_IMSI_UNKNOWN_IN_HLR: case ERR_IMSI_UNKNOWN_IN_VLR: case ERR_CM_MM_IMSI_DETACH: error_code = ERROR_IMSI_UNKNOWN; break; case ERR_IMEI_NOT_ACCEPTED: error_code = ERROR_IMEI_ERROR; break; case ERR_GPRS_NOT_ALLOWED: case ERR_GPRS_NON_GPRS_NOT_ALLOWED: error_code = ERROR_GPRS_NOT_ALLOWED; break; case ERR_CM_MT_DATA_CALL: error_code = ERROR_MT_DATA_CALL; break; case ERR_REQ_FAC_NOT_SUBS: case ERR_PLMN_NOT_ALLOWED: case ERR_LOCATION_AREA_NOT_ALLOWED: case ERR_ROAMING_AREA_NOT_ALLOWED: case ERR_GPRS_NOT_ALLOWED_IN_PLMN: case ERR_NO_SUITABLE_CELLS_IN_LA: case ERR_MSC_TEMP_NOT_REACHABLE: case ERR_CM_MM_ABORT_BY_NW: /* case ERR_CM_MM_STATE_NOT_ALLOWED_CM: */ case ERR_BEARER_CAP_NOT_AUTHORISED: error_code = ERROR_NETWORK_NOT_ALLOWED; break; case ERR_CSMCC_CMD_NOT_ALLOW: case ERR_SERV_OPTION_NOT_SUPPORTED: case ERR_REQ_SERV_OPTION_NOT_SUBSCRIBED: case ERR_SERV_OPTION_TEMP_OUT_OF_ORDER: case ERR_CALL_CANNOT_BE_IDENTIFIED: error_code = ERROR_COMMAND_NOT_SUPPORTED; break; case ERR_NO_PDP_CONTEXT_ACTIVATED: case ERR_SEMANTICALLY_INCORRECT_MSG: case ERR_INVALID_MM_MAND_INFO: error_code = ERROR_DATA_ERROR; break; case ERR_MSG_TYPE_NON_EXISTENT: case ERR_MSG_TYPE_INCOMPAT_WITH_PROTO_STATE: error_code = ERROR_MESSAGE_TYPE_ERROR; break; case ERR_ACCESS_CLASS_BARRED: case ERR_CM_MM_RANDOM_ACCES_FAILURE: error_code = ERROR_ACCESS_FAIL; break; case ERR_CM_MM_CONN_TIMEOUT: error_code = ERROR_TIMER_EXPIRED; break; case ERR_NORMAL_CALL_CLR: case ERR_NORMAL_UNSPECIFIED: error_code = STR_CALL_ENDED; img_id = IMG_CM_STATE_ENDED; break; case ERR_L4C_USSD_ABORT: error_code = ERROR_USSD_ABORTED; break; case ERR_CM_MM_RR_NO_SERVICE: case ERR_CM_MM_NO_SERVICE: case ERR_RESERVED: case ERR_NUMBER_CHANGED: case ERR_PRE_EMPTION: case ERR_NON_SEL_USER_CLEAR: case ERR_RES_STATUS_ENQ: case ERR_ACCESS_INFO_DISCARDED: case ERR_RESTR_DIGITAL_INFO: case ERR_SER_OPT_UNIMPL: case ERR_INVALID_MANDATORY_INF: case ERR_MSG_TYPE_UNIMPL: case ERR_MSG_TYPE_NOT_COMPATIBLE: case ERR_IE_NON_EX: case ERR_COND_IE_ERR: case ERR_INCOMP_MESG_WITH_STATE: case ERR_RECOVERY_ON_TIMER_EXPIRY: case ERR_PROTOCOL_ERR_UNSPECIFIED: case ERR_CSMCC_CALL_RE_EST: case ERR_RETRY_UPON_ENTRY_INTO_NEWCELL_MIN: case ERR_RETRY_UPON_ENTRY_INTO_NEWCELL_MAX: case ERR_CM_MM_CAUSE_NONE: case ERR_L4C_GEN_CAUSE: error_code = INCOMING_DEFAULT_ERROR; break; case ERR_L4C_FDN_FAIL: error_code = ERROR_FDN_FAIL; break; case NO_ACTIVE_CALL: error_code = ERROR_INVALID_COMMAND; break; case ERR_CM_UNKNOWN: error_code = INCOMING_UNKNOWN_ERROR; break; default: error_code = INCOMING_DEFAULT_ERROR; break; } /* End of Switch */ ShowCategory62Screen(error_code, img_id, NULL); TurnOnBacklight(1); SetCallEndCause(0); if (GetTotalActiveCallCount() == 0 && GetTotalHoldCallCount() == 0) { /* only play error tone when not in-call */ playRequestedTone(tone_id); SetErrorToneFlag(tone_id); } if (cm_p->redial_info.RedialTimer == TRUE) { /* cannot press key before pop up disappear, buy more time for call log writing */ DeleteSubLCDScreen(SUB_LCD_SCR1001_CM_OUTGOINGCALLSCREEN); GoBackSubLCDHistory(); if (IsScreenPresent(CM_SCR_MARKER)) { DeleteUptoCmScreen(); } DeleteScreenIfPresent(CM_SCR_MARKER); ClearInputEventHandler(MMI_DEVICE_ALL); SetPOPUpFlag(TRUE); SetKeyHandler(ResetRedialAndGoBack, KEY_END, KEY_EVENT_DOWN); cm_p->redial_info.ErrRedialScreen = TRUE; StartTimer(CM_NOTIFYDURATION_TIMER, CM_NOTIFY_TIMEOUT, ShowRedialScreen); } else { /* cannot press key before pop up disappear, buy more time for call log writing */ ClearInputEventHandler(MMI_DEVICE_ALL); SetKeyHandler((FuncPtr) GoBackfromNotifyScr, KEY_END, KEY_EVENT_DOWN); SetPOPUpFlag(TRUE); StartTimer(CM_NOTIFYDURATION_TIMER, CM_NOTIFY_TIMEOUT, GoBackfromNotifyScr); } }
/***************************************************************************** * FUNCTION * mmi_syncml_finish_sync_ind * DESCRIPTION * Protocol event handler * PARAMETERS * info [IN] message content * RETURNS * void *****************************************************************************/ void mmi_syncml_finish_sync_ind(void *info) { /*----------------------------------------------------------------*/ /* Local Variables */ /*----------------------------------------------------------------*/ mmi_syncml_finish_sync_ind_struct *local_data = (mmi_syncml_finish_sync_ind_struct*) info; U16 string_id = STR_ID_SYNC_DEFAULT_FAIL; U16 image_id = IMG_GLOBAL_UNFINISHED; U8 tone_id = ERROR_TONE; /*----------------------------------------------------------------*/ /* Code Body */ /*----------------------------------------------------------------*/ if (!mmi_syncml_is_phb_sync_now() && !mmi_syncml_is_tdl_sync_now()) { return; } g_syncml_context.contact_sync_state = 0; g_syncml_context.calendar_sync_state = 0; g_syncml_context.abort_state = 0; g_syncml_context.sync_progress = 0xFF; g_syncml_context.contact_send_noc = 0; g_syncml_context.contact_send_current = 0; g_syncml_context.contact_recv_noc = 0; g_syncml_context.contact_recv_current = 0; g_syncml_context.calendar_send_noc = 0; g_syncml_context.calendar_send_current = 0; g_syncml_context.calendar_recv_noc = 0; g_syncml_context.calendar_recv_current = 0; mmi_syncml_free_vobj_buffer(); switch (local_data->result) { /* process local err */ case SYNCML_LOCAL_DB_FULL: string_id = STR_ID_SYNC_LOCALDB_FULL; break; /* process server err */ case SYNCML_OK: /* 200 */ string_id = STR_ID_SYNC_DONE; image_id = IMG_GLOBAL_ACTIVATED; tone_id = SUCCESS_TONE; break; case SYNCML_INVALID_CREDENTIAL: /* 401 */ string_id = STR_ID_SYNC_INVALID_CREDENTIAL; break; case SYNCML_MISSING_CREDENTIAL: /* 407 */ string_id = STR_ID_SYNC_MISSING_CREDENTIAL; break; case SYNCML_PAYMENT_REQUIRED: /* 402 */ string_id = STR_ID_SYNC_PAYMENT_REQUIRED; image_id = IMG_GLOBAL_WARNING; tone_id = WARNING_TONE; break; case SYNCML_CODE_FORBIDDEN: /* 403 */ string_id = STR_ID_SYNC_CODE_FORBIDDEN; break; case SYNCML_INCOMPLETE_CMD: /* 412 */ string_id = STR_ID_SYNC_INCOMPLETE_CMD; break; case SYNCML_DEVICE_FULL: /* 420 */ string_id = STR_ID_SYNC_SVR_DEVICE_FULL; break; case SYNCML_SERVICE_UNAVAILABLE: /* 503 */ string_id = STR_ID_SYNC_SERVICE_UNAVAILABLE; break; case SYNCML_DATASTORE_FAIL: /* 510 */ string_id = STR_ID_SYNC_DATASTORE_FAIL; break; case SYNCML_SVR_FAIL: /* 511 */ string_id = STR_ID_SYNC_SVR_FAIL; break; case SYNCML_ERR_OCCUR: /* 512 */ string_id = STR_ID_SYNC_ERR_OCCUR; break; case SYNCML_PROTOCOL_UNSUPPORT: /* 513 */ string_id = STR_ID_SYNC_PROTOCOL_UNSUPPORT; break; case SYNCML_FAIL: /* 500 */ string_id = STR_ID_SYNC_FAIL; break; case SYNCML_ABORT_SYNC: default: break; } DisplayPopup( (U8*) GetString(string_id), image_id, 1, UI_POPUP_NOTIFYDURATION_TIME, tone_id); SetDelScrnIDCallbackHandler(SCR_ID_SYNC_NOW, NULL); DeleteScreenIfPresent(SCR_ID_SYNC_ABORT); DeleteScreenIfPresent(SCR_ID_SYNC_BACKGROUND_QUERY); if (local_data->result == SYNCML_OK) { /* update the last anchor because of sync completion */ if (g_syncml_context.applications_to_sync & SYNCML_DB_PHONEBOOK) { g_syncml_context.last_phb_anchor[g_syncml_context.active_profile - 1] = g_syncml_context.next_phb_anchor; memcpy(g_syncml_context.svr_contact_ok_cnt, local_data->svr_contact_ok_cnt, sizeof(g_syncml_context.svr_contact_ok_cnt)); g_syncml_context.svr_contact_ng_cnt = local_data->svr_contact_ng_cnt; } if (g_syncml_context.applications_to_sync & SYNCML_DB_TODOLIST) { g_syncml_context.last_tdl_anchor[g_syncml_context.active_profile - 1] = g_syncml_context.next_tdl_anchor; memcpy(g_syncml_context.svr_calendar_ok_cnt, local_data->svr_calendar_ok_cnt, sizeof(g_syncml_context.svr_calendar_ok_cnt)); g_syncml_context.svr_calendar_ng_cnt = local_data->svr_calendar_ng_cnt; } mmi_syncml_update_settings_to_nvram(); /* sync report */ if (g_syncml_context.sync_report_status) { if (IsScreenPresent(SCR_ID_SYNC_NOW)) { HistoryReplace(SCR_ID_SYNC_NOW, SCR_ID_SYNC_REPORT, mmi_syncml_entry_sync_report); } else if (isInCall()) { mmi_frm_add_history_before_cm_marker(SCR_ID_SYNC_REPORT, mmi_syncml_entry_sync_report); } else { GenericExitScreen(SCR_ID_SYNC_REPORT, mmi_syncml_entry_sync_report); } } else { DeleteScreenIfPresent(SCR_ID_SYNC_NOW); } } else { DeleteScreenIfPresent(SCR_ID_SYNC_NOW); if (g_syncml_context.applications_to_sync & SYNCML_DB_PHONEBOOK) { g_syncml_context.next_phb_anchor = g_syncml_context.last_phb_anchor[g_syncml_context.active_profile - 1]; } if (g_syncml_context.applications_to_sync & SYNCML_DB_TODOLIST) { g_syncml_context.next_tdl_anchor = g_syncml_context.last_tdl_anchor[g_syncml_context.active_profile - 1]; } } if (g_syncml_context.applications_to_sync & SYNCML_DB_TODOLIST) { AlmEnableExpiryHandler(); /* enable alarm */ } #ifdef __MMI_SYNCML_SERVER_ALERT_SYNC_SUPPORT__ mmi_syncml_sas_finish(); #endif }
/***************************************************************************** * FUNCTION * mmi_ucm_app_make_call * DESCRIPTION * Sample code * PARAMETERS * call_type [IN] Call type * num_uri [IN] Number or URI in unicode string * RETURNS * void *****************************************************************************/ void mmi_ucm_app_make_call(mmi_ucm_call_type_enum call_type, U8 *num_uri) { /*----------------------------------------------------------------*/ /* Local Variables */ /*----------------------------------------------------------------*/ S32 unicodeLen = 0; #ifdef __MMI_BG_SOUND_EFFECT__ U8 num_type = 0; #endif /* __MMI_BG_SOUND_EFFECT__ */ /*----------------------------------------------------------------*/ /* Code Body */ /*----------------------------------------------------------------*/ unicodeLen = (MMI_UCM_MAX_NUM_URI_LEN > mmi_ucs2strlen((S8*)num_uri)) ? (mmi_ucs2strlen((S8*)num_uri)) : (MMI_UCM_MAX_NUM_URI_LEN - 1); g_ucm_p->mo_info.module_id = MMI_UCM_FROM_IDLE; g_ucm_p->mo_info.dial_type = call_type; memset(g_ucm_p->mo_info.dial_num.num_uri, 0, MMI_UCM_MAX_NUM_URI_LEN); mmi_ucs2_n_to_asc((S8*)g_ucm_p->mo_info.dial_num.num_uri, (S8*)num_uri, unicodeLen * ENCODING_LENGTH); #ifdef __MMI_BG_SOUND_EFFECT__ num_type = applib_ss_string_parsing((U8*)g_ucm_p->mo_info.dial_num.num_uri, (U8)unicodeLen); if (mmi_bgsnd_common_get_mo_bgs_permit_state() && ((call_type & MMI_UCM_VOICE_CALL_TYPE_ALL) || (call_type == MMI_UCM_VOIP_CALL_TYPE)) && mmi_ucm_app_total_call(MMI_UCM_CALL_TYPE_NO_CSD) == 0 && mmi_ucm_emergency_call_present() == FALSE && num_type == CC_OPERATION && #ifdef __CTM_SUPPORT__ (mmi_gsm_ctm_is_on() == FALSE) && #endif /* __CTM_SUPPORT__ */ mmi_ucm_is_sos_number(g_ucm_p->mo_info.dial_type, g_ucm_p->mo_info.dial_num.num_uri) == FALSE && mmi_bootup_get_active_flight_mode() == FLIGHTMODE_OFF) { if (g_ucm_p->call_misc.is_bgs_selected == FALSE) { /* select background sound effect */ mmi_ucm_entry_bgs_effect_select(); return; } else { /* reset the flag and continue outgoing call procedure */ g_ucm_p->call_misc.is_bgs_selected = FALSE; /* delete idle dial pad related screens */ mmi_idle_delete_dialpad_from_history(); } } #endif /* __MMI_BG_SOUND_EFFECT__ */ mmi_ucm_outgoing_call_sendkey(); /* abort auto redial if necessary */ if (GetExitScrnID() == SCR_ID_UCM_AUTO_REDIAL || IsScreenPresent(SCR_ID_UCM_AUTO_REDIAL)) { StopTimer(UCM_AUTO_REDIAL_TIMER); ClearDelScrnIDCallbackHandler(SCR_ID_UCM_AUTO_REDIAL, NULL); if (GetExitScrnID() == SCR_ID_UCM_AUTO_REDIAL) { EntryNewScreen(GLOBAL_SCR_DUMMY, NULL, NULL, NULL); } DeleteScreenIfPresent(SCR_ID_UCM_AUTO_REDIAL); if (g_ucm_p->auto_redial.abort_hdlr) { g_ucm_p->auto_redial.abort_hdlr(); } memset(&g_ucm_p->auto_redial, 0, sizeof(mmi_ucm_auto_redial_struct)); } }
/***************************************************************************** * FUNCTION * mmi_ucm_app_make_call_with_source * DESCRIPTION * Sample code * PARAMETERS * call_type [IN] Call type * num_uri [IN] Number or URI in unicode string * RETURNS * void *****************************************************************************/ MMI_BOOL mmi_ucm_app_make_call_with_source(mmi_ucm_module_origin_enum module_id, mmi_ucm_call_type_enum call_type, U8 *num_uri) { /*----------------------------------------------------------------*/ /* Local Variables */ /*----------------------------------------------------------------*/ S32 unicodeLen = 0; U8* num_uri_ascii = NULL; MMI_BOOL result = TRUE; /*----------------------------------------------------------------*/ /* Code Body */ /*----------------------------------------------------------------*/ if ((mmi_bootup_get_active_flight_mode())) { result = FALSE; return result; } #ifdef __MMI_WLAN_FEATURES__ else if ((mmi_netset_get_active_preferred_mode() == P_WLAN_ONLY) && (call_type != MMI_UCM_VOIP_CALL_TYPE)) { result = FALSE; return result; } #endif /* __MMI_WLAN_FEATURES__ */ else if (mmi_ucm_is_pending_action() == MMI_TRUE) { result = FALSE; return result; } unicodeLen = (MMI_UCM_MAX_NUM_URI_LEN > mmi_ucs2strlen((S8*)num_uri)) ? (mmi_ucs2strlen((S8*)num_uri)) : (MMI_UCM_MAX_NUM_URI_LEN - 1); num_uri_ascii = OslMalloc((unicodeLen + 1) * ENCODING_LENGTH); memset(num_uri_ascii, 0, (unicodeLen + 1) * ENCODING_LENGTH); mmi_ucs2_n_to_asc((S8*)num_uri_ascii, (S8*)num_uri, unicodeLen * ENCODING_LENGTH); /* do not check sos number for SAT call */ if ((module_id != MMI_UCM_FROM_SAT) && (mmi_ucm_is_sos_number(call_type, num_uri_ascii) == TRUE)) { if (mmi_ucm_is_sos_in_call_list() == FALSE) { #if defined(__MMI_DUAL_SIM_MASTER__) mmi_ucm_set_call_channel(call_type); #endif /* __MMI_DUAL_SIM_MASTER__ */ g_ucm_p->mo_info.module_id = module_id; g_ucm_p->mo_info.dial_type = call_type; memset(g_ucm_p->mo_info.dial_num.num_uri, 0, MMI_UCM_MAX_NUM_URI_LEN); mmi_ucs2_n_to_asc((S8*)g_ucm_p->mo_info.dial_num.num_uri, (S8*)num_uri, unicodeLen * ENCODING_LENGTH); /* If CSD number is ECC, the CSD call fails while ECC voice should be dialed. */ if (call_type & MMI_UCM_CSD_CALL_TYPE) { g_ucm_p->mo_info.dial_type = MMI_UCM_VOICE_CALL_TYPE; if (g_ucm_p->mo_info.module_id == MMI_UCM_FROM_ABM) { g_ucm_p->mo_info.module_id = MMI_UCM_FROM_IDLE; } result = FALSE; } else if (call_type & MMI_UCM_CSD_CALL_TYPE_SIM2) { g_ucm_p->mo_info.dial_type = MMI_UCM_VOICE_CALL_TYPE_SIM2; if (g_ucm_p->mo_info.module_id == MMI_UCM_FROM_ABM) { g_ucm_p->mo_info.module_id = MMI_UCM_FROM_IDLE; } result = FALSE; } if (mmi_ucm_app_total_call(MMI_UCM_CALL_TYPE_ALL) != 0) { PRINT_INFORMATION("\n[mmi_ucm_app_make_call_with_source] End All Calls before Dial SOS\n"); g_ucm_p->mo_info.is_wait_dial = TRUE; mmi_ucm_end_all_action(); } else { PRINT_INFORMATION("\n[mmi_ucm_app_make_call_with_source] Directly Dial SOS\n"); g_ucm_p->mo_info.is_wait_dial = TRUE; mmi_ucm_dial_action(); } } else /* not allow to dial this sos number */ { result = FALSE; } } else /* not a sos number */ { if (!strlen((S8*)num_uri_ascii)) /* empty number */ { result = FALSE; } else if ((!mmi_bootup_is_sim_valid()) && (call_type != MMI_UCM_VOIP_CALL_TYPE) && !(call_type & MMI_UCM_SIM2_CALL_TYPE_ALL)) { result = FALSE; } #if defined(__MMI_DUAL_SIM_MASTER__) else if ((!mmi_bootup_is_sim2_valid()) && (call_type & MMI_UCM_SIM2_CALL_TYPE_ALL)) { result = FALSE; } #endif /* __MMI_DUAL_SIM_MASTER__ */ /* Data/CSD call priority is lower than voice call priority. */ else if (mmi_ucm_app_total_call(MMI_UCM_CALL_TYPE_ALL) && (call_type & (MMI_UCM_CALL_TYPE_DATA_CSD_ALL))) { result = FALSE; } else if ((mmi_ucm_is_busy() == FALSE) && (mmi_ucm_dial_option() == TRUE)) { #if defined(__MMI_DUAL_SIM_MASTER__) mmi_ucm_set_call_channel(call_type); #endif /* __MMI_DUAL_SIM_MASTER__ */ g_ucm_p->mo_info.module_id = module_id; g_ucm_p->mo_info.dial_type = call_type; memset(g_ucm_p->mo_info.dial_num.num_uri, 0, MMI_UCM_MAX_NUM_URI_LEN); mmi_ucs2_n_to_asc((S8*)g_ucm_p->mo_info.dial_num.num_uri, (S8*)num_uri, unicodeLen * ENCODING_LENGTH); if ((g_ucm_p->mo_info.dial_type & MMI_UCM_VOICE_CALL_TYPE_ALL) && (SS_OPERATION == applib_ss_string_parsing((U8*)g_ucm_p->mo_info.dial_num.num_uri, (U8)strlen((S8*)g_ucm_p->mo_info.dial_num.num_uri)))) { /* dial directly if SS operation or SIM operation */ mmi_ucm_dial_action(); } else if (mmi_ucm_app_total_call(MMI_UCM_CALL_TYPE_DATA_CSD_ALL) && (g_ucm_p->mo_info.dial_type & MMI_UCM_CALL_TYPE_NO_DATA_CSD)) { /* normal call and data call cannot co-exist */ PRINT_INFORMATION("\n[mmi_ucm_app_make_call_with_source] End All Calls before Dial %d\n", g_ucm_p->mo_info.dial_type); g_ucm_p->mo_info.is_wait_dial = TRUE; mmi_ucm_end_all_action(); } else if (mmi_ucm_get_active_group(MMI_UCM_CALL_TYPE_ALL, FALSE, g_ucm_p->call_misc.index_list) == MMI_UCM_MAX_ACTIVE_TAB) { mmi_ucm_hold_and_dial_action(); } else { mmi_ucm_dial_action(); } result = TRUE; } else { result = FALSE; } } if (result == TRUE) { /* abort auto redial if necessary */ if (GetExitScrnID() == SCR_ID_UCM_AUTO_REDIAL || IsScreenPresent(SCR_ID_UCM_AUTO_REDIAL)) { StopTimer(UCM_AUTO_REDIAL_TIMER); ClearDelScrnIDCallbackHandler(SCR_ID_UCM_AUTO_REDIAL, NULL); if (GetExitScrnID() == SCR_ID_UCM_AUTO_REDIAL) { EntryNewScreen(GLOBAL_SCR_DUMMY, NULL, NULL, NULL); } DeleteScreenIfPresent(SCR_ID_UCM_AUTO_REDIAL); if (g_ucm_p->auto_redial.abort_hdlr) { g_ucm_p->auto_redial.abort_hdlr(); } memset(&g_ucm_p->auto_redial, 0, sizeof(mmi_ucm_auto_redial_struct)); } } OslMfree(num_uri_ascii); return result; }
/***************************************************************************** * FUNCTION * mmi_netset_entry_user_ctrl_plmn_add_data * DESCRIPTION * * PARAMETERS * void * RETURNS * void *****************************************************************************/ void mmi_netset_entry_user_ctrl_plmn_add_data(void) { /*----------------------------------------------------------------*/ /* Local Variables */ /*----------------------------------------------------------------*/ U8 *guiBuffer; /* Buffer holding history data */ U8 *inputBuffer; /* added for inline edit history */ U16 inputBufferSize; /* added for inline edit history */ U16 IconList[] = {IMG_GLOBAL_L1, 0, IMG_GLOBAL_L2, 0}; /*----------------------------------------------------------------*/ /* Code Body */ /*----------------------------------------------------------------*/ EntryNewScreen(SCR_ID_NETSET_USER_CTRL_PLMN_ADD, mmi_netset_exit_user_ctrl_plmn_add_data, NULL, NULL); guiBuffer = GetCurrGuiBuffer(SCR_ID_NETSET_USER_CTRL_PLMN_ADD); inputBuffer = GetCurrNInputBuffer(SCR_ID_NETSET_USER_CTRL_PLMN_ADD, &inputBufferSize); /* added for inline edit history */ InitializeCategory57Screen(); mmi_netset_set_user_ctrl_plmn_add_inline_editor(); if (inputBuffer != NULL) { SetCategory57Data(wgui_inline_items, 4, inputBuffer); } ClearHighlightHandler(); if (IsScreenPresent(SCR_ID_NETSET_USER_CTRL_PLMN_LIST)) { ShowCategory57Screen( STR_GLOBAL_ADD, MAIN_MENU_TITLE_SETTINGS_ICON, STR_GLOBAL_OK, IMG_GLOBAL_OK, STR_GLOBAL_BACK, IMG_GLOBAL_BACK, 4, IconList, wgui_inline_items, 1, guiBuffer); } else { ShowCategory57Screen( STR_GLOBAL_ADD, MAIN_MENU_TITLE_SETTINGS_ICON, STR_GLOBAL_OK, IMG_GLOBAL_OK, STR_GLOBAL_BACK, IMG_GLOBAL_BACK, 4, IconList, wgui_inline_items, 3, guiBuffer); } SetCategory57RightSoftkeyFunctions(mmi_netset_save_user_ctrl_plmn_confirm, GoBackHistory); DeleteScreenIfPresent(SCR_ID_NETSET_UNKNOWN_PLMN_MSG); }
/***************************************************************************** * FUNCTION * mmi_netset_entry_user_ctrl_plmn_add_one * DESCRIPTION * * PARAMETERS * void * RETURNS * void *****************************************************************************/ void mmi_netset_entry_user_ctrl_plmn_add_one(void) { /*----------------------------------------------------------------*/ /* Local Variables */ /*----------------------------------------------------------------*/ U8 plmn_ansii[MAX_PLMN_LEN + 1], opname_asnii[MAX_LENGTH_DISPLAY_NAME]; U32 plmn_usr; /*----------------------------------------------------------------*/ /* Code Body */ /*----------------------------------------------------------------*/ if (mmi_ucs2strlen((S8*) gUserCtrlPlmnList.PlmnAddNumber) < MAX_PLMN_LEN - 1 || mmi_ucs2cmp((S8*) gUserCtrlPlmnList.PlmnAddString, (S8*) L"") == 0) { DisplayPopup( (PU8) GetString(STR_GLOBAL_UNFINISHED), IMG_GLOBAL_UNFINISHED, 1, UI_POPUP_NOTIFYDURATION_TIME, ERROR_TONE); DeleteScreenIfPresent(SCR_ID_NETSET_USER_CTRL_PLMN_OPTIONS); DeleteScreenIfPresent(SCR_ID_NETSET_USER_CTRL_PLMN_ADD); return; } mmi_ucs2_to_asc((S8*) plmn_ansii, (S8*) gUserCtrlPlmnList.PlmnAddNumber); mmi_ucs2_to_asc((S8*) opname_asnii, (S8*) gUserCtrlPlmnList.PlmnAddString); CloseCategory57Screen(); if (mmi_netset_retrieve_opname_from_plmn(plmn_ansii, NULL) >= 0) { /* duplicated */ DisplayPopup( (PU8) GetString(STR_ID_NETSET_DUPLICATED_PLMN), IMG_GLOBAL_UNFINISHED, 1, UI_POPUP_NOTIFYDURATION_TIME, ERROR_TONE); DeleteScreenIfPresent(SCR_ID_NETSET_USER_CTRL_PLMN_OPTIONS); DeleteScreenIfPresent(SCR_ID_NETSET_USER_CTRL_PLMN_ADD); return; } DisplayPopup( (U8*) GetString(STR_GLOBAL_DONE), IMG_GLOBAL_ACTIVATED, 1, UI_POPUP_NOTIFYDURATION_TIME, (U8) SUCCESS_TONE); DeleteScreenIfPresent(SCR_ID_NETSET_USER_CTRL_PLMN_OPTIONS); DeleteScreenIfPresent(SCR_ID_NETSET_USER_CTRL_PLMN_ADD); /* write data to nvram */ plmn_usr = mmi_netset_plmn_str_2_bcd_short(plmn_ansii); memset(gUserCtrlPlmnList.PrefPLMN[gUserCtrlPlmnList.PlmnListSize], 0, 24); memcpy(gUserCtrlPlmnList.PrefPLMN[gUserCtrlPlmnList.PlmnListSize], (char*)(&plmn_usr), sizeof(U32)); memcpy( gUserCtrlPlmnList.PrefPLMN[gUserCtrlPlmnList.PlmnListSize] + sizeof(U32), opname_asnii, strlen((S8*) opname_asnii)); gUserCtrlPlmnList.PlmnListSize++; mmi_netset_access_user_ctrl_plmn_nvram(1); RefreshNwProviderName(gPLMN); }
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; }