📄 mmidc_storage_wintab.c
字号:
// Note:
/*****************************************************************************/
PUBLIC void MMIDC_WritePhotoFileDoneCnf(DPARAM param)
{
MMIDC_FFS_ASY_WRITE_RESULT_T *save_result_ptr = PNULL;
uint32 photo_index = 0;
MMIDC_PHOTO_INFO_AFTER_REVIEW_T st_review_photo_info = {0};
SCI_TRACE_LOW("mmidc_storage_wintab.c: MMIDC_WritePhotoFileDoneCnf() MSG_DC_FILE_WRITE_DONE");
DC_ASSERT_LOW(param != 0);
save_result_ptr = (MMIDC_FFS_ASY_WRITE_RESULT_T *)param;
//save dc info step 2
//fill photo width and height
st_review_photo_info = MMIDC_GetPhotoInfoAfterReview();
save_result_ptr->photo_detail.width = st_review_photo_info.width;
save_result_ptr->photo_detail.height = st_review_photo_info.height;
photo_index = DCSaveInfo_AsyAddStep2(save_result_ptr);
//enter dc option win(if the saving win is lose focus, don't open option win)
if ((save_result_ptr->write_result == DCFFS_WRITE_SUCCEED)
&& MMK_IsFocusWin(MMIDC_WRITE_FILE_WIN_ID)
)
{
MMK_CloseWin(MMIDC_SHOOT_WIN_ID);
MMIDC_OpenPhotoOptionWin(TRUE, TRUE, photo_index, save_result_ptr->buf_ptr, save_result_ptr->photo_detail.memory_size);
//alert save result
AlertSaveResult(save_result_ptr->write_result);
}
else
{
MMIDC_CloseCaptureWin();
}
//close input name win
MMK_CloseWin(MMIDC_INPUT_PHOTO_NAME_WIN_ID);
//close waiting win
MMK_CloseWin(MMIDC_WRITE_FILE_WIN_ID);
}
/*****************************************************************************/
// Description : DC file delete done handling function(MSG_DC_FILE_DEL_DONE)
// Global resource dependence :
// Author: wancan.you
// Note:
/*****************************************************************************/
PUBLIC void MMIDC_FileDelDoneCnf(DPARAM param)
{
MMI_MENU_ID_T menu_id = 0;
MMI_MENU_GROUP_ID_T group_id = 0;
MMIDC_FFS_ASY_DEL_RESULT_T *st_del_result_ptr = PNULL;
uint32 photo_total_num = 0;
uint32 photo_index = 0;
MMIDC_FFS_DEL_RESULT_E del_result = 0;
PUBWIN_ClosePromptQueryWin();
DC_ASSERT_LOW(param != 0);
st_del_result_ptr = (MMIDC_FFS_ASY_DEL_RESULT_T*)param;
if (MMK_IsOpenWin(MMIDC_PICOPTION_WIN_ID))
{
GUIMENU_GetRetID(MMIDC_PICOPTION_MENU_ID, &group_id, &menu_id);
if(menu_id == ID_DC_OPT_DELETE)
{
//delete step2
DCSaveInfo_AsyDeleteStep2(st_del_result_ptr);
//alert del result
AlertDeleteResult(st_del_result_ptr->e_del_result);
//modify album list
if (st_del_result_ptr->e_del_result == DCFFS_DEL_SUCCEED)
{
if(MMK_IsOpenWin(MMIDC_ALBUM_WIN_ID))
{
uint16 item_idx = 0;
item_idx = DCSaveInfo_GetPotoTotalNum() - st_del_result_ptr->photo_index;
GUILISTBOX_RemoveItemBasePos(MMIDC_ALBUM_LISTBOX_CTRL_ID,item_idx);
}
}
//close waiting win
PUBWIN_CloseWaitingMessageWin(MMIDC_DELETE_WAITING_WIN_ID);
//close review win
MMK_CloseWin(MMIDC_BROWSER_WIN_ID);
//close this win
MMK_CloseWin(MMIDC_PICOPTION_WIN_ID);
}
else if (menu_id == ID_DC_OPT_DELETEALL)
{
//delete step2
DCSaveInfo_AsyDeleteStep2(st_del_result_ptr);
//modify album list
if (st_del_result_ptr->e_del_result == DCFFS_DEL_SUCCEED)
{
photo_total_num = DCSaveInfo_GetPotoTotalNum();
if (photo_total_num > 0)
{
if(MMK_IsOpenWin(MMIDC_ALBUM_WIN_ID))
{
uint16 item_idx = 0;
item_idx = DCSaveInfo_GetPotoTotalNum() - st_del_result_ptr->photo_index;
GUILISTBOX_RemoveItemBasePos(MMIDC_ALBUM_LISTBOX_CTRL_ID,item_idx);
}
photo_index = photo_total_num - 1;
del_result = DCSaveInfo_AsyDelete(MMIDC_PICOPTION_WIN_ID, photo_index);
if (del_result == DCFFS_DEL_SUCCEED)
{
//close waiting win
PUBWIN_CloseWaitingMessageWin(MMIDC_DELETE_WAITING_WIN_ID);
SCI_TRACE_LOW("mmidc:HandlePicOptionMenuWinMsg, del_result == DCFFS_DEL_SUCCEED");
}
else if (del_result == DCFFS_DEL_FAIL)
{
//alert del result
AlertDeleteResult(del_result);
//close waiting win
PUBWIN_CloseWaitingMessageWin(MMIDC_DELETE_WAITING_WIN_ID);
//close review win
MMK_CloseWin(MMIDC_BROWSER_WIN_ID);
//close this win
MMK_CloseWin(MMIDC_PICOPTION_WIN_ID);
}
}
else
{
//delete all has been finished
//alert del result
AlertDeleteResult(st_del_result_ptr->e_del_result);
//close waiting win
PUBWIN_CloseWaitingMessageWin(MMIDC_DELETE_WAITING_WIN_ID);
//close review win
MMK_CloseWin(MMIDC_BROWSER_WIN_ID);
//close this win
MMK_CloseWin(MMIDC_PICOPTION_WIN_ID);
}
}
else if (st_del_result_ptr->e_del_result == DCFFS_DEL_FAIL)
{
//alert del result
AlertDeleteResult(st_del_result_ptr->e_del_result);
//close waiting win
PUBWIN_CloseWaitingMessageWin(MMIDC_DELETE_WAITING_WIN_ID);
//close review win
MMK_CloseWin(MMIDC_BROWSER_WIN_ID);
//close this win
MMK_CloseWin(MMIDC_PICOPTION_WIN_ID);
}
}
}
else //the win has been close, end delete
{
//delete step2
DCSaveInfo_AsyDeleteStep2(st_del_result_ptr);
//alert del result
AlertDeleteResult(st_del_result_ptr->e_del_result);
//modify album list
if (st_del_result_ptr->e_del_result == DCFFS_DEL_SUCCEED)
{
if(MMK_IsOpenWin(MMIDC_ALBUM_WIN_ID))
{
uint16 item_idx = 0;
item_idx = DCSaveInfo_GetPotoTotalNum() - st_del_result_ptr->photo_index;
GUILISTBOX_RemoveItemBasePos(MMIDC_ALBUM_LISTBOX_CTRL_ID,item_idx);
}
}
//close waiting win
PUBWIN_CloseWaitingMessageWin(MMIDC_DELETE_WAITING_WIN_ID);
//close review win
MMK_CloseWin(MMIDC_BROWSER_WIN_ID);
//close this win
MMK_CloseWin(MMIDC_PICOPTION_WIN_ID);
}
}
/*****************************************************************************/
// Description : 写文件等待窗口处理函数
// Global resource dependence :
// Author:
// Note:
/*****************************************************************************/
LOCAL MMI_RESULT_E HandleWritePhotoFileWaitWinMsg(
MMI_WIN_ID_T win_id,
MMI_MESSAGE_ID_E msg_id,
DPARAM param
)
{
MMI_RESULT_E result = MMI_RESULT_TRUE;
switch(msg_id)
{
case MSG_APP_RED:
break;
case MSG_APP_FLIP:
MMIDEFAULT_HandleFlipKey(FALSE);
break;
default:
result = PUBWIN_HandleWaitingMessageWinMsg(win_id, msg_id, param);
break;
}
return (result);
}
/*****************************************************************************/
// Description : open waiting win to save jpg
// Global resource dependence :
// Author:
// Note:
/*****************************************************************************/
LOCAL BOOLEAN OpenSaveingWin(MMI_WIN_ID_T win_id)
{
MMI_STRING_T prompt_str = {0};
MMI_GetLabelTextByLang(TXTSYS_WAITING, &prompt_str);
//等待窗口
PUBWIN_OpenWaitingMessageWin(
win_id,
WIN_ONE_LEVEL,
PUBWIN_SOFTKEY_NONE,
&prompt_str,
PNULL,
IMAGE_EXCEPTIVE_WAIT_ANIMA,
0,
PNULL,
HandleWritePhotoFileWaitWinMsg
);
return TRUE;
}
/*****************************************************************************/
// Description : alert save result
// Global resource dependence :
// Author:
// Note:
/*****************************************************************************/
LOCAL void AlertSaveResult(MMIDC_FFS_WRITE_RESULT_E ffs_result)
{
if (ffs_result == DCFFS_WRITE_SUCCEED)
{
//save success
PUBWIN_OpenPromptAlertWin(
PUBWIN_SOFTKEY_ONE,
TXT_MMI_SAVESUCC,
IMAGE_PROMPT_ICON_SUCCESS,
MMI_3SECONDS,
PNULL
);
}
else if (ffs_result == DCFFS_NOT_ENOUGH_SPACE)
{
//not enough space
PUBWIN_OpenPromptAlertWin(
PUBWIN_SOFTKEY_ONE,
TXT_DC_NOEMPTYSPACE,
IMAGE_PROMPT_ICON_WRONG,
MMI_3SECONDS,
PNULL
);
}
else if (ffs_result == DCFFS_LIST_FULL)
{
//list full
PUBWIN_OpenPromptAlertWin(
PUBWIN_SOFTKEY_ONE,
TXT_VC_FULL,
IMAGE_PROMPT_ICON_WRONG,
MMI_3SECONDS,
PNULL
);
}
else if (ffs_result == DCFFS_WRITE_FAIL)
{
//fs wrong
PUBWIN_OpenPromptAlertWin(
PUBWIN_SOFTKEY_ONE,
TXT_MMI_SAVEFAILED,
IMAGE_PROMPT_ICON_WRONG,
MMI_3SECONDS,
PNULL
);
}
else
{
//do nothing
}
}
/*****************************************************************************/
// Description : alert delete result
// Global resource dependence :
// Author:
// Note:
/*****************************************************************************/
LOCAL void AlertDeleteResult(MMIDC_FFS_DEL_RESULT_E ffs_result)
{
if (!MMK_IsFocusWin(MMIDC_DELETE_WAITING_WIN_ID))
{
return;
}
if (ffs_result == DCFFS_DEL_SUCCEED)
{
//del success
PUBWIN_OpenPromptAlertWin(
PUBWIN_SOFTKEY_ONE,
TXT_VC_DELETESUCC,
IMAGE_PROMPT_ICON_SUCCESS,
MMI_3SECONDS,
PNULL
);
}
else if (ffs_result == DCFFS_DEL_FAIL)
{
//fs wrong
PUBWIN_OpenPromptAlertWin(
PUBWIN_SOFTKEY_ONE,
TXT_MMIMULTIM_FILESYSTEM_ERROR,
IMAGE_PROMPT_ICON_WRONG,
MMI_3SECONDS,
PNULL
);
}
else
{
//do nothing
}
}
/*****************************************************************************/
// Description : open album window
// Global resource dependence :
// Author:
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -