jmmsoutboxui.c

来自「MTK手机平台的MMI部分的源代码」· C语言 代码 · 共 1,899 行 · 第 1/5 页

C
1,899
字号
    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    index =
        (JC_INT32) (g_jmms_context->store_context->nMsgs_in_Current_folder - g_jmms_context->nCurr_scr_hilited_index);

    eRet = mmi_jmms_store_move_message("Outbox", "Drafts", &index);
    if (eRet == JC_OK)
    {

        HistoryReplace(SCR_ID_JMMS_OUTBOX, SCR_ID_JMMS_OUTBOX, mmi_jmms_entry_outbox);

        if (g_jmms_context->store_context->nMsgs_in_Current_folder <= 1)        /* /now folder will empty */
        {
            GoBackToHistory(SCR_ID_JMMS_MAIN_MENU);
        }
        else
        {
            GoBackToHistory(SCR_ID_JMMS_OUTBOX);
        }

    }
    else
    {
        DisplayPopup(
            (U8*) GetString(STR_ID_JMMS_ERROR_MMS_MOVE),
            IMG_GLOBAL_ERROR,
            1,
            JMMS_POPUP_TIME,
            (U8) ERROR_TONE);
        DeleteUptoScrID(SCR_ID_JMMS_OUTBOX);

    }

}

#endif /* __MMI_UNIFIED_MESSAGE__ */ 


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

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    DisplayConfirm(
        STR_GLOBAL_YES,
        IMG_GLOBAL_YES,
        STR_GLOBAL_NO,
        IMG_GLOBAL_NO,
        get_string(STR_GLOBAL_DELETE),
        IMG_GLOBAL_QUESTION,
        WARNING_TONE);

    SetLeftSoftkeyFunction(mmi_jmms_outbox_delete, KEY_EVENT_UP);
    SetRightSoftkeyFunction(GoBackHistory, KEY_EVENT_UP);
}

/*****************************************************************************
 * FUNCTION
 *  mmi_jmms_post_outbox_delete_message
 * DESCRIPTION
 *  
 * PARAMETERS
 *  void
 * RETURNS
 *  void
 *****************************************************************************/
void mmi_jmms_post_outbox_delete_message(void)
{
    U8 number = 0;

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/

    number = g_jmms_context->store_context->nMsgs_in_Current_folder;


#ifdef __MMI_UNIFIED_MESSAGE__
         DeleteUptoScrID(SCR_ID_UM_MAIN);
        mmi_um_jmms_pre_entry_outbox();
#else /* __MMI_UNIFIED_MESSAGE__ */ 
        HistoryReplace(SCR_ID_JMMS_OUTBOX, SCR_ID_JMMS_OUTBOX, mmi_jmms_entry_outbox);

        if (number <= 1)    /* /now folder will empty */
        {
            GoBackToHistory(SCR_ID_JMMS_MAIN_MENU);
        }

        else
        {
            GoBackToHistory(SCR_ID_JMMS_OUTBOX);
        }
#endif /* __MMI_UNIFIED_MESSAGE__ */ 

}
/*****************************************************************************
 * FUNCTION
 *  mmi_jmms_outbox_delete
 * DESCRIPTION
 *  
 * PARAMETERS
 *  void
 * RETURNS
 *  void
 *****************************************************************************/
void mmi_jmms_outbox_delete(void)
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/
    U8 number = 0;
    JC_RETCODE eRet = JC_OK;

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    number = g_jmms_context->store_context->nMsgs_in_Current_folder;

    mmi_jmms_delete_progresing_screen(STR_ID_JMMS_OUTBOX, IMG_GLOBAL_DELETED);

    eRet = mmi_jmms_delete_message(MMI_JMMS_OUTBOX, (number - g_jmms_context->nCurr_scr_hilited_index));

    if (eRet == JC_OK)
    {
       DisplayPopupCallBack((U8*) GetString(STR_GLOBAL_DONE), IMG_GLOBAL_ACTIVATED, 1, JMMS_POPUP_TIME, SUCCESS_TONE, mmi_jmms_post_outbox_delete_message);
    }
    else
    {
        DisplayPopup(
            (U8*) GetString(STR_ID_JMMS_ERROR_MMS_DELETE),
            IMG_GLOBAL_ERROR,
            1,
            JMMS_POPUP_TIME,
            (U8) ERROR_TONE);
    #ifdef __MMI_UNIFIED_MESSAGE__
        DeleteUptoScrID(SCR_ID_UM_UNSENT);
    #else 
        DeleteUptoScrID(SCR_ID_JMMS_OUTBOX);
    #endif 

    }

}


/*****************************************************************************
 * FUNCTION
 *  mmi_jmms_outbox_delete_on_sent
 * DESCRIPTION
 *  
 * PARAMETERS
 *  void
 * RETURNS
 *  void
 *****************************************************************************/
