📄 jmmstemplatesui.c
字号:
len = pfnUnicodeStrlen((S8*) subject);
g_jmms_context->subject = (S8*) jdd_MemAlloc(sizeof(S8), (len + 1) * ENCODING_LENGTH);
if ((g_jmms_context->subject == NULL) && (len != 0))
{
mmi_jmms_free_mms_pdu_memory(g_jmms_context);
eRet = JC_ERR_MEMORY_ALLOCATION;
goto END;
}
if (g_jmms_context->subject)
{
pfnUnicodeStrcpy((S8*) g_jmms_context->subject, (S8*) subject);
pMessageSend->pSubject = (JC_CHAR*) g_jmms_context->subject;
}
pMessageSend->uiDate = 0;
pMessageSend->pFrom = NULL;
pMsgHeaders->eMsgType = E_MSG_TYPE_SEND;
pMsgHeaders->pHeaders = pMessageSend;
if (JMMS_COMP_OK == mmi_jmms_compose_new_mms())
{
g_jmms_context->compose_context->mms_bg_color = g_jmms_color_RGB_list[COLOR_WHITE];
/* Added by Deepali for root layout. */
err_code = mmi_jmms_set_bg_color(g_jmms_context->compose_context->mms_bg_color);
if ((err_code == JMMS_COMP_OUT_MEMORY) || (err_code == JMMS_COMP_FAIL))
{
eRet = mmi_jmms_jdi_msg_deinit(g_jmms_context->msg_handle);
g_jmms_context->msg_handle = NULL;
eRet = JC_ERR_MEMORY_ALLOCATION;
goto END;
}
g_jmms_context->compose_context->curr_page_index = 0;
err_code = mmi_jmms_compose_insert_slide();
/* PMT HIMANSHU END 20060425 */
if ((err_code == JMMS_COMP_OUT_MEMORY) || (err_code == JMMS_COMP_FAIL))
{
eRet = mmi_jmms_jdi_msg_deinit(g_jmms_context->msg_handle);
g_jmms_context->msg_handle = NULL;
eRet = JC_ERR_MEMORY_ALLOCATION;
goto END;
}
}
else
{
mmi_jmms_free_mms_pdu_memory(g_jmms_context);
goto END;
}
eRet = mmi_jmms_jdi_set_msg_headers(g_jmms_context->msg_handle, pMsgHeaders);
if (JC_OK != eRet)
{
mmi_jmms_free_mms_pdu_memory(g_jmms_context);
goto END;
}
g_jmms_context->layout=CUSTOM_LAYOUT;
jc_tcscpy(
(UI_character_type*) g_jmms_context->compose_context->curr_slide_info.edit_content_buffer,
(UI_character_type*) subject);
mmi_jmms_compose_add_text(
1,
&g_jmms_context->compose_context->curr_slide_info.slide_prop.text_font,
g_jmms_context->compose_context->curr_slide_info.slide_prop.text_color,1);
/* TODO: Need to see if the image is out of content class */
img_info.pImgBuffer = image_buff;
mmi_jdd_ui_get_image_buffer_size(&img_info);
/* mmi_jmms_compose_add_media_buffer(U8 *buffer, U32 size, U8 type,U8 is_attachment, U8 page_index) */
mmi_jmms_compose_add_media_template(
img_info.pImgBuffer,
(U8*) img_info.psMimeType,
img_info.uiImgSize,
E_MEDIA_IMAGE,
E_FALSE,
1);
if (img_info.psMimeType != NULL)
{
jdd_MemFree(img_info.psMimeType);
}
if(WAP_MMS_CONTENT_CLASS_IMAGE_BASIC != wap_get_mms_content_class())
{
mmi_jmms_compose_add_media_template(audio_buff, (U8*) content_type_audio, audio_len, E_MEDIA_AUDIO, E_FALSE, 1);
}
eRet = mmi_jmms_save_mms(
"Templates",
g_jmms_context->msg_handle,
MMI_FALSE,
0,
mmi_jmms_create_template_mms_return_callback);
if (eRet == JC_ERR_MMS_ENCODE_PENDING)
{
return eRet;
}
else if(eRet!= JC_OK)
{
PRINT_INFORMATION_2((MMI_TRACE_INFO, "Parsing Failed: mmi_jmms_create_template_mms"));
if(g_jmms_context->is_in_format_mode)
{
g_jmms_context->init_done = JMMS_TEMPLATES_INITIALIZED;
PRINT_INFORMATION_2((MMI_TRACE_INFO, "mmi_jmms_create_template_mms: %d",g_jmms_context->init_done ));
}
}
END:
mmi_jmms_create_template_mms_return_callback(eRet);
return eRet;
}
/*****************************************************************************
* FUNCTION
* mmi_jmms_create_template_mms_return_callback
* DESCRIPTION
*
* PARAMETERS
* eRet [IN]
* RETURNS
* void
*****************************************************************************/
void mmi_jmms_create_template_mms_return_callback(JC_RETCODE eRet)
{
/*----------------------------------------------------------------*/
/* Local Variables */
/*----------------------------------------------------------------*/
U8 total_num_msgs = 0;
#ifdef _MUTILANG_TEMPLATE_
U16 language_change =0;
S16 error;
#endif
/*----------------------------------------------------------------*/
/* Code Body */
/*----------------------------------------------------------------*/
PRINT_INFORMATION_2((MMI_TRACE_INFO, "create_template_mms_return_callback: %d count:%d", eRet, gtemplate_count));
if (eRet != JC_OK && g_jmms_context->msg_handle != NULL)
{
mmi_jmms_deinit_mms_context(g_jmms_context);
mmi_jmms_free_mms_pdu_memory(g_jmms_context);
}
if (eRet != JC_OK)
{
g_jmms_context->init_done = JMMS_INITIALIZED;
mmi_jmms_delete_all_message("Templates");
if(GetActiveScreenId() == SCR_ID_JMMS_PROGRESS)
{
DisplayPopup((U8*) GetString(STR_ID_JMMS_MEMORY_FULL), IMG_GLOBAL_ERROR, 1, JMMS_POPUP_TIME, (U8) ERROR_TONE);
DeleteScreenIfPresent(SCR_ID_JMMS_PROGRESS);
}
else
{
DeleteScreenIfPresent(SCR_ID_JMMS_PROGRESS);
}
}
else
{
gtemplate_count++;
if (gtemplate_count < __MMI_MMS_TEMPLATES_NUM__)
{
mmi_jmms_create_template_messages();
g_jmms_context->layout = DEFAULT_LAYOUT;
return;
}
else
{
eRet = mmi_mms_get_number_of_messages(MMI_JMMS_TEMPLATES, &total_num_msgs);
if (eRet != JC_OK)
{
ASSERT(0);
}
if (total_num_msgs == 0)
{
if(GetActiveScreenId() == SCR_ID_JMMS_PROGRESS)
{
DisplayPopup((U8*) GetString(STR_GLOBAL_EMPTY), IMG_GLOBAL_EMPTY, 1, JMMS_POPUP_TIME, EMPTY_LIST_TONE);
}
if (g_jmms_context->init_done == JMMS_INITIALIZED)
{
g_jmms_context->init_done = JMMS_READY;
PRINT_INFORMATION_2((MMI_TRACE_INFO, "mmi_jmms_create_template_mms_return_callback: 0 MMS"));
if(g_jmms_context->is_in_format_mode)
{
wap_send_fmt_format_rsp();
g_jmms_context->is_in_format_mode = 0;
}
#ifdef __MMI_UNIFIED_MESSAGE__
mmi_um_jmms_ready_ind();
#endif
}
return;
}
g_jmms_context->store_context->nMsgs_in_Current_folder = total_num_msgs;
if(GetActiveScreenId() == SCR_ID_JMMS_PROGRESS)
{
mmi_jmms_entry_templates_screen();
}
else
{
DeleteScreenIfPresent(SCR_ID_JMMS_PROGRESS);
}
#ifdef _MUTILANG_TEMPLATE_
ReadValue(NVRAM_JMMS_LANGUAGE_CHANGE, &language_change, DS_SHORT, &error);
if (language_change == 0xFFFF)
{
WriteValue(NVRAM_JMMS_LANGUAGE_CHANGE, &gCurrLangIndex, DS_SHORT, &error);
}
else if(language_change != gCurrLangIndex)
{
WriteValue(NVRAM_JMMS_LANGUAGE_CHANGE, &gCurrLangIndex, DS_SHORT, &error);
}
#endif
}
}
if (g_jmms_context->init_done == JMMS_INITIALIZED)
{
g_jmms_context->init_done = JMMS_READY;
PRINT_INFORMATION_2((MMI_TRACE_INFO, "create_template_mms_return_callback UM Ready: %d", g_jmms_context->init_done));
if(g_jmms_context->is_in_format_mode)
{
wap_send_fmt_format_rsp();
g_jmms_context->is_in_format_mode = 0;
}
#ifdef __MMI_UNIFIED_MESSAGE__
mmi_um_jmms_ready_ind();
#endif
}
}
/*****************************************************************************
* FUNCTION
* mmi_jmms_parsing_progressing_screen
* DESCRIPTION
*
* PARAMETERS
* void
* RETURNS
* void
*****************************************************************************/
void mmi_jmms_parsing_progressing_screen(void)
{
/*----------------------------------------------------------------*/
/* Local Variables */
/*----------------------------------------------------------------*/
/*----------------------------------------------------------------*/
/* Code Body */
/*----------------------------------------------------------------*/
EntryNewScreen(SCR_ID_JMMS_PARSING_PROGRESS, NULL, mmi_jmms_parsing_progressing_screen, NULL);
ShowCategory154Screen(
STR_MMS_MENUENTRY,
GetRootTitleIcon(MAIN_MENU_MESSAGES_MENUID),
0,
0,
STR_GLOBAL_CANCEL,
0,
(PU8)GetString(STR_ID_JMMS_PARSING_MMS),
NULL,
IMG_GLOBAL_PROGRESS,
NULL);
SetRightSoftkeyFunction(mmi_jmms_abort_parsing_progress, KEY_EVENT_UP);
}
/*****************************************************************************
* FUNCTION
* mmi_jmms_only_abort_parsing_progress
* DESCRIPTION
*
* PARAMETERS
* void
* RETURNS
* void
*****************************************************************************/
void mmi_jmms_only_abort_parsing_progress(void)
{
/*----------------------------------------------------------------*/
/* Local Variables */
/*----------------------------------------------------------------*/
/*----------------------------------------------------------------*/
/* Code Body */
/*----------------------------------------------------------------*/
mmi_jmms_parse_continue_stop_timer();
if (g_jmms_context->pParseContent != NULL)
{
if (g_jmms_context->pParseContent->pFileName != NULL)
{
jdd_MemFree(g_jmms_context->pParseContent->pFileName);
g_jmms_context->pParseContent->pFileName = NULL;
}
jdd_MemFree(g_jmms_context->pParseContent);
g_jmms_context->pParseContent = NULL;
}
}
/*****************************************************************************
* FUNCTION
* mmi_jmms_abort_parsing_progress
* DESCRIPTION
*
* PARAMETERS
* void
* RETURNS
* void
*****************************************************************************/
void mmi_jmms_abort_parsing_progress(void)
{
/*----------------------------------------------------------------*/
/* Local Variables */
/*----------------------------------------------------------------*/
/*----------------------------------------------------------------*/
/* Code Body */
/*----------------------------------------------------------------*/
mmi_jmms_only_abort_parsing_progress();
if (g_jmms_context->msg_handle != NULL)
{
mmi_jmms_jdi_msg_deinit(g_jmms_context->msg_handle);
g_jmms_context->msg_handle = NULL;
}
g_jmms_context->is_add_media_warning = 0;
GoBackHistory();
}
#endif /* (defined (JATAAYU_SUPPORT) && defined(MMS_SUPPORT)) */
#endif /* _MMI_JMMSTEMPLATESSECMMI_C */
// #endif //#if 0 //Pranav Commeneted
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -