mirror of
https://github.com/Fledge68/WiiFlow_Lite.git
synced 2024-12-24 02:41:55 +01:00
-moved async network, categories on start, and source menu on start to startup settings
-added new Path Manager menu. access it via config page 4 -added GC default global loader to config page 3
This commit is contained in:
parent
656fa401ce
commit
fe2342e88c
@ -1166,6 +1166,7 @@ void CMenu::_buildMenus(void)
|
||||
_initCoverBanner();
|
||||
_initExplorer();
|
||||
_initBoot();
|
||||
_initPathsMenu();
|
||||
|
||||
_loadCFCfg();
|
||||
}
|
||||
|
@ -241,11 +241,13 @@ private:
|
||||
s16 m_config3LblDMLVideo;
|
||||
s16 m_config3BtnDMLVideoP;
|
||||
s16 m_config3BtnDMLVideoM;
|
||||
|
||||
s16 m_config3LblDMLGameLoader;
|
||||
s16 m_config3LblDMLLoader;
|
||||
s16 m_config3BtnDMLLoaderP;
|
||||
s16 m_config3BtnDMLLoaderM;
|
||||
|
||||
s16 m_config3LblOcarina;
|
||||
s16 m_config3BtnOcarina;
|
||||
s16 m_config3LblAsyncNet;
|
||||
s16 m_config3BtnAsyncNet;
|
||||
s16 m_config3LblUser[4];
|
||||
s16 m_config4LblReturnTo;
|
||||
s16 m_config4LblReturnToVal;
|
||||
@ -255,8 +257,8 @@ private:
|
||||
s16 m_config4BtnHome;
|
||||
s16 m_config4LblSaveFavMode;
|
||||
s16 m_config4BtnSaveFavMode;
|
||||
s16 m_config4LblCategoryOnBoot;
|
||||
s16 m_config4BtnCategoryOnBoot;
|
||||
s16 m_config4LblPathManager;
|
||||
s16 m_config4BtnPathManager;
|
||||
s16 m_config4LblUser[4];
|
||||
s16 m_configSndLblBnrVol;
|
||||
s16 m_configSndLblBnrVolVal;
|
||||
@ -875,6 +877,7 @@ private:
|
||||
void _initCoverBanner();
|
||||
void _initExplorer();
|
||||
void _initWad();
|
||||
void _initPathsMenu();
|
||||
//
|
||||
void _textSource(void);
|
||||
void _textPluginSettings(void);
|
||||
@ -904,6 +907,7 @@ private:
|
||||
void _textCoverBanner(void);
|
||||
void _textExplorer(void);
|
||||
void _textWad(void);
|
||||
void _textPaths(void);
|
||||
//
|
||||
void _refreshBoot();
|
||||
void _refreshExplorer(s8 direction = 0);
|
||||
@ -940,6 +944,7 @@ private:
|
||||
void _hideCoverBanner(bool instant = false);
|
||||
void _hideExplorer(bool instant = false);
|
||||
void _hideWad(bool instant = false);
|
||||
void _hidePaths(bool instant = false);
|
||||
//
|
||||
void _showError(void);
|
||||
void _showMain(void);
|
||||
@ -973,6 +978,7 @@ private:
|
||||
void _showCoverBanner(void);
|
||||
void _showExplorer(void);
|
||||
void _showWad(void);
|
||||
void _showPaths(void);
|
||||
void _clearSources(void);
|
||||
void _updateSourceBtns(void);
|
||||
void _updatePluginText(void);
|
||||
@ -1030,6 +1036,7 @@ private:
|
||||
bool _Home();
|
||||
bool _ExitTo();
|
||||
bool _Boot();
|
||||
void _Paths();
|
||||
void _mainLoopCommon(bool withCF = false, bool adjusting = false);
|
||||
public:
|
||||
void directlaunch(const char *GameID);
|
||||
@ -1165,6 +1172,7 @@ private:
|
||||
static const SOption _AspectRatio[3];
|
||||
static const SOption _NMM[4];
|
||||
static const SOption _NoDVD[3];
|
||||
static const SOption _GlobalGCLoaders[2];
|
||||
static const SOption _GCLoader[3];
|
||||
static const SOption _vidModePatch[4];
|
||||
static const SOption _debugger[3];
|
||||
|
@ -19,6 +19,12 @@
|
||||
#include "channel/nand_save.hpp"
|
||||
|
||||
s16 m_bootLblTitle;
|
||||
s16 m_bootBtnBack;
|
||||
s16 m_bootLblPage;
|
||||
s16 m_bootBtnPageM;
|
||||
s16 m_bootBtnPageP;
|
||||
s16 m_bootLblUser[4];
|
||||
|
||||
s16 m_bootLblLoadCIOS;
|
||||
s16 m_bootBtnLoadCIOS;
|
||||
|
||||
@ -30,34 +36,44 @@ s16 m_bootLblCIOSrevP;
|
||||
s16 m_bootLblUSBPort;
|
||||
s16 m_bootBtnUSBPort;
|
||||
|
||||
s16 m_bootBtnBack;
|
||||
s16 m_bootLblUser[4];
|
||||
s16 m_bootLblAsyncNet;
|
||||
s16 m_bootBtnAsyncNet;
|
||||
|
||||
s16 m_bootLblCategoryOnBoot;
|
||||
s16 m_bootBtnCategoryOnBoot;
|
||||
|
||||
s16 m_bootLblSourceOnBoot;
|
||||
s16 m_bootBtnSourceOnBoot;
|
||||
|
||||
u8 set_port = 0;
|
||||
u8 boot_curPage = 1;
|
||||
u8 boot_Pages = 2;
|
||||
|
||||
static void showBoot(void)
|
||||
{
|
||||
m_btnMgr.show(m_bootLblTitle);
|
||||
m_btnMgr.show(m_bootLblLoadCIOS);
|
||||
m_btnMgr.show(m_bootBtnLoadCIOS);
|
||||
|
||||
m_btnMgr.show(m_bootLblCIOSrev);
|
||||
m_btnMgr.show(m_bootLblCurCIOSrev);
|
||||
m_btnMgr.show(m_bootLblCIOSrevM);
|
||||
m_btnMgr.show(m_bootLblCIOSrevP);
|
||||
|
||||
m_btnMgr.show(m_bootLblUSBPort);
|
||||
m_btnMgr.show(m_bootBtnUSBPort);
|
||||
|
||||
m_btnMgr.show(m_bootBtnBack);
|
||||
m_btnMgr.show(m_bootLblPage);
|
||||
m_btnMgr.show(m_bootBtnPageM);
|
||||
m_btnMgr.show(m_bootBtnPageP);
|
||||
for(u8 i = 0; i < ARRAY_SIZE(m_bootLblUser); ++i)
|
||||
if(m_bootLblUser[i] != -1)
|
||||
m_btnMgr.show(m_bootLblUser[i]);
|
||||
}
|
||||
|
||||
static void hideBoot(bool instant)
|
||||
static void hideBoot(bool instant, bool common)
|
||||
{
|
||||
m_btnMgr.hide(m_bootLblTitle, instant);
|
||||
if(common)
|
||||
{
|
||||
m_btnMgr.hide(m_bootLblTitle, instant);
|
||||
m_btnMgr.hide(m_bootBtnBack, instant);
|
||||
m_btnMgr.hide(m_bootLblPage, instant);
|
||||
m_btnMgr.hide(m_bootBtnPageM, instant);
|
||||
m_btnMgr.hide(m_bootBtnPageP, instant);
|
||||
for(u8 i = 0; i < ARRAY_SIZE(m_bootLblUser); ++i)
|
||||
if(m_bootLblUser[i] != -1)
|
||||
m_btnMgr.hide(m_bootLblUser[i], instant);
|
||||
}
|
||||
m_btnMgr.hide(m_bootLblLoadCIOS, instant);
|
||||
m_btnMgr.hide(m_bootBtnLoadCIOS, instant);
|
||||
|
||||
@ -68,19 +84,25 @@ static void hideBoot(bool instant)
|
||||
|
||||
m_btnMgr.hide(m_bootLblUSBPort, instant);
|
||||
m_btnMgr.hide(m_bootBtnUSBPort, instant);
|
||||
|
||||
m_btnMgr.hide(m_bootBtnBack, instant);
|
||||
for(u8 i = 0; i < ARRAY_SIZE(m_bootLblUser); ++i)
|
||||
if(m_bootLblUser[i] != -1)
|
||||
m_btnMgr.hide(m_bootLblUser[i], instant);
|
||||
|
||||
m_btnMgr.hide(m_bootLblAsyncNet, instant);
|
||||
m_btnMgr.hide(m_bootBtnAsyncNet, instant);
|
||||
/* page 2 */
|
||||
m_btnMgr.hide(m_bootLblCategoryOnBoot, instant);
|
||||
m_btnMgr.hide(m_bootBtnCategoryOnBoot, instant);
|
||||
|
||||
m_btnMgr.hide(m_bootLblSourceOnBoot, instant);
|
||||
m_btnMgr.hide(m_bootBtnSourceOnBoot, instant);
|
||||
}
|
||||
|
||||
bool CMenu::_Boot(void)
|
||||
{
|
||||
boot_curPage = 1;
|
||||
SetupInput();
|
||||
set_port = currentPort;
|
||||
bool prev_load = cur_load;
|
||||
u8 prev_ios = cur_ios;
|
||||
showBoot();
|
||||
_refreshBoot();
|
||||
|
||||
while(!m_exit)
|
||||
@ -88,6 +110,26 @@ bool CMenu::_Boot(void)
|
||||
_mainLoopCommon();
|
||||
if(BTN_HOME_PRESSED || BTN_B_PRESSED)
|
||||
break;
|
||||
else if(BTN_UP_PRESSED)
|
||||
m_btnMgr.up();
|
||||
else if(BTN_DOWN_PRESSED)
|
||||
m_btnMgr.down();
|
||||
else if((BTN_MINUS_PRESSED || BTN_LEFT_PRESSED) || (BTN_A_PRESSED && m_btnMgr.selected(m_bootBtnPageM)))
|
||||
{
|
||||
boot_curPage--;
|
||||
if(boot_curPage == 0) boot_curPage = boot_Pages;
|
||||
if(BTN_LEFT_PRESSED || BTN_MINUS_PRESSED)
|
||||
m_btnMgr.click(m_bootBtnPageM);
|
||||
_refreshBoot();
|
||||
}
|
||||
else if(((BTN_PLUS_PRESSED || BTN_RIGHT_PRESSED)) || (BTN_A_PRESSED && m_btnMgr.selected(m_bootBtnPageP)))
|
||||
{
|
||||
boot_curPage++;
|
||||
if(boot_curPage > boot_Pages) boot_curPage = 1;
|
||||
if(BTN_RIGHT_PRESSED || BTN_PLUS_PRESSED)
|
||||
m_btnMgr.click(m_bootBtnPageP);
|
||||
_refreshBoot();
|
||||
}
|
||||
else if(BTN_A_PRESSED)
|
||||
{
|
||||
if(m_btnMgr.selected(m_bootBtnBack))
|
||||
@ -95,7 +137,7 @@ bool CMenu::_Boot(void)
|
||||
else if(m_btnMgr.selected(m_bootBtnLoadCIOS))
|
||||
{
|
||||
cur_load = !cur_load;
|
||||
_refreshBoot();
|
||||
m_btnMgr.setText(m_bootBtnLoadCIOS, _optBoolToString(cur_load));
|
||||
}
|
||||
else if(m_btnMgr.selected(m_bootLblCIOSrevM) || m_btnMgr.selected(m_bootLblCIOSrevP))
|
||||
{
|
||||
@ -114,12 +156,30 @@ bool CMenu::_Boot(void)
|
||||
itr--;
|
||||
}
|
||||
cur_ios = itr->first;
|
||||
_refreshBoot();
|
||||
if(cur_ios > 0)
|
||||
m_btnMgr.setText(m_bootLblCurCIOSrev, wfmt(L"%i", cur_ios));
|
||||
else
|
||||
m_btnMgr.setText(m_bootLblCurCIOSrev, L"AUTO");
|
||||
}
|
||||
else if(m_btnMgr.selected(m_bootBtnUSBPort))
|
||||
{
|
||||
set_port = !set_port;
|
||||
_refreshBoot();
|
||||
m_btnMgr.setText(m_bootBtnUSBPort, wfmt(L"%i", set_port));
|
||||
}
|
||||
else if (m_btnMgr.selected(m_bootBtnAsyncNet))
|
||||
{
|
||||
m_cfg.setBool("GENERAL", "async_network", !m_cfg.getBool("GENERAL", "async_network", false));
|
||||
m_btnMgr.setText(m_bootBtnAsyncNet, m_cfg.getBool("GENERAL", "async_network", false) ? _t("on", L"On") : _t("off", L"Off"));
|
||||
}
|
||||
else if (m_btnMgr.selected(m_bootBtnCategoryOnBoot))
|
||||
{
|
||||
m_cfg.setBool("GENERAL", "category_on_start", !m_cfg.getBool("GENERAL", "category_on_start", false));
|
||||
m_btnMgr.setText(m_bootBtnCategoryOnBoot, m_cfg.getBool("GENERAL", "category_on_start") ? _t("on", L"On") : _t("off", L"Off"));
|
||||
}
|
||||
else if (m_btnMgr.selected(m_bootBtnSourceOnBoot))
|
||||
{
|
||||
m_cfg.setBool("GENERAL", "source_on_start", !m_cfg.getBool("GENERAL", "source_on_start", false));
|
||||
m_btnMgr.setText(m_bootBtnSourceOnBoot, m_cfg.getBool("GENERAL", "source_on_start") ? _t("on", L"On") : _t("off", L"Off"));
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -127,7 +187,7 @@ bool CMenu::_Boot(void)
|
||||
InternalSave.SaveIOS();
|
||||
if(set_port != currentPort)
|
||||
InternalSave.SavePort(set_port);
|
||||
hideBoot(false);
|
||||
hideBoot(false, true);
|
||||
|
||||
if(prev_load != cur_load || prev_ios != cur_ios || set_port != currentPort)
|
||||
{
|
||||
@ -140,13 +200,43 @@ bool CMenu::_Boot(void)
|
||||
|
||||
void CMenu::_refreshBoot()
|
||||
{
|
||||
m_btnMgr.setText(m_bootBtnLoadCIOS, _optBoolToString(cur_load));
|
||||
m_btnMgr.setText(m_bootBtnUSBPort, wfmt(L"%i", set_port));
|
||||
if(cur_ios > 0)
|
||||
m_btnMgr.setText(m_bootLblCurCIOSrev, wfmt(L"%i", cur_ios));
|
||||
hideBoot(true, false);
|
||||
m_btnMgr.setText(m_bootLblPage, wfmt(L"%i / %i", boot_curPage, boot_Pages));
|
||||
if(boot_curPage == 1)
|
||||
{
|
||||
m_btnMgr.setText(m_bootBtnLoadCIOS, _optBoolToString(cur_load));
|
||||
m_btnMgr.setText(m_bootBtnUSBPort, wfmt(L"%i", set_port));
|
||||
if(cur_ios > 0)
|
||||
m_btnMgr.setText(m_bootLblCurCIOSrev, wfmt(L"%i", cur_ios));
|
||||
else
|
||||
m_btnMgr.setText(m_bootLblCurCIOSrev, L"AUTO");
|
||||
m_btnMgr.setText(m_bootBtnAsyncNet, m_cfg.getBool("GENERAL", "async_network", false) ? _t("on", L"On") : _t("off", L"Off"));
|
||||
|
||||
m_btnMgr.show(m_bootLblLoadCIOS);
|
||||
m_btnMgr.show(m_bootBtnLoadCIOS);
|
||||
|
||||
m_btnMgr.show(m_bootLblCIOSrev);
|
||||
m_btnMgr.show(m_bootLblCurCIOSrev);
|
||||
m_btnMgr.show(m_bootLblCIOSrevM);
|
||||
m_btnMgr.show(m_bootLblCIOSrevP);
|
||||
|
||||
m_btnMgr.show(m_bootLblUSBPort);
|
||||
m_btnMgr.show(m_bootBtnUSBPort);
|
||||
|
||||
m_btnMgr.show(m_bootLblAsyncNet);
|
||||
m_btnMgr.show(m_bootBtnAsyncNet);
|
||||
}
|
||||
else
|
||||
m_btnMgr.setText(m_bootLblCurCIOSrev, L"AUTO");
|
||||
showBoot();
|
||||
{
|
||||
m_btnMgr.setText(m_bootBtnCategoryOnBoot, m_cfg.getBool("GENERAL", "category_on_start") ? _t("on", L"On") : _t("off", L"Off"));
|
||||
m_btnMgr.setText(m_bootBtnSourceOnBoot, m_cfg.getBool("GENERAL", "source_on_start") ? _t("on", L"On") : _t("off", L"Off"));
|
||||
|
||||
m_btnMgr.show(m_bootLblCategoryOnBoot);
|
||||
m_btnMgr.show(m_bootBtnCategoryOnBoot);
|
||||
|
||||
m_btnMgr.show(m_bootLblSourceOnBoot);
|
||||
m_btnMgr.show(m_bootBtnSourceOnBoot);
|
||||
}
|
||||
}
|
||||
|
||||
void CMenu::_textBoot(void)
|
||||
@ -155,6 +245,9 @@ void CMenu::_textBoot(void)
|
||||
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_bootLblAsyncNet, _t("cfgp3", L"Init network on boot"));
|
||||
m_btnMgr.setText(m_bootLblCategoryOnBoot, _t("cfgd7", L"Show categories on boot"));
|
||||
m_btnMgr.setText(m_bootLblSourceOnBoot, _t("", L"Show source menu on boot"));
|
||||
m_btnMgr.setText(m_bootBtnBack, _t("cfg10", L"Back"));
|
||||
}
|
||||
|
||||
@ -163,21 +256,36 @@ void CMenu::_initBoot(void)
|
||||
{
|
||||
_addUserLabels(m_bootLblUser, ARRAY_SIZE(m_bootLblUser), "BOOT");
|
||||
m_bootLblTitle = _addTitle("BOOT/TITLE", theme.titleFont, L"", 20, 30, 600, 60, theme.titleFontColor, FTGX_JUSTIFY_CENTER | FTGX_ALIGN_MIDDLE);
|
||||
|
||||
m_bootBtnBack = _addButton("BOOT/BACK_BTN", theme.btnFont, L"", 420, 400, 200, 56, theme.btnFontColor);
|
||||
m_bootLblPage = _addLabel("BOOT/PAGE_BTN", theme.btnFont, L"", 76, 400, 80, 56, theme.btnFontColor, FTGX_JUSTIFY_CENTER | FTGX_ALIGN_MIDDLE, theme.btnTexC);
|
||||
m_bootBtnPageM = _addPicButton("BOOT/PAGE_MINUS", theme.btnTexMinus, theme.btnTexMinusS, 20, 400, 56, 56);
|
||||
m_bootBtnPageP = _addPicButton("BOOT/PAGE_PLUS", theme.btnTexPlus, theme.btnTexPlusS, 156, 400, 56, 56);
|
||||
|
||||
m_bootLblLoadCIOS = _addLabel("BOOT/LOAD_CIOS", theme.lblFont, L"", 40, 130, 290, 56, theme.lblFontColor, FTGX_JUSTIFY_LEFT | FTGX_ALIGN_MIDDLE);
|
||||
m_bootBtnLoadCIOS = _addButton("BOOT/LOAD_CIOS_BTN", theme.btnFont, L"", 330, 130, 270, 56, theme.btnFontColor);
|
||||
m_bootBtnLoadCIOS = _addButton("BOOT/LOAD_CIOS_BTN", theme.btnFont, L"", 370, 130, 230, 56, theme.btnFontColor);
|
||||
|
||||
m_bootLblCIOSrev = _addLabel("BOOT/CIOS_REV", theme.lblFont, L"", 40, 190, 290, 56, theme.lblFontColor, FTGX_JUSTIFY_LEFT | FTGX_ALIGN_MIDDLE);
|
||||
m_bootLblCurCIOSrev = _addLabel("BOOT/CIOS_REV_BTN", theme.btnFont, L"", 386, 190, 158, 56, theme.btnFontColor, FTGX_JUSTIFY_CENTER | FTGX_ALIGN_MIDDLE, theme.btnTexC);
|
||||
m_bootLblCIOSrevM = _addPicButton("BOOT/CIOS_REV_MINUS", theme.btnTexMinus, theme.btnTexMinusS, 330, 190, 56, 56);
|
||||
m_bootLblCurCIOSrev = _addLabel("BOOT/CIOS_REV_BTN", theme.btnFont, L"", 426, 190, 118, 56, theme.btnFontColor, FTGX_JUSTIFY_CENTER | FTGX_ALIGN_MIDDLE, theme.btnTexC);
|
||||
m_bootLblCIOSrevM = _addPicButton("BOOT/CIOS_REV_MINUS", theme.btnTexMinus, theme.btnTexMinusS, 370, 190, 56, 56);
|
||||
m_bootLblCIOSrevP = _addPicButton("BOOT/CIOS_REV_PLUS", theme.btnTexPlus, theme.btnTexPlusS, 544, 190, 56, 56);
|
||||
|
||||
m_bootLblUSBPort = _addLabel("BOOT/USB_PORT", theme.lblFont, L"", 40, 250, 290, 56, theme.lblFontColor, FTGX_JUSTIFY_LEFT | FTGX_ALIGN_MIDDLE);
|
||||
m_bootBtnUSBPort = _addButton("BOOT/USB_PORT_BTN", theme.btnFont, L"", 330, 250, 270, 56, theme.btnFontColor);
|
||||
|
||||
m_bootBtnBack = _addButton("BOOT/BACK_BTN", theme.btnFont, L"", 420, 400, 200, 56, theme.btnFontColor);
|
||||
m_bootBtnUSBPort = _addButton("BOOT/USB_PORT_BTN", theme.btnFont, L"", 370, 250, 230, 56, theme.btnFontColor);
|
||||
|
||||
m_bootLblAsyncNet = _addLabel("BOOT/ASYNCNET", theme.lblFont, L"", 40, 310, 340, 56, theme.lblFontColor, FTGX_JUSTIFY_LEFT | FTGX_ALIGN_MIDDLE);
|
||||
m_bootBtnAsyncNet = _addButton("BOOT/ASYNCNET_BTN", theme.btnFont, L"", 370, 310, 230, 56, theme.btnFontColor);
|
||||
/* page 2 */
|
||||
m_bootLblCategoryOnBoot = _addLabel("BOOT/CAT_ON_START", theme.lblFont, L"", 40, 130, 340, 56, theme.lblFontColor, FTGX_JUSTIFY_LEFT | FTGX_ALIGN_MIDDLE);
|
||||
m_bootBtnCategoryOnBoot = _addButton("BOOT/CAT_ON_START_BTN", theme.btnFont, L"", 370, 130, 230, 56, theme.btnFontColor);
|
||||
|
||||
m_bootLblSourceOnBoot = _addLabel("BOOT/SOURCE_ON_START", theme.lblFont, L"", 40, 190, 340, 56, theme.lblFontColor, FTGX_JUSTIFY_LEFT | FTGX_ALIGN_MIDDLE);
|
||||
m_bootBtnSourceOnBoot = _addButton("BOOT/SOURCE_ON_START_BTN", theme.btnFont, L"", 370, 190, 230, 56, theme.btnFontColor);
|
||||
|
||||
_setHideAnim(m_bootLblTitle, "BOOT/TITLE", 0, -200, 0.f, 1.f);
|
||||
_setHideAnim(m_bootBtnBack, "BOOT/BACK_BTN", 0, 0, 1.f, -1.f);
|
||||
_setHideAnim(m_bootLblPage, "BOOT/PAGE_BTN", 0, 0, 1.f, -1.f);
|
||||
_setHideAnim(m_bootBtnPageM, "BOOT/PAGE_MINUS", 0, 0, 1.f, -1.f);
|
||||
_setHideAnim(m_bootBtnPageP, "BOOT/PAGE_PLUS", 0, 0, 1.f, -1.f);
|
||||
_setHideAnim(m_bootLblLoadCIOS, "BOOT/LOAD_CIOS", -200, 0, 1.f, 0.f);
|
||||
_setHideAnim(m_bootBtnLoadCIOS, "BOOT/LOAD_CIOS_BTN", 200, 0, 1.f, 0.f);
|
||||
|
||||
@ -189,8 +297,15 @@ void CMenu::_initBoot(void)
|
||||
_setHideAnim(m_bootLblUSBPort, "BOOT/USB_PORT", -200, 0, 1.f, 0.f);
|
||||
_setHideAnim(m_bootBtnUSBPort, "BOOT/USB_PORT_BTN", 200, 0, 1.f, 0.f);
|
||||
|
||||
_setHideAnim(m_bootBtnBack, "BOOT/BACK_BTN", 0, 0, -2.f, 0.f);
|
||||
_setHideAnim(m_bootLblAsyncNet, "BOOT/ASYNCNET", -200, 0, 1.f, 0.f);
|
||||
_setHideAnim(m_bootBtnAsyncNet, "BOOT/ASYNCNET_BTN", 200, 0, 1.f, 0.f);
|
||||
|
||||
_setHideAnim(m_bootLblCategoryOnBoot, "BOOT/CAT_ON_START", -200, 0, 1.f, 0.f);
|
||||
_setHideAnim(m_bootBtnCategoryOnBoot, "BOOT/CAT_ON_START_BTN", 200, 0, 1.f, 0.f);
|
||||
|
||||
_setHideAnim(m_bootLblSourceOnBoot, "BOOT/SOURCE_ON_START", -200, 0, 1.f, 0.f);
|
||||
_setHideAnim(m_bootBtnSourceOnBoot, "BOOT/SOURCE_ON_START_BTN", 200, 0, 1.f, 0.f);
|
||||
|
||||
hideBoot(true);
|
||||
hideBoot(true, true);
|
||||
_textBoot();
|
||||
}
|
||||
|
@ -34,8 +34,10 @@ void CMenu::_hideConfig3(bool instant)
|
||||
m_btnMgr.hide(m_config3BtnDMLVideoP, instant);
|
||||
m_btnMgr.hide(m_config3BtnDMLVideoM, instant);
|
||||
}
|
||||
m_btnMgr.hide(m_config3LblAsyncNet, instant);
|
||||
m_btnMgr.hide(m_config3BtnAsyncNet, instant);
|
||||
m_btnMgr.hide(m_config3LblDMLGameLoader, instant);
|
||||
m_btnMgr.hide(m_config3LblDMLLoader, instant);
|
||||
m_btnMgr.hide(m_config3BtnDMLLoaderP, instant);
|
||||
m_btnMgr.hide(m_config3BtnDMLLoaderM, instant);
|
||||
m_btnMgr.hide(m_config3LblOcarina, instant);
|
||||
m_btnMgr.hide(m_config3BtnOcarina, instant);
|
||||
for(u8 i = 0; i < ARRAY_SIZE(m_config3LblUser); ++i)
|
||||
@ -69,8 +71,10 @@ void CMenu::_showConfig3(void)
|
||||
m_btnMgr.show(m_config3BtnDMLVideoP);
|
||||
m_btnMgr.show(m_config3BtnDMLVideoM);
|
||||
}
|
||||
m_btnMgr.show(m_config3LblAsyncNet);
|
||||
m_btnMgr.show(m_config3BtnAsyncNet);
|
||||
m_btnMgr.show(m_config3LblDMLGameLoader);
|
||||
m_btnMgr.show(m_config3LblDMLLoader);
|
||||
m_btnMgr.show(m_config3BtnDMLLoaderP);
|
||||
m_btnMgr.show(m_config3BtnDMLLoaderM);
|
||||
m_btnMgr.show(m_config3LblOcarina);
|
||||
m_btnMgr.show(m_config3BtnOcarina);
|
||||
|
||||
@ -96,8 +100,8 @@ void CMenu::_showConfig3(void)
|
||||
i = min(max(0, m_cfg.getInt(GC_DOMAIN, "game_language", 0)), (int)ARRAY_SIZE(CMenu::_GlobalGClanguages) - 1);
|
||||
m_btnMgr.setText(m_config3LblDMLLanguage, _t(CMenu::_GlobalGClanguages[i].id, CMenu::_GlobalGClanguages[i].text));
|
||||
}
|
||||
|
||||
m_btnMgr.setText(m_config3BtnAsyncNet, m_cfg.getBool("GENERAL", "async_network", false) ? _t("on", L"On") : _t("off", L"Off"));
|
||||
i = min(max(0, m_cfg.getInt(GC_DOMAIN, "default_loader", 0)), (int)ARRAY_SIZE(CMenu::_GlobalGCLoaders) - 1);
|
||||
m_btnMgr.setText(m_config3LblDMLLoader, _t(CMenu::_GlobalGCLoaders[i].id, CMenu::_GlobalGCLoaders[i].text));
|
||||
|
||||
m_btnMgr.setText(m_config3BtnOcarina, m_cfg.getBool(_domainFromView(), "cheat", false) ? _t("on", L"On") : _t("off", L"Off"));
|
||||
}
|
||||
@ -138,9 +142,10 @@ int CMenu::_config3(void)
|
||||
m_cfg.setInt(GC_DOMAIN, "video_mode", (int)loopNum((u32)m_cfg.getInt(GC_DOMAIN, "video_mode", 0) + direction, ARRAY_SIZE(CMenu::_GlobalDMLvideoModes)));
|
||||
_showConfig3();
|
||||
}
|
||||
else if (m_btnMgr.selected(m_config3BtnAsyncNet))
|
||||
else if (m_btnMgr.selected(m_config3BtnDMLLoaderP) || m_btnMgr.selected(m_config3BtnDMLLoaderM))
|
||||
{
|
||||
m_cfg.setBool("GENERAL", "async_network", !m_cfg.getBool("GENERAL", "async_network", false));
|
||||
s8 direction = m_btnMgr.selected(m_config3BtnDMLLoaderP) ? 1 : -1;
|
||||
m_cfg.setInt(GC_DOMAIN, "default_loader", (int)loopNum((u32)m_cfg.getInt(GC_DOMAIN, "default_loader", 0) + direction, ARRAY_SIZE(CMenu::_GlobalGCLoaders)));
|
||||
_showConfig3();
|
||||
}
|
||||
else if (m_btnMgr.selected(m_config3BtnOcarina))
|
||||
@ -175,9 +180,11 @@ void CMenu::_initConfig3Menu()
|
||||
m_config3LblDMLLanguage = _addLabel("CONFIG3/DML_LANG_BTN", theme.btnFont, L"", 386, 190, 158, 56, theme.btnFontColor, FTGX_JUSTIFY_CENTER | FTGX_ALIGN_MIDDLE, theme.btnTexC);
|
||||
m_config3BtnDMLLanguageM = _addPicButton("CONFIG3/DML_LANG_MINUS", theme.btnTexMinus, theme.btnTexMinusS, 330, 190, 56, 56);
|
||||
m_config3BtnDMLLanguageP = _addPicButton("CONFIG3/DML_LANG_PLUS", theme.btnTexPlus, theme.btnTexPlusS, 544, 190, 56, 56);
|
||||
|
||||
m_config3LblAsyncNet = _addLabel("CONFIG3/ASYNCNET", theme.lblFont, L"", 40, 250, 340, 56, theme.lblFontColor, FTGX_JUSTIFY_LEFT | FTGX_ALIGN_MIDDLE);
|
||||
m_config3BtnAsyncNet = _addButton("CONFIG3/ASYNCNET_BTN", theme.btnFont, L"", 330, 250, 270, 56, theme.btnFontColor);
|
||||
m_config3LblDMLGameLoader = _addLabel("CONFIG3/GC_LOADER", theme.lblFont, L"", 40, 250, 290, 56, theme.lblFontColor, FTGX_JUSTIFY_LEFT | FTGX_ALIGN_MIDDLE);
|
||||
m_config3LblDMLLoader = _addLabel("CONFIG3/GC_LOADER_BTN", theme.btnFont, L"", 386, 250, 158, 56, theme.btnFontColor, FTGX_JUSTIFY_CENTER | FTGX_ALIGN_MIDDLE, theme.btnTexC);
|
||||
m_config3BtnDMLLoaderM = _addPicButton("CONFIG3/GC_LOADER_MINUS", theme.btnTexMinus, theme.btnTexMinusS, 330, 250, 56, 56);
|
||||
m_config3BtnDMLLoaderP = _addPicButton("CONFIG3/GC_LOADER_PLUS", theme.btnTexPlus, theme.btnTexPlusS, 544, 250, 56, 56);
|
||||
|
||||
m_config3LblOcarina = _addLabel("CONFIG3/OCARINA", theme.lblFont, L"", 40, 310, 290, 56, theme.lblFontColor, FTGX_JUSTIFY_LEFT | FTGX_ALIGN_MIDDLE);
|
||||
m_config3BtnOcarina = _addButton("CONFIG3/OCARINA_BTN", theme.btnFont, L"", 330, 310, 270, 56, theme.btnFontColor);
|
||||
|
||||
@ -198,9 +205,11 @@ void CMenu::_initConfig3Menu()
|
||||
_setHideAnim(m_config3LblDMLLanguage, "CONFIG3/DML_LANG_BTN", 0, 0, 1.f, -1.f);
|
||||
_setHideAnim(m_config3BtnDMLLanguageM, "CONFIG3/DML_LANG_MINUS", 0, 0, 1.f, -1.f);
|
||||
_setHideAnim(m_config3BtnDMLLanguageP, "CONFIG3/DML_LANG_PLUS", 0, 0, 1.f, -1.f);
|
||||
|
||||
_setHideAnim(m_config3LblAsyncNet, "CONFIG3/ASYNCNET", 100, 0, -2.f, 0.f);
|
||||
_setHideAnim(m_config3BtnAsyncNet, "CONFIG3/ASYNCNET_BTN", 0, 0, 1.f, -1.f);
|
||||
_setHideAnim(m_config3LblDMLGameLoader, "CONFIG3/GC_LOADER", 100, 0, -2.f, 0.f);
|
||||
_setHideAnim(m_config3LblDMLLoader, "CONFIG3/GC_LOADER_BTN", 0, 0, 1.f, -1.f);
|
||||
_setHideAnim(m_config3BtnDMLLoaderM, "CONFIG3/GC_LOADER_MINUS", 0, 0, 1.f, -1.f);
|
||||
_setHideAnim(m_config3BtnDMLLoaderP, "CONFIG3/GC_LOADER_PLUS", 0, 0, 1.f, -1.f);
|
||||
|
||||
_setHideAnim(m_config3LblOcarina, "CONFIG3/OCARINA", 100, 0, -2.f, 0.f);
|
||||
_setHideAnim(m_config3BtnOcarina, "CONFIG3/OCARINA_BTN", 0, 0, 1.f, -1.f);
|
||||
_hideConfig3(true);
|
||||
@ -213,8 +222,7 @@ void CMenu::_textConfig3(void)
|
||||
m_btnMgr.setText(m_config3LblGameLanguage, _t("cfgb4", L"Default game language"));
|
||||
m_btnMgr.setText(m_config3LblDMLGameVideo, _t("cfgb5", L"Default DML video mode"));
|
||||
m_btnMgr.setText(m_config3LblDMLGameLanguage, _t("cfgb6", L"Default DML game language"));
|
||||
|
||||
m_btnMgr.setText(m_config3LblAsyncNet, _t("cfgp3", L"Init network on boot"));
|
||||
m_btnMgr.setText(m_config3LblDMLGameLoader, _t("cfgb2", L"Default GC game loader"));
|
||||
m_btnMgr.setText(m_config3LblOcarina, _t("cfgb1", L"Ocarina"));
|
||||
}
|
||||
|
||||
|
@ -28,12 +28,12 @@ void CMenu::_hideConfig4(bool instant)
|
||||
{
|
||||
_hideConfigCommon(instant);
|
||||
|
||||
m_btnMgr.hide(m_config4LblHome, instant);
|
||||
m_btnMgr.hide(m_config4BtnHome, instant);
|
||||
m_btnMgr.hide(m_config4LblPathManager, instant);
|
||||
m_btnMgr.hide(m_config4BtnPathManager, instant);
|
||||
m_btnMgr.hide(m_config4LblSaveFavMode, instant);
|
||||
m_btnMgr.hide(m_config4BtnSaveFavMode, instant);
|
||||
m_btnMgr.hide(m_config4LblCategoryOnBoot, instant);
|
||||
m_btnMgr.hide(m_config4BtnCategoryOnBoot, instant);
|
||||
m_btnMgr.hide(m_config4LblHome, instant);
|
||||
m_btnMgr.hide(m_config4BtnHome, instant);
|
||||
m_btnMgr.hide(m_config4LblReturnTo, instant);
|
||||
m_btnMgr.hide(m_config4LblReturnToVal, instant);
|
||||
m_btnMgr.hide(m_config4BtnReturnToM, instant);
|
||||
@ -47,12 +47,12 @@ void CMenu::_showConfig4(void)
|
||||
{
|
||||
_showConfigCommon(m_config4Bg, g_curPage);
|
||||
|
||||
m_btnMgr.show(m_config4LblHome);
|
||||
m_btnMgr.show(m_config4BtnHome);
|
||||
m_btnMgr.show(m_config4LblPathManager);
|
||||
m_btnMgr.show(m_config4BtnPathManager);
|
||||
m_btnMgr.show(m_config4LblSaveFavMode);
|
||||
m_btnMgr.show(m_config4BtnSaveFavMode);
|
||||
m_btnMgr.show(m_config4LblCategoryOnBoot);
|
||||
m_btnMgr.show(m_config4BtnCategoryOnBoot);
|
||||
m_btnMgr.show(m_config4LblHome);
|
||||
m_btnMgr.show(m_config4BtnHome);
|
||||
m_btnMgr.show(m_config4LblReturnTo);
|
||||
m_btnMgr.show(m_config4LblReturnToVal);
|
||||
m_btnMgr.show(m_config4BtnReturnToM);
|
||||
@ -66,7 +66,6 @@ void CMenu::_showConfig4(void)
|
||||
i = min(max(0, m_cfg.getInt("GENERAL", "exit_to", 0)), (int)ARRAY_SIZE(CMenu::_exitTo) - 1);
|
||||
m_btnMgr.setText(m_config4BtnHome, _t(CMenu::_exitTo[i].id, CMenu::_exitTo[i].text));
|
||||
m_btnMgr.setText(m_config4BtnSaveFavMode, m_cfg.getBool("GENERAL", "save_favorites_mode") ? _t("on", L"On") : _t("off", L"Off"));
|
||||
m_btnMgr.setText(m_config4BtnCategoryOnBoot, m_cat.getBool("GENERAL", "category_on_start") ? _t("on", L"On") : _t("off", L"Off"));
|
||||
|
||||
Config titles, custom_titles;
|
||||
titles.load(fmt("%s/" TITLES_FILENAME, m_settingsDir.c_str()));
|
||||
@ -116,10 +115,12 @@ int CMenu::_config4(void)
|
||||
m_cfg.setBool("GENERAL", "save_favorites_mode", !m_cfg.getBool("GENERAL", "save_favorites_mode"));
|
||||
_showConfig4();
|
||||
}
|
||||
else if (m_btnMgr.selected(m_config4BtnCategoryOnBoot))
|
||||
else if (m_btnMgr.selected(m_config4BtnPathManager))
|
||||
{
|
||||
m_cat.setBool("GENERAL", "category_on_start", !m_cat.getBool("GENERAL", "category_on_start", false));
|
||||
_hideConfig4();
|
||||
_Paths();
|
||||
_showConfig4();
|
||||
break;
|
||||
}
|
||||
else if (m_btnMgr.selected(m_config4BtnReturnToP))
|
||||
{
|
||||
@ -150,23 +151,24 @@ void CMenu::_initConfig4Menu()
|
||||
{
|
||||
_addUserLabels(m_config4LblUser, ARRAY_SIZE(m_config4LblUser), "CONFIG4");
|
||||
m_config4Bg = _texture("CONFIG4/BG", "texture", theme.bg, false);
|
||||
|
||||
m_config4LblHome = _addLabel("CONFIG4/WIIMENU", theme.lblFont, L"", 40, 130, 340, 56, theme.lblFontColor, FTGX_JUSTIFY_LEFT | FTGX_ALIGN_MIDDLE);
|
||||
m_config4BtnHome = _addButton("CONFIG4/WIIMENU_BTN", theme.btnFont, L"", 370, 130, 230, 56, theme.btnFontColor);
|
||||
m_config4LblSaveFavMode = _addLabel("CONFIG4/SAVE_FAVMODE", theme.lblFont, L"", 40, 190, 340, 56, theme.lblFontColor, FTGX_JUSTIFY_LEFT | FTGX_ALIGN_MIDDLE);
|
||||
m_config4BtnSaveFavMode = _addButton("CONFIG4/SAVE_FAVMODE_BTN", theme.btnFont, L"", 370, 190, 230, 56, theme.btnFontColor);
|
||||
m_config4LblCategoryOnBoot = _addLabel("CONFIG4/CAT_ON_START", theme.lblFont, L"", 40, 250, 340, 56, theme.lblFontColor, FTGX_JUSTIFY_LEFT | FTGX_ALIGN_MIDDLE);
|
||||
m_config4BtnCategoryOnBoot = _addButton("CONFIG4/CAT_ON_START_BTN", theme.btnFont, L"", 370, 250, 230, 56, theme.btnFontColor);
|
||||
m_config4LblPathManager = _addLabel("CONFIG4/PATH_MANAGER", theme.lblFont, L"", 40, 250, 340, 56, theme.lblFontColor, FTGX_JUSTIFY_LEFT | FTGX_ALIGN_MIDDLE);
|
||||
m_config4BtnPathManager = _addButton("CONFIG4/PATH_MANAGER_BTN", theme.btnFont, L"", 370, 250, 230, 56, theme.btnFontColor);
|
||||
m_config4LblReturnTo = _addLabel("CONFIG4/RETURN_TO", theme.lblFont, L"", 40, 310, 290, 56, theme.lblFontColor, FTGX_JUSTIFY_LEFT | FTGX_ALIGN_MIDDLE);
|
||||
m_config4LblReturnToVal = _addLabel("CONFIG4/RETURN_TO_BTN", theme.btnFont, L"", 426, 310, 118, 56, theme.btnFontColor, FTGX_JUSTIFY_CENTER | FTGX_ALIGN_MIDDLE, theme.btnTexC);
|
||||
m_config4BtnReturnToM = _addPicButton("CONFIG4/RETURN_TO_MINUS", theme.btnTexMinus, theme.btnTexMinusS, 370, 310, 56, 56);
|
||||
m_config4BtnReturnToP = _addPicButton("CONFIG4/RETURN_TO_PLUS", theme.btnTexPlus, theme.btnTexPlusS, 544, 310, 56, 56);
|
||||
//
|
||||
_setHideAnim(m_config4LblHome, "CONFIG4/WIIMENU", 100, 0, -2.f, 0.f);
|
||||
_setHideAnim(m_config4BtnHome, "CONFIG4/WIIMENU_BTN", 0, 0, 1.f, -1.f);
|
||||
_setHideAnim(m_config4LblPathManager, "CONFIG4/PATH_MANAGER", 100, 0, -2.f, 0.f);
|
||||
_setHideAnim(m_config4BtnPathManager, "CONFIG4/PATH_MANAGER_BTN", 0, 0, 1.f, -1.f);
|
||||
_setHideAnim(m_config4LblSaveFavMode, "CONFIG4/SAVE_FAVMODE", 100, 0, -2.f, 0.f);
|
||||
_setHideAnim(m_config4BtnSaveFavMode, "CONFIG4/SAVE_FAVMODE_BTN", 0, 0, 1.f, -1.f);
|
||||
_setHideAnim(m_config4LblCategoryOnBoot, "CONFIG4/CAT_ON_START", 100, 0, -2.f, 0.f);
|
||||
_setHideAnim(m_config4BtnCategoryOnBoot, "CONFIG4/CAT_ON_START_BTN", 0, 0, 1.f, -1.f);
|
||||
_setHideAnim(m_config4LblHome, "CONFIG4/WIIMENU", 100, 0, -2.f, 0.f);
|
||||
_setHideAnim(m_config4BtnHome, "CONFIG4/WIIMENU_BTN", 0, 0, 1.f, -1.f);
|
||||
_setHideAnim(m_config4LblReturnTo, "CONFIG4/RETURN_TO", 100, 0, -2.f, 0.f);
|
||||
_setHideAnim(m_config4LblReturnToVal, "CONFIG4/RETURN_TO_BTN", 0, 0, 1.f, -1.f);
|
||||
_setHideAnim(m_config4BtnReturnToM, "CONFIG4/RETURN_TO_MINUS", 0, 0, 1.f, -1.f);
|
||||
@ -179,6 +181,7 @@ void CMenu::_textConfig4(void)
|
||||
{
|
||||
m_btnMgr.setText(m_config4LblHome, _t("cfgc1", L"Exit To"));
|
||||
m_btnMgr.setText(m_config4LblSaveFavMode, _t("cfgd5", L"Save favorite mode state"));
|
||||
m_btnMgr.setText(m_config4LblCategoryOnBoot, _t("cfgd7", L"Show categories on boot"));
|
||||
m_btnMgr.setText(m_config4LblPathManager, _t("cfgd4", L"Path Manager"));
|
||||
m_btnMgr.setText(m_config4BtnPathManager, _t("cfgc5", L"Go"));
|
||||
m_btnMgr.setText(m_config4LblReturnTo, _t("cfgg21", L"Return To Channel"));
|
||||
}
|
||||
|
@ -173,6 +173,11 @@ const CMenu::SOption CMenu::_NoDVD[3] = {
|
||||
{ "NoDVDon", L"Enabled" },
|
||||
};
|
||||
|
||||
const CMenu::SOption CMenu::_GlobalGCLoaders[2] = {
|
||||
{ "GC_DM", L"DIOS-MIOS" },
|
||||
{ "GC_Devo", L"Devolution" },
|
||||
};
|
||||
|
||||
const CMenu::SOption CMenu::_GCLoader[3] = {
|
||||
{ "GC_Def", L"Default" },
|
||||
{ "GC_DM", L"DIOS-MIOS" },
|
||||
@ -857,7 +862,6 @@ void CMenu::_launchGC(dir_discHdr *hdr, bool disc)
|
||||
DCFlushRange((u8*)Disc_ID, 32);
|
||||
|
||||
const char *path = hdr->path;
|
||||
m_cfg.setString(GC_DOMAIN, "current_item", id);
|
||||
m_gcfg1.setInt("PLAYCOUNT", id, m_gcfg1.getInt("PLAYCOUNT", id, 0) + 1);
|
||||
m_gcfg1.setUInt("LASTPLAYED", id, time(NULL));
|
||||
|
||||
@ -880,20 +884,24 @@ void CMenu::_launchGC(dir_discHdr *hdr, bool disc)
|
||||
}
|
||||
|
||||
u8 loader = min((u32)m_gcfg2.getInt(id, "gc_loader", 0), ARRAY_SIZE(CMenu::_GCLoader) - 1u);
|
||||
loader = (loader == 0) ? min((u32)m_cfg.getInt(GC_DOMAIN, "default_loader", 0), ARRAY_SIZE(CMenu::_GlobalGCLoaders) - 1u) : loader-1;
|
||||
bool memcard_emu = m_gcfg2.getBool(id, "devo_memcard_emu", false);
|
||||
bool widescreen = m_gcfg2.getBool(id, "dm_widescreen", false);
|
||||
bool activity_led = m_gcfg2.getBool(id, "led", false);
|
||||
|
||||
if(disc)
|
||||
{
|
||||
loader = 1;
|
||||
loader = 0;
|
||||
gprintf("Booting GC Disc: %s\n", id);
|
||||
DML_New_SetBootDiscOption(m_new_dm_cfg);
|
||||
}
|
||||
else if(loader == 1 || strcasestr(path, "boot.bin") != NULL || !m_devo_installed)
|
||||
{
|
||||
loader = 1;
|
||||
else
|
||||
m_cfg.setString(GC_DOMAIN, "current_item", id);
|
||||
bool DIOSMIOS = false;
|
||||
if(loader == 0 || strcasestr(path, "boot.bin") != NULL)
|
||||
{
|
||||
|
||||
DIOSMIOS = true;
|
||||
char CheatPath[256];
|
||||
u8 NMM = min((u32)m_gcfg2.getInt(id, "dml_nmm", 0), ARRAY_SIZE(CMenu::_NMM) - 1u);
|
||||
NMM = (NMM == 0) ? m_cfg.getInt(GC_DOMAIN, "dml_nmm", 0) : NMM-1;
|
||||
@ -926,11 +934,7 @@ void CMenu::_launchGC(dir_discHdr *hdr, bool disc)
|
||||
WDVD_StopMotor();
|
||||
}
|
||||
else
|
||||
{
|
||||
loader = 2;
|
||||
DEVO_GetLoader(m_dataDir.c_str());
|
||||
}
|
||||
bool DIOSMIOS = (loader == 1);
|
||||
|
||||
m_gcfg1.save(true);
|
||||
m_gcfg2.save(true);
|
||||
|
@ -268,7 +268,7 @@ int CMenu::main(void)
|
||||
if(m_cfg.getBool("GENERAL", "update_cache", false))
|
||||
UpdateCache();
|
||||
LoadView();
|
||||
if(m_cfg.getBool("GENERAL", "startup_menu", false))
|
||||
if(m_cfg.getBool("GENERAL", "source_on_start", false))
|
||||
{
|
||||
_hideMain();
|
||||
if(!_Source())
|
||||
|
286
source/menu/menu_paths.cpp
Normal file
286
source/menu/menu_paths.cpp
Normal file
@ -0,0 +1,286 @@
|
||||
|
||||
#include "menu.hpp"
|
||||
|
||||
using namespace std;
|
||||
|
||||
s16 m_pathsLblTitle;
|
||||
s16 m_pathsLblPage;
|
||||
s16 m_pathsBtnPageM;
|
||||
s16 m_pathsBtnPageP;
|
||||
s16 m_pathsBtnBack;
|
||||
|
||||
s16 m_pathsLbl1;
|
||||
s16 m_pathsLbl2;
|
||||
s16 m_pathsLbl3;
|
||||
s16 m_pathsLbl4;
|
||||
|
||||
s16 m_pathsBtn1;
|
||||
s16 m_pathsBtn2;
|
||||
s16 m_pathsBtn3;
|
||||
s16 m_pathsBtn4;
|
||||
|
||||
s16 m_pathsLblUser[4];
|
||||
|
||||
TexData m_pathsBg;
|
||||
|
||||
u8 paths_curPage = 1;
|
||||
u8 paths_Pages = 2;
|
||||
|
||||
void CMenu::_hidePaths(bool instant)
|
||||
{
|
||||
m_btnMgr.hide(m_pathsLblTitle, instant);
|
||||
m_btnMgr.hide(m_pathsBtnBack, instant);
|
||||
m_btnMgr.hide(m_pathsLblPage, instant);
|
||||
m_btnMgr.hide(m_pathsBtnPageM, instant);
|
||||
m_btnMgr.hide(m_pathsBtnPageP, instant);
|
||||
m_btnMgr.hide(m_pathsLbl1, instant);
|
||||
m_btnMgr.hide(m_pathsBtn1, instant);
|
||||
m_btnMgr.hide(m_pathsLbl2, instant);
|
||||
m_btnMgr.hide(m_pathsBtn2, instant);
|
||||
m_btnMgr.hide(m_pathsLbl3, instant);
|
||||
m_btnMgr.hide(m_pathsBtn3, instant);
|
||||
m_btnMgr.hide(m_pathsLbl4, instant);
|
||||
m_btnMgr.hide(m_pathsBtn4, instant);
|
||||
|
||||
for(u8 i = 0; i < ARRAY_SIZE(m_pathsLblUser); ++i)
|
||||
if(m_pathsLblUser[i] != -1)
|
||||
m_btnMgr.hide(m_pathsLblUser[i], instant);
|
||||
}
|
||||
|
||||
void CMenu::_showPaths(void)
|
||||
{
|
||||
m_btnMgr.hide(m_pathsLbl1, true);
|
||||
m_btnMgr.hide(m_pathsBtn1, true);
|
||||
m_btnMgr.hide(m_pathsLbl2, true);
|
||||
m_btnMgr.hide(m_pathsBtn2, true);
|
||||
m_btnMgr.hide(m_pathsLbl3, true);
|
||||
m_btnMgr.hide(m_pathsBtn3, true);
|
||||
m_btnMgr.hide(m_pathsLbl4, true);
|
||||
m_btnMgr.hide(m_pathsBtn4, true);
|
||||
_setBg(m_pathsBg, m_pathsBg);
|
||||
m_btnMgr.show(m_pathsLblTitle);
|
||||
m_btnMgr.show(m_pathsBtnBack);
|
||||
m_btnMgr.show(m_pathsLblPage);
|
||||
m_btnMgr.show(m_pathsBtnPageM);
|
||||
m_btnMgr.show(m_pathsBtnPageP);
|
||||
for(u32 i = 0; i < ARRAY_SIZE(m_pathsLblUser); ++i)
|
||||
if(m_pathsLblUser[i] != -1)
|
||||
m_btnMgr.show(m_pathsLblUser[i]);
|
||||
m_btnMgr.setText(m_pathsLblPage, wfmt(L"%i / %i", paths_curPage, paths_Pages));
|
||||
m_btnMgr.show(m_pathsLbl1);
|
||||
m_btnMgr.show(m_pathsBtn1);
|
||||
m_btnMgr.show(m_pathsLbl2);
|
||||
m_btnMgr.show(m_pathsBtn2);
|
||||
m_btnMgr.show(m_pathsLbl3);
|
||||
m_btnMgr.show(m_pathsBtn3);
|
||||
if(paths_curPage == 1)
|
||||
{
|
||||
m_btnMgr.show(m_pathsLbl4);
|
||||
m_btnMgr.show(m_pathsBtn4);
|
||||
m_btnMgr.setText(m_pathsLbl1, _t("cfgp1", L"Box Covers"));
|
||||
m_btnMgr.setText(m_pathsLbl2, _t("cfgp2", L"Flat Covers"));
|
||||
m_btnMgr.setText(m_pathsLbl3, _t("cfgp3", L"Custom Banners"));
|
||||
m_btnMgr.setText(m_pathsLbl4, _t("cfgp4", L"Banners Cache"));
|
||||
}
|
||||
else
|
||||
{
|
||||
m_btnMgr.setText(m_pathsLbl1, _t("cfgp5", L"Wii Games"));
|
||||
m_btnMgr.setText(m_pathsLbl2, _t("cfgp6", L"GameCube Games"));
|
||||
m_btnMgr.setText(m_pathsLbl3, _t("cfgp7", L"Music"));
|
||||
}
|
||||
}
|
||||
|
||||
void CMenu::_Paths(void)
|
||||
{
|
||||
const char *path;
|
||||
paths_curPage = 1;
|
||||
SetupInput();
|
||||
_showPaths();
|
||||
while(!m_exit)
|
||||
{
|
||||
_mainLoopCommon();
|
||||
if (BTN_HOME_PRESSED || BTN_B_PRESSED || (BTN_A_PRESSED && m_btnMgr.selected(m_pathsBtnBack)))
|
||||
break;
|
||||
else if (BTN_UP_PRESSED)
|
||||
m_btnMgr.up();
|
||||
else if (BTN_DOWN_PRESSED)
|
||||
m_btnMgr.down();
|
||||
else if (BTN_LEFT_PRESSED || BTN_MINUS_PRESSED || (BTN_A_PRESSED && m_btnMgr.selected(m_pathsBtnPageM)))
|
||||
{
|
||||
paths_curPage--;
|
||||
if(paths_curPage == 0) paths_curPage = paths_Pages;
|
||||
if(BTN_LEFT_PRESSED || BTN_MINUS_PRESSED)
|
||||
m_btnMgr.click(m_pathsBtnPageM);
|
||||
_showPaths();
|
||||
}
|
||||
else if (BTN_RIGHT_PRESSED || BTN_PLUS_PRESSED || (BTN_A_PRESSED && m_btnMgr.selected(m_pathsBtnPageP)))
|
||||
{
|
||||
paths_curPage++;
|
||||
if(paths_curPage > paths_Pages) paths_curPage = 1;
|
||||
if(BTN_RIGHT_PRESSED || BTN_PLUS_PRESSED) m_btnMgr.click(m_pathsBtnPageP);
|
||||
_showPaths();
|
||||
}
|
||||
else if (BTN_A_PRESSED && paths_curPage == 1)
|
||||
{
|
||||
if (m_btnMgr.selected(m_pathsBtn1))
|
||||
{
|
||||
_hidePaths();
|
||||
path = _FolderExplorer();
|
||||
if(strlen(path) > 0)
|
||||
{
|
||||
m_cfg.setString("GENERAL", "dir_box_covers", path);
|
||||
m_boxPicDir = path;
|
||||
m_load_view = true;
|
||||
}
|
||||
_showPaths();
|
||||
}
|
||||
else if (m_btnMgr.selected(m_pathsBtn2))
|
||||
{
|
||||
_hidePaths();
|
||||
path = _FolderExplorer();
|
||||
if(strlen(path) > 0)
|
||||
{
|
||||
m_cfg.setString("GENERAL", "dir_flat_covers", path);
|
||||
m_picDir = path;
|
||||
m_load_view = true;
|
||||
}
|
||||
_showPaths();
|
||||
}
|
||||
else if (m_btnMgr.selected(m_pathsBtn3))
|
||||
{
|
||||
_hidePaths();
|
||||
path = _FolderExplorer();
|
||||
if(strlen(path) > 0)
|
||||
{
|
||||
m_cfg.setString("GENERAL", "dir_custom_banners", path);
|
||||
m_customBnrDir = path;
|
||||
}
|
||||
_showPaths();
|
||||
}
|
||||
else if (m_btnMgr.selected(m_pathsBtn4))
|
||||
{
|
||||
_hidePaths();
|
||||
path = _FolderExplorer();
|
||||
if(strlen(path) > 0)
|
||||
{
|
||||
m_cfg.setString("GENERAL", "dir_banner_cache", path);
|
||||
m_bnrCacheDir = path;
|
||||
}
|
||||
_showPaths();
|
||||
}
|
||||
}
|
||||
else if (BTN_A_PRESSED && paths_curPage == 2)
|
||||
{
|
||||
if (m_btnMgr.selected(m_pathsBtn1))
|
||||
{
|
||||
_hidePaths();
|
||||
path = _FolderExplorer();
|
||||
if(strlen(path) > 0)
|
||||
{
|
||||
if(strncmp(path, "sd:/", 4) == 0)
|
||||
m_cfg.setInt(WII_DOMAIN, "partition", 0);
|
||||
else
|
||||
{
|
||||
const char *partval = &path[3];
|
||||
m_cfg.setInt(WII_DOMAIN, "partition", atoi(partval));
|
||||
}
|
||||
char tmpPath[MAX_FAT_PATH];
|
||||
strcpy(tmpPath, "%s");
|
||||
strcat(tmpPath, strchr(path, ':'));
|
||||
m_cfg.setString(WII_DOMAIN, "wii_games_dir", tmpPath);
|
||||
memset(wii_games_dir, 0, 64);
|
||||
strncpy(wii_games_dir, tmpPath, 64);
|
||||
m_cfg.setBool(WII_DOMAIN, "update_cache", true);
|
||||
if(m_cfg.getBool(WII_DOMAIN, "source"))
|
||||
m_load_view = true;
|
||||
}
|
||||
_showPaths();
|
||||
}
|
||||
else if (m_btnMgr.selected(m_pathsBtn2))
|
||||
{
|
||||
_hidePaths();
|
||||
path = _FolderExplorer();
|
||||
if(strlen(path) > 0)
|
||||
{
|
||||
if(strncmp(path, "sd:/", 4) == 0)
|
||||
m_cfg.setInt(GC_DOMAIN, "partition", 0);
|
||||
else
|
||||
{
|
||||
const char *partval = &path[3];
|
||||
m_cfg.setInt(GC_DOMAIN, "partition", atoi(partval));
|
||||
}
|
||||
char tmpPath[MAX_FAT_PATH];
|
||||
strncpy(tmpPath, strchr(path, '/')+1, MAX_FAT_PATH-1);
|
||||
m_cfg.setString(GC_DOMAIN, "dir_usb_games", tmpPath);
|
||||
m_DMLgameDir = fmt("%%s:/%s", m_cfg.getString(GC_DOMAIN, "dir_usb_games", "games").c_str());
|
||||
m_cfg.setBool(GC_DOMAIN, "update_cache", true);
|
||||
if(m_cfg.getBool(GC_DOMAIN, "source"))
|
||||
m_load_view = true;
|
||||
}
|
||||
_showPaths();
|
||||
}
|
||||
else if (m_btnMgr.selected(m_pathsBtn3))
|
||||
{
|
||||
_hidePaths();
|
||||
path = _FolderExplorer();
|
||||
if(strlen(path) > 0)
|
||||
{
|
||||
m_cfg.setString("GENERAL", "dir_music", path);
|
||||
m_musicDir = path;
|
||||
MusicPlayer.Init(m_cfg, m_musicDir, fmt("%s/music", m_themeDataDir.c_str()));
|
||||
|
||||
}
|
||||
_showPaths();
|
||||
}
|
||||
}
|
||||
}
|
||||
_hidePaths();
|
||||
}
|
||||
|
||||
void CMenu::_initPathsMenu()
|
||||
{
|
||||
_addUserLabels(m_pathsLblUser, ARRAY_SIZE(m_pathsLblUser), "PATHS");
|
||||
m_pathsBg = _texture("PATHS/BG", "texture", theme.bg, false);
|
||||
m_pathsLblTitle = _addTitle("PATHS/TITLE", theme.titleFont, L"", 20, 30, 600, 60, theme.titleFontColor, FTGX_JUSTIFY_CENTER | FTGX_ALIGN_MIDDLE);
|
||||
m_pathsLblPage = _addLabel("PATHS/PAGE_BTN", theme.btnFont, L"", 76, 400, 80, 56, theme.btnFontColor, FTGX_JUSTIFY_CENTER | FTGX_ALIGN_MIDDLE, theme.btnTexC);
|
||||
m_pathsBtnPageM = _addPicButton("PATHS/PAGE_MINUS", theme.btnTexMinus, theme.btnTexMinusS, 20, 400, 56, 56);
|
||||
m_pathsBtnPageP = _addPicButton("PATHS/PAGE_PLUS", theme.btnTexPlus, theme.btnTexPlusS, 156, 400, 56, 56);
|
||||
m_pathsBtnBack = _addButton("PATHS/BACK_BTN", theme.btnFont, L"", 420, 400, 200, 56, theme.btnFontColor);
|
||||
|
||||
m_pathsLbl1 = _addLabel("PATHS/DIR1", theme.lblFont, L"", 40, 130, 290, 56, theme.lblFontColor, FTGX_JUSTIFY_LEFT | FTGX_ALIGN_MIDDLE);
|
||||
m_pathsBtn1 = _addButton("PATHS/DIR1_BTN", theme.btnFont, L"", 370, 130, 230, 56, theme.btnFontColor);
|
||||
m_pathsLbl2 = _addLabel("PATHS/DIR2", theme.lblFont, L"", 40, 190, 290, 56, theme.lblFontColor, FTGX_JUSTIFY_LEFT | FTGX_ALIGN_MIDDLE);
|
||||
m_pathsBtn2 = _addButton("PATHS/DIR2_BTN", theme.btnFont, L"", 370, 190, 230, 56, theme.btnFontColor);
|
||||
m_pathsLbl3 = _addLabel("PATHS/DIR3", theme.lblFont, L"", 40, 250, 290, 56, theme.lblFontColor, FTGX_JUSTIFY_LEFT | FTGX_ALIGN_MIDDLE);
|
||||
m_pathsBtn3 = _addButton("PATHS/DIR3_BTN", theme.btnFont, L"", 370, 250, 230, 56, theme.btnFontColor);
|
||||
m_pathsLbl4 = _addLabel("PATHS/DIR4", theme.lblFont, L"", 40, 310, 290, 56, theme.lblFontColor, FTGX_JUSTIFY_LEFT | FTGX_ALIGN_MIDDLE);
|
||||
m_pathsBtn4 = _addButton("PATHS/DIR4_BTN", theme.btnFont, L"", 370, 310, 230, 56, theme.btnFontColor);
|
||||
|
||||
_setHideAnim(m_pathsLblTitle, "PATHS/TITLE", 0, 0, -2.f, 0.f);
|
||||
_setHideAnim(m_pathsBtnBack, "PATHS/BACK_BTN", 0, 0, -2.f, 0.f);
|
||||
_setHideAnim(m_pathsLblPage, "PATHS/PAGE_BTN", 0, 0, 1.f, -1.f);
|
||||
_setHideAnim(m_pathsBtnPageM, "PATHS/PAGE_MINUS", 0, 0, 1.f, -1.f);
|
||||
_setHideAnim(m_pathsBtnPageP, "PATHS/PAGE_PLUS", 0, 0, 1.f, -1.f);
|
||||
|
||||
_setHideAnim(m_pathsLbl1, "PATHS/DIR1", 100, 0, -2.f, 0.f);
|
||||
_setHideAnim(m_pathsBtn1, "PATHS/DIR1_BTN", 0, 0, 1.f, -1.f);
|
||||
_setHideAnim(m_pathsLbl2, "PATHS/DIR2", 100, 0, -2.f, 0.f);
|
||||
_setHideAnim(m_pathsBtn2, "PATHS/DIR2_BTN", 0, 0, 1.f, -1.f);
|
||||
_setHideAnim(m_pathsLbl3, "PATHS/DIR3", 100, 0, -2.f, 0.f);
|
||||
_setHideAnim(m_pathsBtn3, "PATHS/DIR3_BTN", 0, 0, 1.f, -1.f);
|
||||
_setHideAnim(m_pathsLbl4, "PATHS/DIR4", 100, 0, -2.f, 0.f);
|
||||
_setHideAnim(m_pathsBtn4, "PATHS/DIR4_BTN", 0, 0, 1.f, -1.f);
|
||||
|
||||
_hidePaths(true);
|
||||
_textPaths();
|
||||
}
|
||||
|
||||
void CMenu::_textPaths(void)
|
||||
{
|
||||
m_btnMgr.setText(m_pathsLblTitle, _t("cfgd4", L"Path Manager"));
|
||||
m_btnMgr.setText(m_pathsBtnBack, _t("cfg10", L"Back"));
|
||||
m_btnMgr.setText(m_pathsBtn1, _t("dl16", L"Set"));
|
||||
m_btnMgr.setText(m_pathsBtn2, _t("dl16", L"Set"));
|
||||
m_btnMgr.setText(m_pathsBtn3, _t("dl16", L"Set"));
|
||||
m_btnMgr.setText(m_pathsBtn4, _t("dl16", L"Set"));
|
||||
}
|
@ -44,6 +44,7 @@ cfga3=Install
|
||||
cfga6=Language
|
||||
cfga7=Theme
|
||||
cfgb1=Ocarina
|
||||
cfgb2=Default GC game loader
|
||||
cfgb3=Default video mode
|
||||
cfgb4=Default game language
|
||||
cfgb5=Default DML video mode
|
||||
@ -67,6 +68,7 @@ cfgc6=Horizontal offset
|
||||
cfgc7=Vertical offset
|
||||
cfgc8=Startup Settings
|
||||
cfgc9=Manage Languages
|
||||
cfgd4=Path Manager
|
||||
cfgd5=Save favorite mode state
|
||||
cfgd7=Show categories on boot
|
||||
cfgg1=Settings
|
||||
@ -151,6 +153,13 @@ cfgs1=Music volume
|
||||
cfgs2=GUI sound volume
|
||||
cfgs3=Coverflow sound volume
|
||||
cfgs4=Game sound volume
|
||||
cfgp1=Box Covers
|
||||
cfgp2=Flat Covers
|
||||
cfgp3=Custom Banners
|
||||
cfgp4=Banners Cache
|
||||
cfgp5=Wii Games
|
||||
cfgp6=GC Games
|
||||
cfgp7=Music
|
||||
cheat1=Back
|
||||
cheat2=Apply
|
||||
cheat3=Cheat file for game not found.
|
||||
|
Loading…
Reference in New Issue
Block a user