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

📄 jmmsmessagesettings.c

📁 MTK手机平台的MMI部分的源代码
💻 C
📖 第 1 页 / 共 5 页
字号:
 *  the auto sign content
 * PARAMETERS
 *  void
 * RETURNS
 *  void
 *****************************************************************************/
void mmi_jmms_read_back_auto_sign_content(void)
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/
    S16 error;

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    ReadRecord(
        NVRAM_EF_JMMS_COMPOSE_SETTINGS_LID,
        1,
        &g_jmms_context->nvram_compose_settings,
        NVRAM_JMMS_COMPOSE_SETTINGS_SIZE /* NVRAM_JMMS_COMPOSE_SETTINGS_SIZE */ ,
        &error);
    DisplayIdleScreen();
}


/*****************************************************************************
 * FUNCTION
 *  mmi_jmms_compose_inline_custom_func
 * DESCRIPTION
 *  custom fn for Auto sign Full screen editor
 * PARAMETERS
 *  void
 * RETURNS
 *  void
 *****************************************************************************/
void mmi_jmms_compose_inline_custom_func(void)
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    ChangeLeftSoftkey(STR_GLOBAL_OPTIONS, IMG_GLOBAL_OPTIONS);
    SetLeftSoftkeyFunction(EntryScrForInputMethodAndDone, KEY_EVENT_UP);
    SetInputMethodAndDoneCaptionIcon(GetRootTitleIcon(MAIN_MENU_MESSAGES_MENUID));
	if (isInCall() == FALSE)
        SetKeyHandler(mmi_jmms_read_back_auto_sign_content, KEY_END, KEY_EVENT_DOWN);

}


/*****************************************************************************
 * FUNCTION
 *  mmi_jmms_compose_fill_inline_struct
 * DESCRIPTION
 *  Fills the inline items for compose settings screen
 * PARAMETERS
 *  void
 * RETURNS
 *  void
 *****************************************************************************/
void mmi_jmms_compose_fill_inline_struct(void)
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    if (g_jmms_context->jmms_inline_lists == NULL)
    {
        g_jmms_context->jmms_inline_lists =
            (jmms_common_inline_lists_struct*) jdd_MemAlloc(sizeof(jmms_common_inline_lists_struct), 1);
        if (g_jmms_context->jmms_inline_lists == NULL)
        {
            DisplayPopup((PU8) GetString(STR_ID_JMMS_OUT_OF_MEMORY), IMG_GLOBAL_ERROR, 1, JMMS_POPUP_TIME, ERROR_TONE);
            return;
        }

    }

    g_jmms_context->jmms_inline_items.compose_items_list.layout_list[0] = GetString(STR_ID_SETTINGS_POTRAIT);
    g_jmms_context->jmms_inline_items.compose_items_list.layout_list[1] = GetString(STR_ID_SETTINGS_LANDSCAPE);

    g_jmms_context->jmms_inline_lists->on_off_list[0] = GetString(STR_ID_SETTINGS_OFF);
    g_jmms_context->jmms_inline_lists->on_off_list[1] = GetString(STR_ID_SETTINGS_ON);

    g_jmms_context->jmms_inline_items.compose_items_list.creation_modes_list[0] = GetString(STR_ID_SETTINGS_RESTRICTED);
    g_jmms_context->jmms_inline_items.compose_items_list.creation_modes_list[1] = GetString(STR_ID_SETTINGS_WARNING);
    g_jmms_context->jmms_inline_items.compose_items_list.creation_modes_list[2] = GetString(STR_ID_SETTINGS_FREE);
    /* HIMANSHU 05122006 START */
#ifdef __MMI_MMS_MEGA_PIXEL_SUPPORT__
    g_jmms_context->jmms_inline_items.compose_items_list.image_resize_list[0] = GetString(STR_ID_SETTINGS_OFF);
    g_jmms_context->jmms_inline_items.compose_items_list.image_resize_list[1] = GetString(STR_ID_SETTINGS_160_X_120);
    g_jmms_context->jmms_inline_items.compose_items_list.image_resize_list[2] = GetString(STR_ID_SETTINGS_320_X_240);
    g_jmms_context->jmms_inline_items.compose_items_list.image_resize_list[3] = GetString(STR_ID_SETTINGS_640_X_480);
#endif /* __MMI_MMS_MEGA_PIXEL_SUPPORT__ */ 
    /* HIMANSHU 05122006 END */

    SetInlineItemActivation(
        &wgui_inline_items[E_COMPOSE_DEFAULT_SLIDE_TIME_CAPTION],
        INLINE_ITEM_ACTIVATE_WITHOUT_KEY_EVENT,
        0);
    SetInlineItemCaption(
        &wgui_inline_items[E_COMPOSE_DEFAULT_SLIDE_TIME_CAPTION],
        (U8*) GetString(STR_ID_SETTINGS_DEFAULT_SLIDE_TIMING));
    SetInlineItemActivation(
        &wgui_inline_items[E_COMPOSE_DEFAULT_SLIDE_TIME],
        INLINE_ITEM_ACTIVATE_WITHOUT_KEY_EVENT,
        0);
    SetInlineItemTextEdit(
        &wgui_inline_items[E_COMPOSE_DEFAULT_SLIDE_TIME],
        (U8*) g_jmms_context->jmms_inline_items.compose_items_list.defualt_slide_time_buffer,
        (MAX_DEFAULT_SLIDE_TIME_INPUT + 1),
        INPUT_TYPE_NUMERIC);

    SetInlineItemActivation(&wgui_inline_items[E_COMPOSE_LAYOUT_CAPTION], INLINE_ITEM_ACTIVATE_WITHOUT_KEY_EVENT, 0);
    SetInlineItemCaption(&wgui_inline_items[E_COMPOSE_LAYOUT_CAPTION], (U8*) GetString(STR_ID_SETTINGS_LAYOUT));
    SetInlineItemSelect(
        &wgui_inline_items[E_COMPOSE_LAYOUT],
        2,
        (U8 **) g_jmms_context->jmms_inline_items.compose_items_list.layout_list,
        &g_jmms_context->jmms_inline_items.compose_items_list.layout);
    SetInlineItemActivation(&wgui_inline_items[E_COMPOSE_LAYOUT], INLINE_ITEM_ACTIVATE_WITHOUT_KEY_EVENT, 0);

#ifdef __DRM_SUPPORT__
    SetInlineItemActivation(&wgui_inline_items[E_COMPOSE_ADD_DRM_CAPTION], INLINE_ITEM_ACTIVATE_WITHOUT_KEY_EVENT, 0);
    SetInlineItemCaption(&wgui_inline_items[E_COMPOSE_ADD_DRM_CAPTION], (U8*) GetString(STR_ID_SETTINGS_ADD_DRM));
    SetInlineItemSelect(
        &wgui_inline_items[E_COMPOSE_ADD_DRM],
        2,
        (U8 **) g_jmms_context->jmms_inline_lists->on_off_list,
        &g_jmms_context->jmms_inline_items.compose_items_list.add_drm);
    SetInlineItemActivation(&wgui_inline_items[E_COMPOSE_ADD_DRM], INLINE_ITEM_ACTIVATE_WITHOUT_KEY_EVENT, 0);
#endif /* __DRM_SUPPORT__ */ 
    SetInlineItemActivation(
        &wgui_inline_items[E_COMPOSE_CREATION_MODES_CAPTION],
        INLINE_ITEM_ACTIVATE_WITHOUT_KEY_EVENT,
        0);
    SetInlineItemCaption(
        &wgui_inline_items[E_COMPOSE_CREATION_MODES_CAPTION],
        (U8*) GetString(STR_ID_SETTINGS_CREATION_MODES));
    SetInlineItemSelect(
        &wgui_inline_items[E_COMPOSE_CREATION_MODES],
        3,
        (U8 **) g_jmms_context->jmms_inline_items.compose_items_list.creation_modes_list,
        &g_jmms_context->jmms_inline_items.compose_items_list.creation_mode);
    SetInlineItemActivation(&wgui_inline_items[E_COMPOSE_CREATION_MODES], INLINE_ITEM_ACTIVATE_WITHOUT_KEY_EVENT, 0);