void mmi_jmms_outbox_delete_on_sent(void)
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/
    U8 number = 0;
    JC_RETCODE eRet = JC_OK;

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/

    /*********************************************************************************
      These lines has been added to delete the MMS stored into the OUTBOX folder after
      It has been sent successfully. Since file handle is open so it is not able to 
      delete the MMS from the 'OUTBOX' folder. So before performing the MMS delete, 
      close all the file handles by deinitializing the message handle.

      Written By  : Raj Kumar Gupta
      Date        : Augest 22, 2006
     *********************************************************************************/

    if (g_jmms_context->msg_handle != NULL)
    {
        mmi_jmms_jdi_msg_deinit(g_jmms_context->msg_handle);
        g_jmms_context->msg_handle = NULL;
    }
    /*********************************************************************************/

    number = g_jmms_context->store_context->nMsgs_in_Current_folder;

    eRet = mmi_jmms_delete_message(MMI_JMMS_OUTBOX, (number - g_jmms_context->nCurr_scr_hilited_index));

    if (eRet == JC_OK)
    {
    #ifdef __MMI_UNIFIED_MESSAGE__
        HistoryReplace(SCR_ID_UM_UNSENT, SCR_ID_UM_UNSENT, mmi_um_jmms_pre_entry_outbox);
        DeleteFromScrUptoScr(SCR_ID_JMMS_PROGRESS, SCR_ID_UM_UNSENT);
    #else /* __MMI_UNIFIED_MESSAGE__ */ 
        HistoryReplace(SCR_ID_JMMS_OUTBOX, SCR_ID_JMMS_OUTBOX, mmi_jmms_entry_outbox);

        if (number <= 1)    /* /now folder will empty */
        {
            DeleteFromScrUptoScr(SCR_ID_JMMS_PROGRESS, SCR_ID_JMMS_MAIN_MENU);
        }
        else
        {
            DeleteFromScrUptoScr(SCR_ID_JMMS_PROGRESS, SCR_ID_JMMS_OUTBOX);
        }
    #endif /* __MMI_UNIFIED_MESSAGE__ */ 
    }
    else
    {
    #ifdef __MMI_UNIFIED_MESSAGE__
        DeleteFromScrUptoScr(SCR_ID_JMMS_PROGRESS, SCR_ID_UM_UNSENT);
    #else 
        DeleteFromScrUptoScr(SCR_ID_JMMS_PROGRESS, SCR_ID_JMMS_OUTBOX);
    #endif 
    }

}


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

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    
#ifdef __MMI_UNIFIED_MESSAGE__
    /*Dilip 29 Aug 2006 */
    DisplayConfirm(
        STR_GLOBAL_YES,
        IMG_GLOBAL_YES,
        STR_GLOBAL_NO,
        IMG_GLOBAL_NO,
        get_string(STR_ID_JMMS_DELETE_ALL_UM_OUTBOX),
        IMG_GLOBAL_QUESTION,
        WARNING_TONE);
    /*Dilip 29 Aug 2006 */
    SetLeftSoftkeyFunction(mmi_um_jmms_delete_all, KEY_EVENT_UP);
#else 
    /*Dilip 29 Aug 2006 */
    DisplayConfirm(
        STR_GLOBAL_YES,
        IMG_GLOBAL_YES,
        STR_GLOBAL_NO,
        IMG_GLOBAL_NO,
/* MAUI_00018477 Start */
        get_string(STR_ID_JMMS_DELETE_ALL_UM_OUTBOX),
/* MAUI_00018477 End */
        IMG_GLOBAL_QUESTION,
        WARNING_TONE);
    /*Dilip 29 Aug 2006 */
    SetLeftSoftkeyFunction(mmi_jmms_delete_all_message_outbox, KEY_EVENT_UP);
#endif 
    SetRightSoftkeyFunction(GoBackHistory, KEY_EVENT_UP);

}


/*****************************************************************************
 * FUNCTION
 *  mmi_jmms_delete_all_message_outbox
 * DESCRIPTION
 *  
 * PARAMETERS
 *  void
 * RETURNS
 *  void
 *****************************************************************************/
void mmi_jmms_delete_all_message_outbox(void)
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/
    JC_RETCODE eRet = JC_OK;

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    mmi_jmms_delete_progresing_screen(STR_ID_JMMS_OUTBOX, IMG_GLOBAL_PROGRESS);

    eRet = mmi_jmms_delete_all_message(MMI_JMMS_OUTBOX);
    if (JC_OK != eRet)
    {
        DisplayPopup(
            (U8*) GetString(STR_ID_JMMS_ERROR_MMS_DELETE),
            IMG_GLOBAL_ERROR,
            1,
            JMMS_POPUP_TIME,
            (U8) ERROR_TONE);
        DeleteUptoScrID(SCR_ID_JMMS_OUTBOX);
    }
    else
    {
        DisplayPopup((U8*) GetString(STR_GLOBAL_DONE), IMG_GLOBAL_ACTIVATED, 1, JMMS_POPUP_TIME, SUCCESS_TONE);
        DeleteUptoScrID(SCR_ID_JMMS_MAIN_MENU);
        mmi_jmms_free_msgs_list(&(g_jmms_context->store_context->messages_list));
    }

}


/*****************************************************************************
 * FUNCTION
 *  mmi_jmms_outbox_use_details
 * DESCRIPTION
 *  Pre entry fn for outbox use details option
 * PARAMETERS
 *  void
 * RETURNS
 *  void
 *****************************************************************************/
void mmi_jmms_outbox_use_details(void)
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    mmi_jmms_pre_entry_use_details_screen(MMI_JMMS_OUTBOX);

}


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

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    mmi_jmms_show_mms_properties(E_MSG_NEW_MMS_SEND, MMI_JMMS_OUTBOX);
}

#ifdef __MMI_UNIFIED_MESSAGE__


/*****************************************************************************
 * FUNCTIO

⌨️ 快捷键说明

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