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

📄 jmmsmainmmsui.c

📁 MTK手机平台的MMI部分的源代码
💻 C
📖 第 1 页 / 共 5 页
字号:
    GoBackToHistory(SCR_ID_JMMS_MAIN_MENU);
}
#endif /* __MMI_UNIFIED_MESSAGE__ */ 


/*****************************************************************************
 * FUNCTION
 *  mmi_jmms_deinit
 * DESCRIPTION
 *  
 * PARAMETERS
 *  void
 * RETURNS
 *  void
 *****************************************************************************/
void mmi_jmms_deinit(void)
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    PRINT_INFORMATION_2((MMI_TRACE_INFO, "%s", "mmi_jmms_deinit Enter"));
    if (g_jmms_context != NULL)
    {
        if(!jmms_is_ready()) 
        {
            return;
        }
        mmi_jmms_parse_continue_stop_timer();
        mmi_jmms_deinit_view();
        mmi_jmms_end_comm();
        mmi_jmms_deinit_mms_context(g_jmms_context);

        StopTimer(JMMS_ASYNC_SEND_TIMER);
        StopTimer(JMMS_ASYNC_SAVE_TIMER);
        mmi_jmms_clean_send_callback_list();
        mmi_jmms_clean_save_callback_list();

        if (g_jmms_context->orig_file_name_replace_mms)
        {
            jdd_MemFree(g_jmms_context->orig_file_name_replace_mms);
            g_jmms_context->orig_file_name_replace_mms = NULL;
        }

        if (g_jmms_context->store_context != NULL && g_jmms_context->store_context->messages_list != NULL)
        {
            mmi_jmms_free_msgs_list(&(g_jmms_context->store_context->messages_list));
        }

        mmi_jmms_free_use_details_adrresses_list();

        /* free msg headers- properties */
        mmi_jmms_free_recieved_msg_header();
        mmi_jmms_free_notification_header();
        mmi_jmms_free_delivery_report_header();
        mmi_jmms_free_report_report_header();
        mmi_jmms_free_new_mms_sent_header();

        /* reset the open msg status- for At delete */
        g_jmms_context->msg_open_status[0] = 0;
        g_jmms_context->msg_open_status[1] = 0;
        g_jmms_context->is_add_media_warning = 0;
		g_jmms_context->progress_screen_in_history=0;

    }
    PRINT_INFORMATION_2((MMI_TRACE_INFO, "%s", "mmi_jmms_deinit Exit"));
}


/*****************************************************************************
 * FUNCTION
 *  mmi_jmms_send_get_msg_list_event
 * DESCRIPTION
 *  
 * PARAMETERS
 *  foldername          [?]         [?]         [?]
 *  total_num_msgs      [IN]        
 * RETURNS
 *  
 *****************************************************************************/
JC_RETCODE mmi_jmms_send_get_msg_list_event(S8 *foldername, U8 total_num_msgs)
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/

    JC_RETCODE eRet = JC_OK;

    JC_EVENT_DATA eventData = {0, };
    mmi_jmms_get_msg_list_queue_event_struct folder_info = {0, };

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    eventData.destTaskInfo.iAppID = E_TASK_MMS_UI;
    eventData.destTaskInfo.iTaskID = E_TASK_MMS_UI;

    eventData.srcTaskInfo.iAppID = E_TASK_MMS_UI;
    eventData.srcTaskInfo.iTaskID = E_TASK_MMS_UI;

    eventData.uiEventInfoSize = sizeof(mmi_jmms_get_msg_list_queue_event_struct);

    eventData.iEventType = E_MMS_GET_MSG_LIST_EVENT;

    if (strcmp((S8*) "Inbox", (S8*) foldername) == 0)
    {
        folder_info.folder_name = E_JMMS_INBOX;
    }
    else if (strcmp((S8*) "Outbox", (S8*) foldername) == 0)
    {
        folder_info.folder_name = E_JMMS_OUTBOX;
    }
    else if (strcmp((S8*) "Sent", (S8*) foldername) == 0)
    {
        folder_info.folder_name = E_JMMS_SENT;
    }
    else if (strcmp((S8*) "Drafts", (S8*) foldername) == 0)
    {
        folder_info.folder_name = E_JMMS_DRAFTS;
    }

    folder_info.total_num_msgs = total_num_msgs;

    eRet = jdd_QueueAlloc(&eventData);
    if (JC_OK != eRet)
    {
        return eRet;
    }

    jc_memcpy(eventData.pEventInfo, &folder_info, sizeof(mmi_jmms_get_msg_list_queue_event_struct));

    eRet = jdd_QueueSend(&eventData);
    if (JC_OK != eRet)
    {
        return eRet;
    }

    return eRet;

}