#ifdef __MMI_MMS_MEGA_PIXEL_SUPPORT__
    /* PMT Umesh START - Added for Image resizing */
    SetInlineItemActivation(
        &wgui_inline_items[E_COMPOSE_IMAGE_RESIZE_CAPTION],
        INLINE_ITEM_ACTIVATE_WITHOUT_KEY_EVENT,
        0);
    SetInlineItemCaption(
        &wgui_inline_items[E_COMPOSE_IMAGE_RESIZE_CAPTION],
        (U8*) GetString(STR_ID_SETTINGS_IMAGE_RESIZE));

    SetInlineItemActivation(&wgui_inline_items[E_COMPOSE_IMAGE_RESIZING], INLINE_ITEM_ACTIVATE_WITHOUT_KEY_EVENT, 0);
    SetInlineItemSelect(
        &wgui_inline_items[E_COMPOSE_IMAGE_RESIZING],
        4,
        (U8 **) g_jmms_context->jmms_inline_items.compose_items_list.image_resize_list,
        &g_jmms_context->jmms_inline_items.compose_items_list.image_resize_option);
    /* PMT Umesh END - Added for Image resizing */
#endif /* __MMI_MMS_MEGA_PIXEL_SUPPORT__ */ 

    SetInlineItemActivation(
        &wgui_inline_items[E_COMPOSE_MAX_NO_PAGES_CAPTION],
        INLINE_ITEM_ACTIVATE_WITHOUT_KEY_EVENT,
        0);
    SetInlineItemCaption(
        &wgui_inline_items[E_COMPOSE_MAX_NO_PAGES_CAPTION],
        (U8*) GetString(STR_ID_SETTINGS_MAX_NUM_PAGES));
    SetInlineItemActivation(&wgui_inline_items[E_COMPOSE_MAX_NO_PAGES], INLINE_ITEM_ACTIVATE_WITHOUT_KEY_EVENT, 0);
    SetInlineItemTextEdit(
        &wgui_inline_items[E_COMPOSE_MAX_NO_PAGES],
        (U8*) g_jmms_context->jmms_inline_items.compose_items_list.max_num_pages_buffer,
        (MAX_NO_PAGES_INPUT + 1),
        INPUT_TYPE_NUMERIC);

    SetInlineItemActivation(
        &wgui_inline_items[E_COMPOSE_BEST_PAGE_DURATION_CAPTION],
        INLINE_ITEM_ACTIVATE_WITHOUT_KEY_EVENT,
        0);
    SetInlineItemCaption(
        &wgui_inline_items[E_COMPOSE_BEST_PAGE_DURATION_CAPTION],
        (U8*) GetString(STR_ID_SETTINGS_BEST_PAGE_DURATION));

    SetInlineItemSelect(
        &wgui_inline_items[E_COMPOSE_BEST_PAGE_DURATION],
        2,
        (U8 **) g_jmms_context->jmms_inline_lists->on_off_list,
        &g_jmms_context->jmms_inline_items.compose_items_list.best_page_duration);
    SetInlineItemActivation(
        &wgui_inline_items[E_COMPOSE_BEST_PAGE_DURATION],
        INLINE_ITEM_ACTIVATE_WITHOUT_KEY_EVENT,
        0);

//#ifdef __MMI_MMS_SIGNATURE__
    SetInlineItemActivation(
        &wgui_inline_items[E_COMPOSE_AUTO_SIGNATURE_CAPTION],
        INLINE_ITEM_ACTIVATE_WITHOUT_KEY_EVENT,
        0);
    SetInlineItemCaption(
        &wgui_inline_items[E_COMPOSE_AUTO_SIGNATURE_CAPTION],
        (U8*) GetString(STR_ID_SETTINGS_AUTO_SIGNATURE));

    SetInlineItemSelect(
        &wgui_inline_items[E_COMPOSE_AUTO_SIGNATURE],
        2,
        (U8 **) g_jmms_context->jmms_inline_lists->on_off_list,
        &g_jmms_context->jmms_inline_items.compose_items_list.auto_signature);
    SetInlineItemActivation(&wgui_inline_items[E_COMPOSE_AUTO_SIGNATURE], INLINE_ITEM_ACTIVATE_WITHOUT_KEY_EVENT, 0);

    SetInlineItemActivation(&wgui_inline_items[E_COMPOSE_AUTO_SIGNATURE_CONTENT], KEY_LSK, KEY_EVENT_UP);
    SetInlineItemFullScreenEdit(
        &wgui_inline_items[E_COMPOSE_AUTO_SIGNATURE_CONTENT],
        STR_ID_SETTINGS_EDIT_CONTENT,
        GetRootTitleIcon(MAIN_MENU_MESSAGES_MENUID),
        (PU8) g_jmms_context->nvram_compose_settings.auto_signature_content,
        MAX_AUTO_SIGN_LENGTH + 1,
        INPUT_TYPE_ALPHANUMERIC_SENTENCECASE);
    SetInlineFullScreenEditCustomFunction(
        &wgui_inline_items[E_COMPOSE_AUTO_SIGNATURE_CONTENT],
        mmi_jmms_compose_inline_custom_func);
