- more config menu's cleanup and restructuring.

This commit is contained in:
Fledge68 2022-06-24 13:05:59 -05:00
parent 6b1dcabf36
commit 3335827419
8 changed files with 169 additions and 298 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.3 MiB

After

Width:  |  Height:  |  Size: 4.4 MiB

View File

@ -1276,7 +1276,7 @@ void CMenu::_buildMenus(void)
_initCheatSettingsMenu(); _initCheatSettingsMenu();
_initSourceMenu(); _initSourceMenu();
_initCfgSrc(); _initCfgSrc();
_initCfgHB(); _initConfigHB();
_initPluginSettingsMenu(); _initPluginSettingsMenu();
_initCategorySettingsMenu(); _initCategorySettingsMenu();
_initGameInfoMenu(); _initGameInfoMenu();
@ -1980,7 +1980,7 @@ void CMenu::_updateText(void)
_textCheatSettings(); _textCheatSettings();
_textConfigGC(); _textConfigGC();
_textPartitionsCfg(); _textPartitionsCfg();
_textCfgHB(); _textConfigHB();
_textGame(); _textGame();
_textDownload(); _textDownload();
_textCode(); _textCode();

View File

@ -883,7 +883,7 @@ private:
void _initCheatSettingsMenu(); void _initCheatSettingsMenu();
void _initSourceMenu(); void _initSourceMenu();
void _initCfgSrc(); void _initCfgSrc();
void _initCfgHB(); void _initConfigHB();
void _initPluginSettingsMenu(); void _initPluginSettingsMenu();
void _initCategorySettingsMenu(); void _initCategorySettingsMenu();
void _initGameInfoMenu(); void _initGameInfoMenu();
@ -897,7 +897,7 @@ private:
// //
void _textSource(void); void _textSource(void);
void _textCfgSrc(void); void _textCfgSrc(void);
void _textCfgHB(void); void _textConfigHB(void);
void _textPluginSettings(void); void _textPluginSettings(void);
void _textCategorySettings(void); void _textCategorySettings(void);
void _textCheatSettings(void); void _textCheatSettings(void);
@ -926,17 +926,17 @@ private:
void _hideCheatSettings(bool instant = false); void _hideCheatSettings(bool instant = false);
void _hideError(bool instant = false); void _hideError(bool instant = false);
void _hideMain(bool instant = false); void _hideMain(bool instant = false);
void _hideConfigMain(bool instant = false); void _hideConfigMain(bool instant = true);
void _hideConfigButtons(bool instant = false); void _hideConfigButtons(bool instant = false);
void _hideConfigGC(bool instant = false); void _hideConfigGC(bool instant = true);
void _hideConfigGCPage(bool instant = false); void _hideConfigHB(bool instant = true);
void _hidePartitionsCfg(bool instant = false); void _hidePartitionsCfg(bool instant = false);
void _hideGame(bool instant = false); void _hideGame(bool instant = false);
void _hideDownload(bool instant = false); void _hideDownload(bool instant = false);
void _hideSettings(bool instant = false); void _hideSettings(bool instant = false);
void _hideCode(bool instant = false); void _hideCode(bool instant = false);
void _hideAbout(bool instant = false); void _hideAbout(bool instant = false);
void _hideBoot(bool instant = false); void _hideBoot(bool instant = true);
void _hideWBFS(bool instant = false); void _hideWBFS(bool instant = false);
void _hideCFTheme(bool instant = false); void _hideCFTheme(bool instant = false);
void _hideGameSettings(bool instant = false); void _hideGameSettings(bool instant = false);
@ -960,8 +960,8 @@ private:
void _showError(void); void _showError(void);
void _showMain(void); void _showMain(void);
void _showConfigMain(int curPage); void _showConfigMain(int curPage);
void _showConfigGC(void); void _showConfigGC(int curPage);
void _showConfigGCPage(void); void _showConfigHB(void);
void _showPartitionsCfg(void); void _showPartitionsCfg(void);
void _showNandEmu(void); void _showNandEmu(void);
void _showGame(void); void _showGame(void);
@ -1011,19 +1011,11 @@ private:
int _getCFVersion(void); int _getCFVersion(void);
// //
void _configMain(void); void _configMain(void);
wstringEx _getChannelName(void);
void _configGC(void); void _configGC(void);
void _partitionsCfg(void); void _partitionsCfg(void);
int _NandEmuCfg(void); int _NandEmuCfg(void);
int _AutoExtractSave(string gameId); int _AutoExtractSave(string gameId);
int _FlashSave(string gameId); int _FlashSave(string gameId);
enum configPageChanges
{
CONFIG_PAGE_DEC = -1,
CONFIG_PAGE_NO_CHANGE = 0,
CONFIG_PAGE_INC = 1,
CONFIG_PAGE_BACK,
};
void _game(bool launch = false); void _game(bool launch = false);
void _downloadUrl(const char *url, u8 **dl_file, u32 *dl_size); void _downloadUrl(const char *url, u8 **dl_file, u32 *dl_size);
void _download(string gameId = string(), int dl_type = 0); void _download(string gameId = string(), int dl_type = 0);
@ -1043,7 +1035,7 @@ private:
void _CheatSettings(); void _CheatSettings();
bool _Source(); bool _Source();
void _CfgSrc(); void _CfgSrc();
void _CfgHB(); void _ConfigHB();
void _PluginSettings(); void _PluginSettings();
void _checkboxesMenu(u8 md); void _checkboxesMenu(u8 md);
void _SM_Editor(); void _SM_Editor();

View File

@ -2,24 +2,12 @@
#include "menu.hpp" #include "menu.hpp"
#include "channel/nand_save.hpp" #include "channel/nand_save.hpp"
TexData m_bootBg;
s16 m_bootLblTitle; s16 m_bootLblTitle;
s16 m_bootBtnBack; s16 m_bootBtnBack;
s16 m_bootLblUser[4]; s16 m_bootLblUser[4];
s16 m_bootLblLoadCIOS;
s16 m_bootBtnLoadCIOS;
s16 m_bootLblCIOSrev;
s16 m_bootLblCurCIOSrev;
s16 m_bootLblCIOSrevM;
s16 m_bootLblCIOSrevP;
s16 m_bootLblUSBPort;
s16 m_bootBtnUSBPort;
s16 m_bootLblSDOnly;
s16 m_bootBtnSDOnly;
u8 set_port = 0; u8 set_port = 0;
void CMenu::_hideBoot(bool instant) void CMenu::_hideBoot(bool instant)
@ -30,50 +18,44 @@ void CMenu::_hideBoot(bool instant)
if(m_bootLblUser[i] != -1) if(m_bootLblUser[i] != -1)
m_btnMgr.hide(m_bootLblUser[i], instant); m_btnMgr.hide(m_bootLblUser[i], instant);
m_btnMgr.hide(m_bootLblLoadCIOS, instant); _hideConfigButtons(instant);
m_btnMgr.hide(m_bootBtnLoadCIOS, instant);
m_btnMgr.hide(m_bootLblCIOSrev, instant);
m_btnMgr.hide(m_bootLblCurCIOSrev, instant);
m_btnMgr.hide(m_bootLblCIOSrevM, instant);
m_btnMgr.hide(m_bootLblCIOSrevP, instant);
m_btnMgr.hide(m_bootLblUSBPort, instant);
m_btnMgr.hide(m_bootBtnUSBPort, instant);
m_btnMgr.hide(m_bootLblSDOnly, instant);
m_btnMgr.hide(m_bootBtnSDOnly, instant);
} }
void CMenu::_showBoot() void CMenu::_showBoot()
{ {
_setBg(m_bootBg, m_bootBg);
m_btnMgr.show(m_bootLblTitle); m_btnMgr.show(m_bootLblTitle);
m_btnMgr.show(m_bootBtnBack); m_btnMgr.show(m_bootBtnBack);
for(u8 i = 0; i < ARRAY_SIZE(m_bootLblUser); ++i) for(u8 i = 0; i < ARRAY_SIZE(m_bootLblUser); ++i)
if(m_bootLblUser[i] != -1) if(m_bootLblUser[i] != -1)
m_btnMgr.show(m_bootLblUser[i]); m_btnMgr.show(m_bootLblUser[i]);
m_btnMgr.setText(m_bootBtnLoadCIOS, _optBoolToString(cur_load)); m_btnMgr.setText(m_configLbl1, _t("cfgbt2", L"Force Load cIOS"));
m_btnMgr.setText(m_bootBtnUSBPort, wfmt(L"%i", set_port)); m_btnMgr.setText(m_configLbl2, _t("cfgbt3", L"Force cIOS Revision"));
m_btnMgr.setText(m_configLbl3, _t("cfgbt4", L"USB Port"));
m_btnMgr.setText(m_configLbl4, _t("cfg719", L"Mount SD only"));
m_btnMgr.setText(m_configBtn1, _optBoolToString(cur_load));
if(cur_ios > 0) if(cur_ios > 0)
m_btnMgr.setText(m_bootLblCurCIOSrev, wfmt(L"%i", cur_ios)); m_btnMgr.setText(m_configLbl2Val, wfmt(L"%i", cur_ios));
else else
m_btnMgr.setText(m_bootLblCurCIOSrev, L"AUTO");// cIOS 249 unless the user changed it via the meta.xml m_btnMgr.setText(m_configLbl2Val, L"AUTO");// cIOS 249 unless the user changed it via the meta.xml
m_btnMgr.setText(m_configBtn3, wfmt(L"%i", set_port));
m_btnMgr.setText(m_configBtn4, m_cfg.getBool("GENERAL", "sd_only") ? _t("yes", L"Yes") : _t("no", L"No"));
m_btnMgr.show(m_bootLblLoadCIOS); m_btnMgr.show(m_configLbl1);
m_btnMgr.show(m_bootBtnLoadCIOS); m_btnMgr.show(m_configBtn1);
m_btnMgr.show(m_bootLblCIOSrev); m_btnMgr.show(m_configLbl2);
m_btnMgr.show(m_bootLblCurCIOSrev); m_btnMgr.show(m_configLbl2Val);
m_btnMgr.show(m_bootLblCIOSrevM); m_btnMgr.show(m_configBtn2M);
m_btnMgr.show(m_bootLblCIOSrevP); m_btnMgr.show(m_configBtn2P);
m_btnMgr.show(m_bootLblUSBPort); m_btnMgr.show(m_configLbl3);
m_btnMgr.show(m_bootBtnUSBPort); m_btnMgr.show(m_configBtn3);
m_btnMgr.setText(m_bootBtnSDOnly, m_cfg.getBool("GENERAL", "sd_only") ? _t("yes", L"Yes") : _t("no", L"No")); m_btnMgr.show(m_configLbl4);
m_btnMgr.show(m_bootLblSDOnly); m_btnMgr.show(m_configBtn4);
m_btnMgr.show(m_bootBtnSDOnly);
} }
void CMenu::_Boot(void) void CMenu::_Boot(void)
@ -104,14 +86,14 @@ void CMenu::_Boot(void)
{ {
if(m_btnMgr.selected(m_bootBtnBack)) if(m_btnMgr.selected(m_bootBtnBack))
break; break;
else if(m_btnMgr.selected(m_bootBtnLoadCIOS)) else if(m_btnMgr.selected(m_configBtn1))
{ {
cur_load = !cur_load; cur_load = !cur_load;
m_btnMgr.setText(m_bootBtnLoadCIOS, _optBoolToString(cur_load)); m_btnMgr.setText(m_configBtn1, _optBoolToString(cur_load));
} }
else if(m_btnMgr.selected(m_bootLblCIOSrevM) || m_btnMgr.selected(m_bootLblCIOSrevP)) else if(m_btnMgr.selected(m_configBtn2M) || m_btnMgr.selected(m_configBtn2P))
{ {
bool increase = m_btnMgr.selected(m_bootLblCIOSrevP); bool increase = m_btnMgr.selected(m_configBtn2P);
CIOSItr itr = _installed_cios.find(cur_ios); CIOSItr itr = _installed_cios.find(cur_ios);
if(increase) if(increase)
{ {
@ -127,19 +109,19 @@ void CMenu::_Boot(void)
} }
cur_ios = itr->first; cur_ios = itr->first;
if(cur_ios > 0) if(cur_ios > 0)
m_btnMgr.setText(m_bootLblCurCIOSrev, wfmt(L"%i", cur_ios)); m_btnMgr.setText(m_configLbl2Val, wfmt(L"%i", cur_ios));
else else
m_btnMgr.setText(m_bootLblCurCIOSrev, L"AUTO"); m_btnMgr.setText(m_configLbl2Val, L"AUTO");
} }
else if(m_btnMgr.selected(m_bootBtnUSBPort)) else if(m_btnMgr.selected(m_configBtn3))
{ {
set_port = !set_port; set_port = !set_port;
m_btnMgr.setText(m_bootBtnUSBPort, wfmt(L"%i", set_port)); m_btnMgr.setText(m_configBtn3, wfmt(L"%i", set_port));
} }
else if (m_btnMgr.selected(m_bootBtnSDOnly)) else if (m_btnMgr.selected(m_configBtn4))
{ {
cur_sd = !cur_sd; cur_sd = !cur_sd;
m_btnMgr.setText(m_bootBtnSDOnly, cur_sd ? _t("yes", L"Yes") : _t("no", L"No")); m_btnMgr.setText(m_configBtn4, cur_sd ? _t("yes", L"Yes") : _t("no", L"No"));
} }
} }
} }
@ -164,41 +146,15 @@ void CMenu::_Boot(void)
void CMenu::_initBoot(void) void CMenu::_initBoot(void)
{ {
m_bootBg = _texture("BOOT/BG", "texture", theme.bg, false);
_addUserLabels(m_bootLblUser, ARRAY_SIZE(m_bootLblUser), "BOOT"); _addUserLabels(m_bootLblUser, ARRAY_SIZE(m_bootLblUser), "BOOT");
m_bootLblTitle = _addLabel("BOOT/TITLE", theme.titleFont, L"", 0, 10, 640, 60, theme.titleFontColor, FTGX_JUSTIFY_CENTER | FTGX_ALIGN_MIDDLE); m_bootLblTitle = _addLabel("BOOT/TITLE", theme.titleFont, L"", 0, 10, 640, 60, theme.titleFontColor, FTGX_JUSTIFY_CENTER | FTGX_ALIGN_MIDDLE);
m_bootBtnBack = _addButton("BOOT/BACK_BTN", theme.btnFont, L"", 420, 400, 200, 48, theme.btnFontColor); m_bootBtnBack = _addButton("BOOT/BACK_BTN", theme.btnFont, L"", 420, 400, 200, 48, theme.btnFontColor);
m_bootLblLoadCIOS = _addLabel("BOOT/LOAD_CIOS", theme.lblFont, L"", 20, 125, 385, 56, theme.lblFontColor, FTGX_JUSTIFY_LEFT | FTGX_ALIGN_MIDDLE);
m_bootBtnLoadCIOS = _addButton("BOOT/LOAD_CIOS_BTN", theme.btnFont, L"", 420, 130, 200, 48, theme.btnFontColor);
m_bootLblCIOSrev = _addLabel("BOOT/CIOS_REV", theme.lblFont, L"", 20, 185, 385, 56, theme.lblFontColor, FTGX_JUSTIFY_LEFT | FTGX_ALIGN_MIDDLE);
m_bootLblCurCIOSrev = _addLabel("BOOT/CIOS_REV_BTN", theme.btnFont, L"", 468, 190, 104, 48, theme.btnFontColor, FTGX_JUSTIFY_CENTER | FTGX_ALIGN_MIDDLE, theme.btnTexC);
m_bootLblCIOSrevM = _addPicButton("BOOT/CIOS_REV_MINUS", theme.btnTexMinus, theme.btnTexMinusS, 420, 190, 48, 48);
m_bootLblCIOSrevP = _addPicButton("BOOT/CIOS_REV_PLUS", theme.btnTexPlus, theme.btnTexPlusS, 572, 190, 48, 48);
m_bootLblUSBPort = _addLabel("BOOT/USB_PORT", theme.lblFont, L"", 20, 245, 385, 56, theme.lblFontColor, FTGX_JUSTIFY_LEFT | FTGX_ALIGN_MIDDLE);
m_bootBtnUSBPort = _addButton("BOOT/USB_PORT_BTN", theme.btnFont, L"", 420, 250, 200, 48, theme.btnFontColor);
m_bootLblSDOnly = _addLabel("BOOT/SD_ONLY", theme.lblFont, L"", 20, 305, 385, 56, theme.lblFontColor, FTGX_JUSTIFY_LEFT | FTGX_ALIGN_MIDDLE);
m_bootBtnSDOnly = _addButton("BOOT/SD_ONLY_BTN", theme.btnFont, L"", 420, 310, 200, 48, theme.btnFontColor);
_setHideAnim(m_bootLblTitle, "BOOT/TITLE", 0, 0, -2.f, 0.f); _setHideAnim(m_bootLblTitle, "BOOT/TITLE", 0, 0, -2.f, 0.f);
_setHideAnim(m_bootBtnBack, "BOOT/BACK_BTN", 0, 0, 1.f, -1.f); _setHideAnim(m_bootBtnBack, "BOOT/BACK_BTN", 0, 0, 1.f, -1.f);
_setHideAnim(m_bootLblLoadCIOS, "BOOT/LOAD_CIOS", 50, 0, -2.f, 0.f);
_setHideAnim(m_bootBtnLoadCIOS, "BOOT/LOAD_CIOS_BTN", -50, 0, 1.f, 0.f);
_setHideAnim(m_bootLblCIOSrev, "BOOT/CIOS_REV", 50, 0, -2.f, 0.f);
_setHideAnim(m_bootLblCurCIOSrev, "BOOT/CIOS_REV_BTN", -50, 0, 1.f, 0.f);
_setHideAnim(m_bootLblCIOSrevM, "BOOT/CIOS_REV_MINUS", -50, 0, 1.f, 0.f);
_setHideAnim(m_bootLblCIOSrevP, "BOOT/CIOS_REV_PLUS", -50, 0, 1.f, 0.f);
_setHideAnim(m_bootLblUSBPort, "BOOT/USB_PORT", 50, 0, -2.f, 0.f);
_setHideAnim(m_bootBtnUSBPort, "BOOT/USB_PORT_BTN", -50, 0, 1.f, 0.f);
_setHideAnim(m_bootLblSDOnly, "BOOT/SD_ONLY", 50, 0, -2.f, 0.f);
_setHideAnim(m_bootBtnSDOnly, "BOOT/SD_ONLY_BTN", -50, 0, 1.f, 0.f);
_hideBoot(true); _hideBoot(true);
_textBoot(); _textBoot();
} }
@ -206,9 +162,5 @@ void CMenu::_initBoot(void)
void CMenu::_textBoot(void) void CMenu::_textBoot(void)
{ {
m_btnMgr.setText(m_bootLblTitle, _t("cfgbt1", L"Startup Settings")); m_btnMgr.setText(m_bootLblTitle, _t("cfgbt1", L"Startup Settings"));
m_btnMgr.setText(m_bootLblLoadCIOS, _t("cfgbt2", L"Force Load cIOS"));
m_btnMgr.setText(m_bootLblCIOSrev, _t("cfgbt3", L"Force cIOS Revision"));
m_btnMgr.setText(m_bootLblUSBPort, _t("cfgbt4", L"USB Port"));
m_btnMgr.setText(m_bootLblSDOnly, _t("cfg719", L"Mount SD only"));
m_btnMgr.setText(m_bootBtnBack, _t("cfg10", L"Back")); m_btnMgr.setText(m_bootBtnBack, _t("cfg10", L"Back"));
} }