/*****************************************************************************
 * FUNCTION
 *  mmi_jmms_recieve_get_msg_list_event
 * DESCRIPTION
 *  
 * PARAMETERS
 *  pEventData      [?]     [?]     [?]
 * RETURNS
 *  void
 *****************************************************************************/
void mmi_jmms_recieve_get_msg_list_event(mmi_jmms_get_msg_list_queue_event_struct *pEventData)
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/
    mmi_jmms_get_msg_list_queue_event_struct *folder_info;
    JC_RETCODE eRet = JC_OK;
    U16 currScrenID = 0;

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    folder_info = (mmi_jmms_get_msg_list_queue_event_struct*) (pEventData);

    if (folder_info->folder_name == E_JMMS_INBOX)
    {
        eRet = mmi_jmms_get_folder_msg_list(
                &(g_jmms_context->store_context->messages_list),
                MMI_JMMS_INBOX,
                folder_info->total_num_msgs);
    }
    else if (folder_info->folder_name == E_JMMS_OUTBOX)
    {
        eRet = mmi_jmms_get_folder_msg_list(
                &(g_jmms_context->store_context->messages_list),
                MMI_JMMS_OUTBOX,
                folder_info->total_num_msgs);
    }
    else if (folder_info->folder_name == E_JMMS_DRAFTS)
    {
        eRet = mmi_jmms_get_folder_msg_list(
                &(g_jmms_context->store_context->messages_list),
                MMI_JMMS_DRAFTS,
                folder_info->total_num_msgs);
    }
    else if (folder_info->folder_name == E_JMMS_SENT)
    {
        eRet = mmi_jmms_get_folder_msg_list(
                &(g_jmms_context->store_context->messages_list),
                MMI_JMMS_SENT,
                folder_info->total_num_msgs);
    }

    if (eRet != JC_OK)
    {
        currScrenID = GetActiveScreenId();

        mmi_jmms_free_msgs_list(&(g_jmms_context->store_context->messages_list));
    #ifndef __MMI_UNIFIED_MESSAGE__
        if (currScrenID == SCR_ID_JMMS_GET_MSGS_PROGRESS_SCREEN)
        {
            DisplayPopup(
                (U8*) GetString(STR_ID_JMMS_ERROR_GET_MSG_LIST),
                IMG_GLOBAL_ERROR,
                1,
                JMMS_POPUP_TIME,
                (U8) ERROR_TONE);
            DeleteUptoScrID(SCR_ID_JMMS_MAIN_MENU);
        }
        else
        {

            /* to avoid the show of pop up over Phone call or some other screen */
            HistoryReplace(
                SCR_ID_JMMS_GET_MSGS_PROGRESS_SCREEN,
                SCR_ID_JMMS_GET_MSGS_ERROR_SCREEN,
                mmi_jmms_entry_msgs_get_error_screen);
        }
    #endif /* __MMI_UNIFIED_MESSAGE__ */ 
    }

    return;
}

#ifndef __MMI_UNIFIED_MESSAGE__