//#endif /* __MMI_MMS_SIGNATURE__ */ 

}


/*****************************************************************************
 * FUNCTION
 *  mmi_jmms_exit_compose_settings
 * DESCRIPTION
 *  Exit fn for compose settings screeen
 * PARAMETERS
 *  void
 * RETURNS
 *  void
 *****************************************************************************/
void mmi_jmms_exit_compose_settings(void)
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/
    history history_buff;
    U16 inputBufferSize;    /* added for inline edit history */
    S16 nhistory = 0;

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    set_leading_zero(TRUE);
    CloseCategory57Screen();
    history_buff.scrnID = SCR_ID_JMMS_COMPOSE_SETTINGS;
    history_buff.entryFuncPtr = mmi_jmms_entry_compose_settings;
    pfnUnicodeStrcpy((S8*) history_buff.inputBuffer, (S8*) & nhistory);
    GetCategory57History(history_buff.guiBuffer);
    inputBufferSize = (U16) GetCategory57DataSize();    /* added for inline edit history */
    GetCategory57Data((U8*) history_buff.inputBuffer);  /* added for inline edit history */
    AddNHistory(history_buff, inputBufferSize);         /* added for inline edit history */

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

}


/*****************************************************************************
 * FUNCTION
 *  mmi_jmms_pre_entry_sending_settings
 * DESCRIPTION
 *  pre entry fn for sending settings. Init the value of inline items for the screeen
 * PARAMETERS
 *  void
 * RETURNS
 *  void
 *****************************************************************************/
void mmi_jmms_pre_entry_sending_settings(void)
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    gui_itoa(
        (S32) g_jmms_context->nvram_sending_settings.deadline_for_reply,
        (UI_string_type) g_jmms_context->jmms_inline_items.sending_items_list.deadline_for_reply_buffer,
        10);
    g_jmms_context->jmms_inline_items.sending_items_list.delivery_report =
        (S32) g_jmms_context->nvram_sending_settings.delivery_report;
    g_jmms_context->jmms_inline_items.sending_items_list.delivery_time =
        (S32) g_jmms_context->nvram_sending_settings.delivery_time;
    g_jmms_context->jmms_inline_items.sending_items_list.hide_sender =
        (S32) g_jmms_context->nvram_sending_settings.hide_sender;
    g_jmms_context->jmms_inline_items.sending_items_list.priority =
        (S32) g_jmms_context->nvram_sending_settings.priority;
    g_jmms_context->jmms_inline_items.sending_items_list.read_report =
        (S32) g_jmms_context->nvram_sending_settings.read_report;
    g_jmms_context->jmms_inline_items.sending_items_list.reply_charging =
        (S32) g_jmms_context->nvram_sending_settings.reply_charging;
    g_jmms_context->jmms_inline_items.sending_items_list.request_type =
        (S32) g_jmms_context->nvram_sending_settings.request_type;
    g_jmms_context->jmms_inline_items.sending_items_list.validity_period =
        (S32) g_jmms_context->nvram_sending_settings.validity_period;
    gui_itoa(
        (S32) g_jmms_context->nvram_sending_settings.size,
        (UI_string_type) g_jmms_context->jmms_inline_items.sending_items_list.reply_msg_size_buffer,

⌨️ 快捷键说明

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