View File

@ -68,7 +68,8 @@ bool CMenu::_code(char code[4], bool erase)
if(m_btnMgr.selected(m_codeBtnKey[i])) if(m_btnMgr.selected(m_codeBtnKey[i]))
{ {
codeLbl[n * 2] = 'X'; codeLbl[n * 2] = 'X';
code[n++] = '0' + i; code[n] = '0' + i;
n++;
m_btnMgr.setText(m_codeLblTitle, codeLbl); m_btnMgr.setText(m_codeLblTitle, codeLbl);
break; break;
} }
@ -92,7 +93,8 @@ bool CMenu::_code(char code[4], bool erase)
if(c != -1) if(c != -1)
{ {
codeLbl[n * 2] = 'X'; codeLbl[n * 2] = 'X';
code[n++] = '0' + c; code[n] = '0' + c;
n++;
m_btnMgr.setText(m_codeLblTitle, codeLbl); m_btnMgr.setText(m_codeLblTitle, codeLbl);
} }
} }

View File

@ -11,8 +11,6 @@ s16 m_configGCLblPage;
s16 m_configGCBtnPageM; s16 m_configGCBtnPageM;
s16 m_configGCBtnPageP; s16 m_configGCBtnPageP;
static int curPage;
template <class T> static inline T loopNum(T i, T s) template <class T> static inline T loopNum(T i, T s)
{ {
return (i + s) % s; return (i + s) % s;
@ -21,18 +19,19 @@ template <class T> static inline T loopNum(T i, T s)
void CMenu::_hideConfigGC(bool instant) void CMenu::_hideConfigGC(bool instant)
{ {
m_btnMgr.hide(m_configGCLblTitle, instant); m_btnMgr.hide(m_configGCLblTitle, instant);
m_btnMgr.hide(m_configGCBtnBack, instant);
m_btnMgr.hide(m_configGCLblPage, instant); m_btnMgr.hide(m_configGCLblPage, instant);
m_btnMgr.hide(m_configGCBtnPageM, instant); m_btnMgr.hide(m_configGCBtnPageM, instant);
m_btnMgr.hide(m_configGCBtnPageP, instant); m_btnMgr.hide(m_configGCBtnPageP, instant);
m_btnMgr.hide(m_configGCBtnBack, instant);
for(u8 i = 0; i < ARRAY_SIZE(m_configGCLblUser); ++i) for(u8 i = 0; i < ARRAY_SIZE(m_configGCLblUser); ++i)
if(m_configGCLblUser[i] != -1) if(m_configGCLblUser[i] != -1)
m_btnMgr.hide(m_configGCLblUser[i], instant); m_btnMgr.hide(m_configGCLblUser[i], instant);
_hideConfigButtons(instant); _hideConfigButtons(instant);
} }
void CMenu::_showConfigGC(void) void CMenu::_showConfigGC(int curPage)
{ {
_setBg(m_configGCBg, m_configGCBg);
m_btnMgr.show(m_configGCLblTitle); m_btnMgr.show(m_configGCLblTitle);
m_btnMgr.show(m_configGCBtnBack); m_btnMgr.show(m_configGCBtnBack);
for(u8 i = 0; i < ARRAY_SIZE(m_configGCLblUser); ++i) for(u8 i = 0; i < ARRAY_SIZE(m_configGCLblUser); ++i)
@ -42,14 +41,10 @@ void CMenu::_showConfigGC(void)
m_btnMgr.show(m_configGCLblPage); m_btnMgr.show(m_configGCLblPage);
m_btnMgr.show(m_configGCBtnPageM); m_btnMgr.show(m_configGCBtnPageM);
m_btnMgr.show(m_configGCBtnPageP); m_btnMgr.show(m_configGCBtnPageP);
_showConfigGCPage();
}
void CMenu::_showConfigGCPage(void)
{
_hideConfigButtons(true);
m_btnMgr.setText(m_configGCLblPage, wfmt(L"%i / %i", curPage, 2)); m_btnMgr.setText(m_configGCLblPage, wfmt(L"%i / %i", curPage, 2));
_hideConfigButtons(true);
int i; int i;
if(curPage == 1) if(curPage == 1)
{ {
@ -108,10 +103,9 @@ void CMenu::_configGC(void)
{ {
int i; int i;
bool j; bool j;
curPage = 1; int curPage = 1;
SetupInput(); SetupInput();
_setBg(m_configGCBg, m_configGCBg); _showConfigGC(curPage);
_showConfigGC();
while(!m_exit) while(!m_exit)
{ {
_mainLoopCommon(); _mainLoopCommon();
@ -128,7 +122,7 @@ void CMenu::_configGC(void)
curPage = 2; curPage = 2;
if(!BTN_A_PRESSED) if(!BTN_A_PRESSED)
m_btnMgr.click(m_configGCBtnPageM); m_btnMgr.click(m_configGCBtnPageM);
_showConfigGCPage(); _showConfigGC(curPage);
} }
else if(BTN_RIGHT_PRESSED || (BTN_A_PRESSED && m_btnMgr.selected(m_configGCBtnPageP))) else if(BTN_RIGHT_PRESSED || (BTN_A_PRESSED && m_btnMgr.selected(m_configGCBtnPageP)))
{ {
@ -137,7 +131,7 @@ void CMenu::_configGC(void)
curPage = 1; curPage = 1;
if(!BTN_A_PRESSED) if(!BTN_A_PRESSED)
m_btnMgr.click(m_configGCBtnPageP); m_btnMgr.click(m_configGCBtnPageP);
_showConfigGCPage(); _showConfigGC(curPage);
} }
else if(BTN_A_PRESSED) else if(BTN_A_PRESSED)
{ {

View File

@ -5,47 +5,9 @@ s16 m_cfghbLblTitle;
s16 m_cfghbBtnBack; s16 m_cfghbBtnBack;
s16 m_cfghbLblUser[4]; s16 m_cfghbLblUser[4];
s16 m_cfghbLblHideHB;
s16 m_cfghbBtnHideHB;
s16 m_cfghbLblSmallbox;
s16 m_cfghbBtnSmallbox;
s16 m_cfghbLblBoxMode;
s16 m_cfghbBtnBoxMode;
s16 m_cfghbLblPartition;
s16 m_cfghbLblPartitionVal;
s16 m_cfghbBtnPartitionP;
s16 m_cfghbBtnPartitionM;
TexData m_cfghbBg; TexData m_cfghbBg;
static void _showCfgHB(void) void CMenu::_hideConfigHB(bool instant)
{
m_btnMgr.show(m_cfghbLblTitle);
m_btnMgr.show(m_cfghbBtnBack);
for(u8 i = 0; i < ARRAY_SIZE(m_cfghbLblUser); ++i)
if(m_cfghbLblUser[i] != -1)
m_btnMgr.show(m_cfghbLblUser[i]);
m_btnMgr.show(m_cfghbLblHideHB);
m_btnMgr.show(m_cfghbBtnHideHB);
m_btnMgr.show(m_cfghbLblSmallbox);
m_btnMgr.show(m_cfghbBtnSmallbox);
m_btnMgr.show(m_cfghbLblBoxMode);
m_btnMgr.show(m_cfghbBtnBoxMode);
m_btnMgr.show(m_cfghbLblPartition);
m_btnMgr.show(m_cfghbLblPartitionVal);
m_btnMgr.show(m_cfghbBtnPartitionP);
m_btnMgr.show(m_cfghbBtnPartitionM);
}
static void _hideCfgHB(bool instant)
{ {
m_btnMgr.hide(m_cfghbLblTitle, instant); m_btnMgr.hide(m_cfghbLblTitle, instant);
m_btnMgr.hide(m_cfghbBtnBack, instant); m_btnMgr.hide(m_cfghbBtnBack, instant);
@ -53,34 +15,50 @@ static void _hideCfgHB(bool instant)
if(m_cfghbLblUser[i] != -1) if(m_cfghbLblUser[i] != -1)
m_btnMgr.hide(m_cfghbLblUser[i], instant); m_btnMgr.hide(m_cfghbLblUser[i], instant);
m_btnMgr.hide(m_cfghbLblHideHB, instant); _hideConfigButtons(instant);
m_btnMgr.hide(m_cfghbBtnHideHB, instant);
m_btnMgr.hide(m_cfghbLblSmallbox, instant);
m_btnMgr.hide(m_cfghbBtnSmallbox, instant);
m_btnMgr.hide(m_cfghbLblBoxMode, instant);
m_btnMgr.hide(m_cfghbBtnBoxMode, instant);
m_btnMgr.hide(m_cfghbLblPartition, instant);
m_btnMgr.hide(m_cfghbLblPartitionVal, instant);
m_btnMgr.hide(m_cfghbBtnPartitionP, instant);
m_btnMgr.hide(m_cfghbBtnPartitionM, instant);
} }
void CMenu::_CfgHB(void) void CMenu::_showConfigHB(void)
{ {
m_btnMgr.setText(m_cfghbBtnHideHB, m_cfg.getBool(HOMEBREW_DOMAIN, "disable", false) ? _t("yes", L"Yes") : _t("no", L"No")); _setBg(m_cfghbBg, m_cfghbBg);
m_btnMgr.setText(m_cfghbBtnSmallbox, m_cfg.getBool(HOMEBREW_DOMAIN, "smallbox") ? _t("on", L"On") : _t("off", L"Off")); m_btnMgr.show(m_cfghbLblTitle);
m_btnMgr.setText(m_cfghbBtnBoxMode, m_cfg.getBool(HOMEBREW_DOMAIN, "box_mode") ? _t("on", L"On") : _t("off", L"Off")); m_btnMgr.show(m_cfghbBtnBack);
for(u8 i = 0; i < ARRAY_SIZE(m_cfghbLblUser); ++i)
if(m_cfghbLblUser[i] != -1)
m_btnMgr.show(m_cfghbLblUser[i]);
m_btnMgr.setText(m_configLbl1, _t("cfghb5", L"Hide homebrew button"));
m_btnMgr.setText(m_configLbl2, _t("cfghb2", L"Coverflow Smallbox"));
m_btnMgr.setText(m_configLbl3, _t("cfghb4", L"Box Mode"));
m_btnMgr.setText(m_configLbl4, _t("cfghb3", L"Homebrew Partition"));
m_btnMgr.setText(m_configBtn1, m_cfg.getBool(HOMEBREW_DOMAIN, "disable", false) ? _t("yes", L"Yes") : _t("no", L"No"));
m_btnMgr.setText(m_configBtn2, m_cfg.getBool(HOMEBREW_DOMAIN, "smallbox") ? _t("on", L"On") : _t("off", L"Off"));
m_btnMgr.setText(m_configBtn3, m_cfg.getBool(HOMEBREW_DOMAIN, "box_mode") ? _t("on", L"On") : _t("off", L"Off"));
currentPartition = m_cfg.getInt(HOMEBREW_DOMAIN, "partition", 0); currentPartition = m_cfg.getInt(HOMEBREW_DOMAIN, "partition", 0);
const char *partitionname = DeviceName[currentPartition]; const char *partitionname = DeviceName[currentPartition];
m_btnMgr.setText(m_cfghbLblPartitionVal, upperCase(partitionname)); m_btnMgr.setText(m_configLbl4Val, upperCase(partitionname));
m_btnMgr.show(m_configLbl1);
m_btnMgr.show(m_configBtn1);
m_btnMgr.show(m_configLbl2);
m_btnMgr.show(m_configBtn2);
m_btnMgr.show(m_configLbl3);
m_btnMgr.show(m_configBtn3);
m_btnMgr.show(m_configLbl4);
m_btnMgr.show(m_configLbl4Val);
m_btnMgr.show(m_configBtn4P);
m_btnMgr.show(m_configBtn4M);
}
void CMenu::_ConfigHB(void)
{
SetupInput(); SetupInput();
_setBg(m_cfghbBg, m_cfghbBg); _showConfigHB();
_showCfgHB();
while(!m_exit) while(!m_exit)
{ {
@ -95,39 +73,39 @@ void CMenu::_CfgHB(void)
{ {
if(m_btnMgr.selected(m_cfghbBtnBack)) if(m_btnMgr.selected(m_cfghbBtnBack))
break; break;
else if (m_btnMgr.selected(m_cfghbBtnHideHB)) else if (m_btnMgr.selected(m_configBtn1))
{ {
m_cfg.setBool(HOMEBREW_DOMAIN, "disable", !m_cfg.getBool(HOMEBREW_DOMAIN, "disable")); m_cfg.setBool(HOMEBREW_DOMAIN, "disable", !m_cfg.getBool(HOMEBREW_DOMAIN, "disable"));
m_btnMgr.setText(m_cfghbBtnHideHB, m_cfg.getBool(HOMEBREW_DOMAIN, "disable") ? _t("yes", L"Yes") : _t("no", L"No")); m_btnMgr.setText(m_configBtn1, m_cfg.getBool(HOMEBREW_DOMAIN, "disable") ? _t("yes", L"Yes") : _t("no", L"No"));
} }
else if (m_btnMgr.selected(m_cfghbBtnSmallbox)) else if (m_btnMgr.selected(m_configBtn2))
{ {
m_refreshGameList = true; m_refreshGameList = true;
m_cfg.setBool(HOMEBREW_DOMAIN, "update_cache", true); m_cfg.setBool(HOMEBREW_DOMAIN, "update_cache", true);
m_cfg.setBool(HOMEBREW_DOMAIN, "smallbox", !m_cfg.getBool(HOMEBREW_DOMAIN, "smallbox", false)); m_cfg.setBool(HOMEBREW_DOMAIN, "smallbox", !m_cfg.getBool(HOMEBREW_DOMAIN, "smallbox", false));
m_btnMgr.setText(m_cfghbBtnSmallbox, m_cfg.getBool(HOMEBREW_DOMAIN, "smallbox") ? _t("on", L"On") : _t("off", L"Off")); m_btnMgr.setText(m_configBtn2, m_cfg.getBool(HOMEBREW_DOMAIN, "smallbox") ? _t("on", L"On") : _t("off", L"Off"));
} }
else if (m_btnMgr.selected(m_cfghbBtnBoxMode)) else if (m_btnMgr.selected(m_configBtn3))
{ {
m_refreshGameList = true; m_refreshGameList = true;
m_cfg.setBool(HOMEBREW_DOMAIN, "box_mode", !m_cfg.getBool(HOMEBREW_DOMAIN, "box_mode", false)); m_cfg.setBool(HOMEBREW_DOMAIN, "box_mode", !m_cfg.getBool(HOMEBREW_DOMAIN, "box_mode", false));
m_btnMgr.setText(m_cfghbBtnBoxMode, m_cfg.getBool(HOMEBREW_DOMAIN, "box_mode") ? _t("on", L"On") : _t("off", L"Off")); m_btnMgr.setText(m_configBtn3, m_cfg.getBool(HOMEBREW_DOMAIN, "box_mode") ? _t("on", L"On") : _t("off", L"Off"));
} }
else if (m_btnMgr.selected(m_cfghbBtnPartitionP) || m_btnMgr.selected(m_cfghbBtnPartitionM)) else if (m_btnMgr.selected(m_configBtn4P) || m_btnMgr.selected(m_configBtn4M))
{ {
m_refreshGameList = true; m_refreshGameList = true;
m_cfg.setBool(HOMEBREW_DOMAIN, "update_cache", true); m_cfg.setBool(HOMEBREW_DOMAIN, "update_cache", true);
s8 direction = m_btnMgr.selected(m_cfghbBtnPartitionP) ? 1 : -1; s8 direction = m_btnMgr.selected(m_configBtn4P) ? 1 : -1;
_setPartition(direction); _setPartition(direction);
const char *partitionname = DeviceName[currentPartition]; const char *partitionname = DeviceName[currentPartition];
m_btnMgr.setText(m_cfghbLblPartitionVal, upperCase(partitionname)); m_btnMgr.setText(m_configLbl4Val, upperCase(partitionname));
} }
} }
} }
_hideCfgHB(true); _hideConfigHB();
} }
void CMenu::_initCfgHB(void) void CMenu::_initConfigHB(void)
{ {
m_cfghbBg = _texture("CFG_HB/BG", "texture", theme.bg, false); m_cfghbBg = _texture("CFG_HB/BG", "texture", theme.bg, false);
@ -135,47 +113,15 @@ void CMenu::_initCfgHB(void)
m_cfghbLblTitle = _addLabel("CFG_HB/TITLE", theme.titleFont, L"", 0, 10, 640, 60, theme.titleFontColor, FTGX_JUSTIFY_CENTER | FTGX_ALIGN_MIDDLE); m_cfghbLblTitle = _addLabel("CFG_HB/TITLE", theme.titleFont, L"", 0, 10, 640, 60, theme.titleFontColor, FTGX_JUSTIFY_CENTER | FTGX_ALIGN_MIDDLE);
m_cfghbBtnBack = _addButton("CFG_HB/BACK_BTN", theme.btnFont, L"", 420, 400, 200, 48, theme.btnFontColor); m_cfghbBtnBack = _addButton("CFG_HB/BACK_BTN", theme.btnFont, L"", 420, 400, 200, 48, theme.btnFontColor);
m_cfghbLblHideHB = _addLabel("CFG_HB/HIDE_HB", theme.lblFont, L"", 20, 125, 385, 56, theme.lblFontColor, FTGX_JUSTIFY_LEFT | FTGX_ALIGN_MIDDLE);
m_cfghbBtnHideHB = _addButton("CFG_HB/HIDE_HB_BTN", theme.btnFont, L"", 420, 130, 200, 48, theme.btnFontColor);
m_cfghbLblSmallbox = _addLabel("CFG_HB/HB_SMALLBOX", theme.lblFont, L"", 20, 185, 385, 56, theme.lblFontColor, FTGX_JUSTIFY_LEFT | FTGX_ALIGN_MIDDLE);
m_cfghbBtnSmallbox = _addButton("CFG_HB/HB_SMALLBOX_BTN", theme.btnFont, L"", 420, 190, 200, 48, theme.btnFontColor);
m_cfghbLblBoxMode = _addLabel("CFG_HB/HB_BOXMODE", theme.lblFont, L"", 20, 245, 385, 56, theme.lblFontColor, FTGX_JUSTIFY_LEFT | FTGX_ALIGN_MIDDLE);
m_cfghbBtnBoxMode = _addButton("CFG_HB/HB_BOXMODE_BTN", theme.btnFont, L"", 420, 250, 200, 48, theme.btnFontColor);
m_cfghbLblPartition = _addLabel("CFG_HB/HB_PARTITION", theme.lblFont, L"", 20, 305, 385, 56, theme.lblFontColor, FTGX_JUSTIFY_LEFT | FTGX_ALIGN_MIDDLE);
m_cfghbLblPartitionVal = _addLabel("CFG_HB/HB_PARTITION_VAL", theme.btnFont, L"", 468, 310, 104, 48, theme.btnFontColor, FTGX_JUSTIFY_CENTER | FTGX_ALIGN_MIDDLE, theme.btnTexC);
m_cfghbBtnPartitionM = _addPicButton("CFG_HB/HB_PARTITION_MINUS", theme.btnTexMinus, theme.btnTexMinusS, 420, 310, 48, 48);
m_cfghbBtnPartitionP = _addPicButton("CFG_HB/HB_PARTITION_PLUS", theme.btnTexPlus, theme.btnTexPlusS, 572, 310, 48, 48);
_setHideAnim(m_cfghbLblTitle, "CFG_HB/TITLE", 0, 0, -2.f, 0.f); _setHideAnim(m_cfghbLblTitle, "CFG_HB/TITLE", 0, 0, -2.f, 0.f);
_setHideAnim(m_cfghbBtnBack, "CFG_HB/BACK_BTN", 0, 0, 1.f, -1.f); _setHideAnim(m_cfghbBtnBack, "CFG_HB/BACK_BTN", 0, 0, 1.f, -1.f);
_setHideAnim(m_cfghbLblHideHB, "CFG_HB/HIDE_HB", -50, 0, -2.f, 0.f); _hideConfigHB(true);
_setHideAnim(m_cfghbBtnHideHB, "CFG_HB/HIDE_HB_BTN", -50, 0, 1.f, 0.f); _textConfigHB();
_setHideAnim(m_cfghbLblSmallbox, "CFG_HB/HB_SMALLBOX", -50, 0, -2.f, 0.f);
_setHideAnim(m_cfghbBtnSmallbox, "CFG_HB/HB_SMALLBOX_BTN", -50, 0, 1.f, 0.f);
_setHideAnim(m_cfghbLblBoxMode, "CFG_HB/HB_BOXMODE", -50, 0, -2.f, 0.f);
_setHideAnim(m_cfghbBtnBoxMode, "CFG_HB/HB_BOXMODE_BTN", -50, 0, 1.f, 0.f);
_setHideAnim(m_cfghbLblPartition, "CFG_HB/HB_PARTITION", -50, 0, -2.f, 0.f);
_setHideAnim(m_cfghbLblPartitionVal, "CFG_HB/HB_PARTITION_VAL", -50, 0, 1.f, 0.f);
_setHideAnim(m_cfghbBtnPartitionM, "CFG_HB/HB_PARTITION_MINUS", -50, 0, 1.f, 0.f);
_setHideAnim(m_cfghbBtnPartitionP, "CFG_HB/HB_PARTITION_PLUS", -50, 0, 1.f, 0.f);
_hideCfgHB(true);
_textCfgHB();
} }
void CMenu::_textCfgHB(void) void CMenu::_textConfigHB(void)
{ {
m_btnMgr.setText(m_cfghbLblTitle, _t("cfghb1", L"Homebrew Settings")); m_btnMgr.setText(m_cfghbLblTitle, _t("cfghb1", L"Homebrew Settings"));
m_btnMgr.setText(m_cfghbLblHideHB, _t("cfghb5", L"Hide homebrew button"));
m_btnMgr.setText(m_cfghbLblSmallbox, _t("cfghb2", L"Coverflow Smallbox"));
m_btnMgr.setText(m_cfghbLblBoxMode, _t("cfghb4", L"Box Mode"));
m_btnMgr.setText(m_cfghbLblPartition, _t("cfghb3", L"Homebrew Partition"));
m_btnMgr.setText(m_cfghbBtnBack, _t("cfg10", L"Back")); m_btnMgr.setText(m_cfghbBtnBack, _t("cfg10", L"Back"));
} }

View File

@ -49,7 +49,8 @@ void listThemes(const char * path, vector<string> &themes)
/* page 4 stuff */ /* page 4 stuff */
Config custom_titles; Config custom_titles;
int currentChannelIndex = -1; int currentChannelIndex = -1;
int amountOfChannels = -1; int amountOfChannels = 0;
wstringEx channelName;
const CMenu::SOption CMenu::_exitTo[3] = { const CMenu::SOption CMenu::_exitTo[3] = {
{ "menu", L"System Menu" }, { "menu", L"System Menu" },
@ -57,26 +58,6 @@ const CMenu::SOption CMenu::_exitTo[3] = {
{ "wiiu", L"Wii U Menu" }, { "wiiu", L"Wii U Menu" },
}; };
wstringEx CMenu::_getChannelName()
{
wstringEx channelName = m_loc.getWString(m_curLanguage, "disabled", L"Disabled");
const string &currentChanId = m_cfg.getString("GENERAL", "returnto");
currentChannelIndex = -1;
if(!currentChanId.empty())
{
for(int i = 0; i < amountOfChannels; i++)
{
if(strncmp(currentChanId.c_str(), ChannelHandle.GetId(i), 4) == 0)
{
channelName = custom_titles.getWString("TITLES", currentChanId, ChannelHandle.GetName(i));
currentChannelIndex = i;
break;
}
}
}
return channelName;
}
void CMenu::_hideConfigButtons(bool instant) void CMenu::_hideConfigButtons(bool instant)
{ {
m_btnMgr.hide(m_configLbl1, instant); m_btnMgr.hide(m_configLbl1, instant);
@ -112,12 +93,11 @@ void CMenu::_hideConfigMain(bool instant)
m_btnMgr.hide(m_configLblPage, instant); m_btnMgr.hide(m_configLblPage, instant);
m_btnMgr.hide(m_configBtnPageM, instant); m_btnMgr.hide(m_configBtnPageM, instant);
m_btnMgr.hide(m_configBtnPageP, instant); m_btnMgr.hide(m_configBtnPageP, instant);
_hideConfigButtons(instant);
for(u8 i = 0; i < ARRAY_SIZE(m_configLblUser); ++i) for(u8 i = 0; i < ARRAY_SIZE(m_configLblUser); ++i)
if(m_configLblUser[i] != -1) if(m_configLblUser[i] != -1)
m_btnMgr.hide(m_configLblUser[i], instant); m_btnMgr.hide(m_configLblUser[i], instant);
_hideConfigButtons(instant);
} }
void CMenu::_showConfigMain(int curPage) void CMenu::_showConfigMain(int curPage)
@ -125,43 +105,16 @@ void CMenu::_showConfigMain(int curPage)
_setBg(m_configBg, m_configBg); _setBg(m_configBg, m_configBg);
m_btnMgr.show(m_configLblTitle); m_btnMgr.show(m_configLblTitle);
m_btnMgr.show(m_configBtnBack); m_btnMgr.show(m_configBtnBack);
for(u8 i = 0; i < ARRAY_SIZE(m_configLblUser); ++i)
if(m_configLblUser[i] != -1)
m_btnMgr.show(m_configLblUser[i]);
m_btnMgr.show(m_configLblPage); m_btnMgr.show(m_configLblPage);
m_btnMgr.show(m_configBtnPageM); m_btnMgr.show(m_configBtnPageM);
m_btnMgr.show(m_configBtnPageP); m_btnMgr.show(m_configBtnPageP);
m_btnMgr.setText(m_configLblPage, wfmt(L"%i / %i", curPage, m_locked ? curPage : _nbCfgPages)); m_btnMgr.setText(m_configLblPage, wfmt(L"%i / %i", curPage, m_locked ? curPage : _nbCfgPages));
m_btnMgr.setText(m_configLblTitle, _t("cfg1", L"Settings"));
m_btnMgr.setText(m_configBtnBack, _t("cfg10", L"Back"));
m_btnMgr.hide(m_configLbl1, true); _hideConfigButtons(true);
m_btnMgr.hide(m_configBtn1, true);
m_btnMgr.hide(m_configLbl2, true);
m_btnMgr.hide(m_configBtn2, true);
m_btnMgr.hide(m_configLbl3, true);
m_btnMgr.hide(m_configBtn3, true);
m_btnMgr.hide(m_configLbl4, true);
m_btnMgr.hide(m_configBtn4, true);
m_btnMgr.hide(m_configLbl1Val, true);
m_btnMgr.hide(m_configBtn1M, true);
m_btnMgr.hide(m_configBtn1P, true);
m_btnMgr.hide(m_configLbl2Val, true);
m_btnMgr.hide(m_configBtn2M, true);
m_btnMgr.hide(m_configBtn2P, true);
m_btnMgr.hide(m_configLbl3Val, true);
m_btnMgr.hide(m_configBtn3M, true);
m_btnMgr.hide(m_configBtn3P, true);
m_btnMgr.hide(m_configLbl4Val, true);
m_btnMgr.hide(m_configBtn4M, true);
m_btnMgr.hide(m_configBtn4P, true);
_setBg(m_configBg, m_configBg);
for(u32 i = 0; i < ARRAY_SIZE(m_configLblUser); ++i)
if(m_configLblUser[i] != -1)
m_btnMgr.show(m_configLblUser[i]);
m_btnMgr.show(m_configLbl2); m_btnMgr.show(m_configLbl2);
if(!m_locked) if(!m_locked)
@ -271,7 +224,22 @@ void CMenu::_showConfigMain(int curPage)
ChannelHandle.Init(m_loc.getString(m_curLanguage, "gametdb_code", "EN")); ChannelHandle.Init(m_loc.getString(m_curLanguage, "gametdb_code", "EN"));
NANDemuView = prevNANDemuView; NANDemuView = prevNANDemuView;
amountOfChannels = ChannelHandle.Count(); amountOfChannels = ChannelHandle.Count();
m_btnMgr.setText(m_configLbl4Val, _getChannelName()); channelName = m_loc.getWString(m_curLanguage, "disabled", L"Disabled");
currentChannelIndex = -1;
const string &currentChanId = m_cfg.getString("GENERAL", "returnto");
if(!currentChanId.empty())
{
for(int i = 0; i < amountOfChannels; i++)
{
if(strncmp(currentChanId.c_str(), ChannelHandle.GetId(i), 4) == 0)
{
channelName = custom_titles.getWString("TITLES", currentChanId, ChannelHandle.GetName(i));
currentChannelIndex = i;
break;
}
}
}
m_btnMgr.setText(m_configLbl4Val, channelName);
} }
else if(curPage == 5) else if(curPage == 5)
{ {
@ -658,21 +626,36 @@ void CMenu::_configMain(void)
} }
else if(m_btnMgr.selected(m_configBtn4P)) else if(m_btnMgr.selected(m_configBtn4P))
{ {
if(currentChannelIndex >= (amountOfChannels - 1)) if(currentChannelIndex == (amountOfChannels - 1))
{
currentChannelIndex = -1;
m_cfg.remove("GENERAL", "returnto"); m_cfg.remove("GENERAL", "returnto");
channelName = m_loc.getWString(m_curLanguage, "disabled", L"Disabled");
}
else else
m_cfg.setString("GENERAL", "returnto", ChannelHandle.GetId(currentChannelIndex + 1)); {
m_btnMgr.setText(m_configLbl4Val, _getChannelName()); currentChannelIndex++;
m_cfg.setString("GENERAL", "returnto", ChannelHandle.GetId(currentChannelIndex));
channelName = custom_titles.getWString("TITLES", m_cfg.getString("GENERAL", "returnto"), ChannelHandle.GetName(currentChannelIndex));
}
m_btnMgr.setText(m_configLbl4Val, channelName);
} }
else if(m_btnMgr.selected(m_configBtn4M)) else if(m_btnMgr.selected(m_configBtn4M))
{ {
if(currentChannelIndex == -1) currentChannelIndex--;
currentChannelIndex = amountOfChannels; if(currentChannelIndex == -2)
if((currentChannelIndex - 1) == -1) currentChannelIndex = amountOfChannels - 1;
m_cfg.remove("GENERAL", "returnto"); if(currentChannelIndex >= 0)
{
m_cfg.setString("GENERAL", "returnto", ChannelHandle.GetId(currentChannelIndex));
channelName = custom_titles.getWString("TITLES", m_cfg.getString("GENERAL", "returnto"), ChannelHandle.GetName(currentChannelIndex));
}
else else
m_cfg.setString("GENERAL", "returnto", ChannelHandle.GetId(currentChannelIndex - 1)); {
m_btnMgr.setText(m_configLbl4Val, _getChannelName()); m_cfg.remove("GENERAL", "returnto");
channelName = m_loc.getWString(m_curLanguage, "disabled", L"Disabled");
}
m_btnMgr.setText(m_configLbl4Val, channelName);
} }
} }
if(curPage == 5) if(curPage == 5)
@ -892,7 +875,7 @@ void CMenu::_configMain(void)
if(m_btnMgr.selected(m_configBtn1)) if(m_btnMgr.selected(m_configBtn1))
{ {
_hideConfigMain(); _hideConfigMain();
_CfgHB(); _ConfigHB();
_showConfigMain(12); _showConfigMain(12);
} }
else if(m_btnMgr.selected(m_configBtn2)) else if(m_btnMgr.selected(m_configBtn2))
@ -991,13 +974,14 @@ void CMenu::_configMain(void)
void CMenu::_initConfigMenu() void CMenu::_initConfigMenu()
{ {
_addUserLabels(m_configLblUser, ARRAY_SIZE(m_configLblUser), "CONFIG");
m_configBg = _texture("CONFIG/BG", "texture", theme.bg, false); m_configBg = _texture("CONFIG/BG", "texture", theme.bg, false);
_addUserLabels(m_configLblUser, ARRAY_SIZE(m_configLblUser), "CONFIG");
m_configLblTitle = _addLabel("CONFIG/TITLE", theme.titleFont, L"", 0, 10, 640, 60, theme.titleFontColor, FTGX_JUSTIFY_CENTER | FTGX_ALIGN_MIDDLE); m_configLblTitle = _addLabel("CONFIG/TITLE", theme.titleFont, L"", 0, 10, 640, 60, theme.titleFontColor, FTGX_JUSTIFY_CENTER | FTGX_ALIGN_MIDDLE);
m_configBtnBack = _addButton("CONFIG/BACK_BTN", theme.btnFont, L"", 420, 400, 200, 48, theme.btnFontColor);
m_configLblPage = _addLabel("CONFIG/PAGE_BTN", theme.btnFont, L"", 68, 400, 104, 48, theme.btnFontColor, FTGX_JUSTIFY_CENTER | FTGX_ALIGN_MIDDLE, theme.btnTexC); m_configLblPage = _addLabel("CONFIG/PAGE_BTN", theme.btnFont, L"", 68, 400, 104, 48, theme.btnFontColor, FTGX_JUSTIFY_CENTER | FTGX_ALIGN_MIDDLE, theme.btnTexC);
m_configBtnPageM = _addPicButton("CONFIG/PAGE_MINUS", theme.btnTexMinus, theme.btnTexMinusS, 20, 400, 48, 48); m_configBtnPageM = _addPicButton("CONFIG/PAGE_MINUS", theme.btnTexMinus, theme.btnTexMinusS, 20, 400, 48, 48);
m_configBtnPageP = _addPicButton("CONFIG/PAGE_PLUS", theme.btnTexPlus, theme.btnTexPlusS, 172, 400, 48, 48); m_configBtnPageP = _addPicButton("CONFIG/PAGE_PLUS", theme.btnTexPlus, theme.btnTexPlusS, 172, 400, 48, 48);
m_configBtnBack = _addButton("CONFIG/BACK_BTN", theme.btnFont, L"", 420, 400, 200, 48, theme.btnFontColor);
m_configLbl1 = _addLabel("CONFIG/LINE1", theme.lblFont, L"", 20, 125, 385, 56, theme.lblFontColor, FTGX_JUSTIFY_LEFT | FTGX_ALIGN_MIDDLE); m_configLbl1 = _addLabel("CONFIG/LINE1", theme.lblFont, L"", 20, 125, 385, 56, theme.lblFontColor, FTGX_JUSTIFY_LEFT | FTGX_ALIGN_MIDDLE);
m_configBtn1 = _addButton("CONFIG/LINE1_BTN", theme.btnFont, L"", 420, 130, 200, 48, theme.btnFontColor); m_configBtn1 = _addButton("CONFIG/LINE1_BTN", theme.btnFont, L"", 420, 130, 200, 48, theme.btnFontColor);
@ -1050,10 +1034,11 @@ void CMenu::_initConfigMenu()
_setHideAnim(m_configBtnPageP, "CONFIG/PAGE_PLUS", 0, 0, 1.f, -1.f); _setHideAnim(m_configBtnPageP, "CONFIG/PAGE_PLUS", 0, 0, 1.f, -1.f);
_hideConfigMain(true); _hideConfigMain(true);
_textConfig();
} }
/*
void CMenu::_textConfig(void) void CMenu::_textConfig(void)
{ {
m_btnMgr.setText(m_configLblTitle, _t("cfg1", L"Settings"));
m_btnMgr.setText(m_configBtnBack, _t("cfg10", L"Back"));
} }
*/