/*****************************************************************************
 * FUNCTION
 *  mmi_jmms_entry_get_msgs_progress_screen
 * DESCRIPTION
 *  
 * PARAMETERS
 *  void
 * RETURNS
 *  void
 *****************************************************************************/
void mmi_jmms_entry_get_msgs_progress_screen(void)
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    EntryNewScreen(SCR_ID_JMMS_GET_MSGS_PROGRESS_SCREEN, NULL, mmi_jmms_entry_get_msgs_progress_screen, NULL);

    // TODO::put an animated image
    ShowCategory8Screen(
        STR_MMS_MENUENTRY,
        GetRootTitleIcon(MAIN_MENU_MESSAGES_MENUID),
        0,
        0,
        0,
        0,
        STR_ID_JMMS_LOADING_MMS,
        IMG_GLOBAL_PROGRESS,
        NULL);

    ClearAllKeyHandler();
    ClearKeyHandler(KEY_END, KEY_EVENT_UP);
    ClearKeyHandler(KEY_END, KEY_EVENT_DOWN);
    ClearKeyHandler(KEY_END, KEY_LONG_PRESS);
    ClearKeyHandler(KEY_END, KEY_REPEAT);

}


/*****************************************************************************
 * FUNCTION
 *  mmi_jmms_entry_msgs_get_error_screen
 * DESCRIPTION
 *  
 * PARAMETERS
 *  void
 * RETURNS
 *  void
 *****************************************************************************/
void mmi_jmms_entry_msgs_get_error_screen(void)
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    EntryNewScreen(SCR_ID_JMMS_GET_MSGS_ERROR_SCREEN, NULL, mmi_jmms_entry_msgs_get_error_screen, NULL);

    ShowCategory2Screen(
        STR_MMS_MENUENTRY,
        GetRootTitleIcon(MAIN_MENU_MESSAGES_MENUID),
        0,
        0,
        STR_GLOBAL_BACK,
        IMG_GLOBAL_BACK,
        STR_ID_JMMS_ERROR_GET_MSG_LIST,
        NULL);

    SetRightSoftkeyFunction(mmi_jmms_back_from_msgs_list_screen, KEY_EVENT_UP);

}
#endif /* __MMI_UNIFIED_MESSAGE__ */ 
//PMT VIKAS START 20060325
//Function store and return the size of MMS base on type pass


/*****************************************************************************
 * FUNCTION
 *  mmi_jmms_save_size_of_mms
 * DESCRIPTION
 *  
 * PARAMETERS
 *  temp_size       [?]         [?]         [?]
 *  type            [IN]        
 * RETURNS
 *  void
 *****************************************************************************/
static void mmi_jmms_save_size_of_mms(S32 *temp_size, S32 type)
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/
    static S32 message_size = 0;

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    if (type == MMS_SIZE_STORE)
    {
        message_size = *temp_size;
    }
    else
    {
        *temp_size = message_size;
    }
}

/* PMT VIKAS END 20060325 */


/*****************************************************************************
 * FUNCTION
 *  mmi_jmms_show_mms_properties
 * DESCRIPTION
 *  
 * PARAMETERS
 *  msg_type        [IN]        
 *  folder_name     [?]         [?]         [?]
 * RETURNS
 *  void
 *****************************************************************************/
void mmi_jmms_show_mms_properties(U16 msg_type, S8 *folder_name)
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/
    JC_RETCODE eRet = JC_OK;
    U8 number = 0;
    RETRIEVE_FILTERS StoreRetFilter = {0, };
    MESSAGE_LIST *pMessageList = NULL;
    MESSAGE_LIST *pTempMessageList = NULL;
    U32 extra_byte_1 = 0;

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    /* mmi_mms_get_number_of_messages(folder_name, &number); */
	number = g_jmms_context->store_context->nMsgs_in_Current_folder;

    if(strcmp((S8*)folder_name, (S8*)MMI_JMMS_TEMPLATES) =

⌨️ 快捷键说明

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