📄 plxbrowsetting.c
字号:
}
if(FALSE == bChanged)
GoBackHistory();
else
{
PLIB_ConfirmBox(NULL, (const WCHAR *)get_string(STR_ID_PLX_BROW_SAVE_SAVEORNOT_CONFIRM),NULL, NULL, NULL, 0, (void *)&nToneId,0, ColorBackConfirmCB);
SetKeyHandler(SettingKeyEndHandler,KEY_END,KEY_EVENT_DOWN);
}
}
*/
/****************************************************************************
* Function ColorBackConfirmCB
* Purpose
* Params
* Return
* Remarks
\****************************************************************************/
/*
static void ColorBackConfirmCB(PLIBEVENT event)
{
if(PEVENT_POSITIVE == event)
ColorSetConfirmOK();
else if(PEVENT_NEGTIVE == event)
GoBack2TheHistory();
}
*/
/****************************************************************************
* Function EntryOfAdvanceSetting
* Purpose enter advance setting screen
* Params
* Return
* Remarks
\****************************************************************************/
void EntryOfAdvanceSetting(void)
{
CreateAdvanceSettingMenu();
if (NULL == hAdvSettingMenu)
{
return;
}
PlxSetDMenuDispInfo(0, IMG_ID_PLX_BROW_SETTING, 0,0, 0,0);
PlxShowDMenu(hAdvSettingMenu, SCR_ID_PLX_BROW_ADVSET, STR_ID_PLX_BROW_ADVANCESETTING, AdvanceSettingEntNty, EntryOfAdvanceSetting);
// ClearKeyHandler(KEY_END,KEY_EVENT_DOWN);
SetKeyHandler(SettingKeyEndHandler,KEY_END,KEY_EVENT_DOWN);
}
/****************************************************************************
* Function CreateAdvanceSettingMenu
* Purpose create the advance setting menu
* Params
* Return
* Remarks
\****************************************************************************/
static void CreateAdvanceSettingMenu(void)
{
if (NULL != hAdvSettingMenu)
{
return;
}
hAdvSettingMenu = PlxCreateDMenu(0);
if (NULL == hAdvSettingMenu)
{
return;
}
PlxInsertDMenuItem(hAdvSettingMenu, -1, 0, DMENU_ID_PLX_BROW_ADVSET_CACHE,
(const char *)GetString(STR_ID_PLX_BROW_CACHESETTING), IMG_GLOBAL_L1);
PlxInsertDMenuItem(hAdvSettingMenu, -1, 0, DMENU_ID_PLX_BROW_ADVSET_COOKIE,
(const char *)GetString(STR_ID_PLX_BROW_COOKIESETTING), IMG_GLOBAL_L2);
PlxInsertDMenuItem(hAdvSettingMenu, -1, 0, DMENU_ID_PLX_BROW_ADVSET_DISP,
(const char *)GetString(STR_ID_PLX_BROW_DISPLAYSETTING), IMG_GLOBAL_L3);
}
/****************************************************************************
* Function AdvanceSettingEntNty
* Purpose advance setting menu notify func
* Params
* Return
* Remarks
\****************************************************************************/
static int AdvanceSettingEntNty(HDMENU hDMenu, unsigned long id, unsigned long event)
{
switch(event)
{
case ENT_RIGHT:
case ENT_OK:
switch(id)
{
case DMENU_ID_PLX_BROW_ADVSET_CACHE:
ncurrHiliteItem = 0;
EntryOfCacheSetting();
break;
case DMENU_ID_PLX_BROW_ADVSET_COOKIE:
ncurrHiliteItem = 0;
EntryOfCookieSetting();
break;
case DMENU_ID_PLX_BROW_ADVSET_DISP:
ncurrHiliteItem = 0;
EntryOfDispSetting();
break;
default:
return 0;
}
break;
case ENT_LEFT:
case ENT_BACK:
GoBackHistory();
PlxDestroyDMenu(hAdvSettingMenu);
hAdvSettingMenu = 0;
break;
default:
return 0;
}
return 0;
}
/****************************************************************************
* Function EntryOfCacheSetting
* Purpose enter cache setting screen
* Params
* Return
* Remarks
\****************************************************************************/
void EntryOfCacheSetting(void)
{
U8* guiBuffer;
U16 CacheIcons[4] ={IMG_GLOBAL_L1, 0, IMG_GLOBAL_L2, 0} ;
#ifdef __PLXBROW_SUPPORT_HOTPLUG_
if(PMSDC_NONE == PlxBrowIsMemCardPluged())
{
PLIB_MessageBox(PMBTYPE_WARNING, NULL, (const WCHAR *)get_string(STR_ID_PLX_BROW_INSERTCARD), UI_POPUP_NOTIFYDURATION_TIME);
return;
}
if (PMSDC_WRONG == PlxBrowIsMemCardPluged())
{
PLIB_NotifyMSDCWrong ();
}
#endif //__PLXBROW_SUPPORT_HOTPLUG_
EntryNewScreen(SCR_ID_PLX_BROW_CACHESET, ExitCacheSettingScreen, NULL, NULL);
guiBuffer = GetCurrGuiBuffer(SCR_ID_PLX_BROW_CACHESET);
InitializeCategory57Screen();
FillCacheSettingCtrlInfo();
RegisterHighlightHandler(CacheHiliteHandler);
ShowCategory57Screen(STR_ID_PLX_BROW_CACHESETTING, IMG_ID_PLX_BROW_SETTING, STR_ID_PLX_BROW_OPTION, IMG_GLOBAL_OK,
STR_GLOBAL_BACK, IMG_GLOBAL_BACK, 4, CacheIcons, wgui_inline_items, ncurrHiliteItem, guiBuffer);
DisableCategory57ScreenDone();
// SetCategory57LeftSoftkeyFunction(CacheSettingOK);
// SetCategory57RightSoftkeyFunctions(CacheSettingBack, GoBackHistory);
// set_wgui_inline_list_menu_status(1);
ChangeLeftSoftkey(STR_ID_PLX_BROW_OPTION, IMG_GLOBAL_OK);
ChangeRightSoftkey(STR_GLOBAL_BACK, IMG_GLOBAL_BACK);
SetLeftSoftkeyFunction(CacheSettingOK, KEY_EVENT_UP);
SetRightSoftkeyFunction(CacheSettingBack, KEY_EVENT_UP);
// ClearKeyHandler(KEY_END,KEY_EVENT_DOWN);
SetKeyHandler(SettingKeyEndHandler,KEY_END,KEY_EVENT_DOWN);
}
/****************************************************************************
* Function ExitCacheSettingScreen
* Purpose
* Params
* Return
* Remarks
\****************************************************************************/
static void ExitCacheSettingScreen(void)
{
history ScrDA; /* Variable to hold the history data*/
S16 nHistory=0;
U16 size;
CloseCategory57Screen();
ScrDA.scrnID = SCR_ID_PLX_BROW_CACHESET;
ScrDA.entryFuncPtr = EntryOfCacheSetting;
pfnUnicodeStrcpy((S8*)ScrDA.inputBuffer,(S8*)&nHistory);
GetCategoryHistory(ScrDA.guiBuffer);
size = (U16)GetCategory57DataSize();
GetCategory57Data ((U8*)ScrDA.inputBuffer );
AddNHistory(ScrDA,size);
}
/****************************************************************************
* Function CacheHiliteHandler
* Purpose
* Params
* Return
* Remarks
\****************************************************************************/
static void CacheHiliteHandler(S32 item_index)
{
ncurrHiliteItem = item_index;
// set_wgui_inline_list_menu_status(1);
ChangeLeftSoftkey(STR_ID_PLX_BROW_OPTION, IMG_GLOBAL_OK);
ChangeRightSoftkey(STR_GLOBAL_BACK, IMG_GLOBAL_BACK);
SetLeftSoftkeyFunction(CacheSettingOK, KEY_EVENT_UP);
SetRightSoftkeyFunction(CacheSettingBack, KEY_EVENT_UP);
}
/****************************************************************************
* Function CacheSettingOK
* Purpose
* Params
* Return
* Remarks
\****************************************************************************/
static void CacheSettingOK(void)
{
/* glBrowSet.bCacheUsed = (BOOL)iYesNo;
glBrowSet.nCacheSize = (iSize + 1) * 10 * 1024;
WriteSetting();
GoBackHistory();
CloseCategory57Screen();
*/
EntryOfCacheSettingMenu();
}
/****************************************************************************
* Function CacheSettingBack
* Purpose
* Params
* Return
* Remarks
\****************************************************************************/
static void CacheSettingBack(void)
{
// int nToneId = WARNING_TONE;
bIsSettingChanged = FALSE;
CloseCategory57Screen();
// if(glBrowSet.bCacheUsed == (BOOL)iYesNo && glBrowSet.nCacheSize == (iSize + 1) * 10 * 1024)
GoBackHistory();
// else
// PLIB_ConfirmBox(NULL, (const WCHAR *)get_string(STR_ID_PLX_BROW_SAVE_SAVEORNOT_CONFIRM),NULL, NULL, NULL, 0, (void *)&nToneId,0, CacheBackConfirmCB);
}
/****************************************************************************
* Function CacheBackConfirmCB
* Purpose
* Params
* Return
* Remarks
\****************************************************************************/
/*
static void CacheBackConfirmCB(PLIBEVENT event)
{
if(PEVENT_POSITIVE == event)
CacheSavedOK();
else if(PEVENT_NEGTIVE == event)
GoBack2TheHistory();
}
*/
/****************************************************************************
* Function FillCacheSettingCtrlInfo
* Purpose fill the cache setting inline edit info
* Params
* Return
* Remarks
\****************************************************************************/
static void FillCacheSettingCtrlInfo(void)
{
SetInlineItemCaption(&wgui_inline_items[0],(U8 *)GetString(STR_ID_PLX_BROW_USECACHE));
pYesNo[0] = (U8*)GetString(STR_GLOBAL_NO );
pYesNo[1] = (U8*)GetString(STR_GLOBAL_YES);
if(FALSE == bIsSettingChanged)
iYesNo = glBrowSet.bCacheUsed;
SetInlineItemActivation(&(wgui_inline_items[1]),INLINE_ITEM_ACTIVATE_WITHOUT_KEY_EVENT,0);
SetInlineItemSelect(&wgui_inline_items[1], 2, pYesNo, &iYesNo);
// RegisterInlineSelectHighlightHandler(&wgui_inline_items[1], CacheSettingYesNoHilight);
SetInlineItemCaption(&wgui_inline_items[2], (U8*)GetString(STR_ID_PLX_BROW_CACHESIZE));
if(FALSE == bIsSettingChanged)
iSize = glBrowSet.nCacheSize / 1024 / 10 - 1;
SetInlineItemActivation(&wgui_inline_items[3], INLINE_ITEM_ACTIVATE_WITHOUT_KEY_EVENT, 0);
SetInlineItemSelect(&wgui_inline_items[3], 5, (U8**)pSize, &iSize);
// RegisterInlineSelectHighlightHandler(&wgui_inline_items[3], CacheSettingSizeHilight);
}
#if 0
/****************************************************************************
* Function CacheSettingYesNoHilight
* Purpose get the cache setting screen's yes-no high light
* Params
* Return
* Remarks
\****************************************************************************/
static void CacheSettingYesNoHilight(S32 index)
{
// set_wgui_inline_list_menu_status(1);
/* if (index == 1)
{
DisableInlineItem(wgui_inline_items, 3);
}
else
{
EnableInlineItem(wgui_inline_items, 3);
}
*/
ChangeLeftSoftkey(STR_ID_PLX_BROW_OPTION, IMG_GLOBAL_OK);
ChangeRightSoftkey(STR_GLOBAL_BACK, IMG_GLOBAL_BACK);
SetLeftSoftkeyFunction(CacheSettingOK, KEY_EVENT_UP);
SetRightSoftkeyFunction(CacheSettingBack, KEY_EVENT_UP);
}
/****************************************************************************
* Function CacheSettingSizeHilight
* Purpose get the cache setting screen's size high light
* Params
* Return
* Remarks
\****************************************************************************/
static void CacheSettingSizeHilight(S32 index)
{
// set_wgui_inline_list_menu_status(1);
ChangeLeftSoftkey(STR_ID_PLX_BROW_OPTION, IMG_GLOBAL_OK);
ChangeRightSoftkey(STR_GLOBAL_BACK, IMG_GLOBAL_BACK);
SetLeftSoftkeyFunction(CacheSettingOK, KEY_EVENT_UP);
SetRightSoftkeyFunction(CacheSettingBack, KEY_EVENT_UP);
}
#endif
/****************************************************************************
* Function EntryOfCacheSettingMenu
* Purpose enter cache setting menu
* Params
* Return
* Remarks
\****************************************************************************/
void EntryOfCacheSettingMenu(void)
{
if (NULL == hCacheSettingMenu)
{
hCacheSettingMenu = PlxCreateDMenu(0);
if (NULL == hCacheSettingMenu)
{
return;
}
PlxInsertDMenuItem(hCacheSettingMenu, -1, 0, DMENU_ID_PLX_BROW_CACHE_SAVE,
GetString(STR_GLOBAL_SAVE), IMG_GLOBAL_L1);
PlxInsertDMenuItem(hCacheSettingMenu, -1, 0, DMENU_ID_PLX_BROW_CACHE_RESET,
GetString(STR_ID_PLX_BROW_DEFAULT), IMG_GLOBAL_L2);
PlxInsertDMenuItem(hCacheSettingMenu, -1, 0, DMENU_ID_PLX_BROW_CACHE_CLEAR,
GetString(STR_ID_PLX_BROW_CLEAR), IMG_GLOBAL_L3);
}
PlxSetDMenuDispInfo(0, IMG_ID_PLX_BROW_SETTING, 0,0, 0,0);
PlxShowDMenu(hCacheSettingMenu, SCR_ID_PLX_BROW_CACHESETMENU, STR_ID_PLX_BROW_CACHESETTING,
CacheSettingMenuNty, EntryOfCacheSettingMenu);
// ClearKeyHandler(KEY_END,KEY_EVENT_DOWN);
SetKeyHandler(SettingKeyEndHandler,KEY_END,KEY_EVENT_DOWN);
}
/****************************************************************************
* Function CacheSettingMenuNty
* Purpose cache setting menu notify func
* Params
* Return
* Remarks
\****************************************************************************/
static int CacheSettingMenuNty(HDMENU hDMenu, unsigned long id, unsigned long event)
{
switch(event)
{
case ENT_RIGHT:
case ENT_OK:
switch(id)
{
case DMENU_ID_PLX_BROW_CACHE_RESET:
CacheResetOK();
break;
case DMENU_ID_PLX_BROW_CACHE_CLEAR:
if(ENT_OK == event)
ClearCacheFile();
break;
case DMENU_ID_PLX_BROW_CACHE_SAVE:
CacheSavedOK();
break;
}
break;
case ENT_LEFT:
// if(id == DMENU_ID_PLX_BROW_CACHE_CLEAR)
// break;
case ENT_BACK:
if(glBrowSet.bCacheUsed != (BOOL) iYesNo || glBrowSet.nCacheSize != (iSize + 1)*10 *1024)
{
bIsSettingChanged = TRUE;
}
GoBackHistory();
if(hDMenu)
PlxDestroyDMenu(hCacheSettingMenu);
hCacheSettingMenu = NULL;
break;
}
return 0;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -