WiiFlow_Lite/source/menu/menu_error.cpp
fledge68 17fa36e898 -fixed displaying errors on source menu
-removed vipatch, country patch, private server and cheats defaults from wiiflow.ini. no need for default/global setting for those options. they all default to off internally in wiiflow.
-now on file explorer menu pressing home btn returns you to device select so you don't have to keep backing up to get back to devices.
-fixed a few minor problems with game configs, especially gc games. now all game config options should work properly.
-now using bitwise operators and expressions on m_current_view to control which sources are selected.  no more source= under each domain. just sources= under GENERAL.
-replaced ocarina option from main settings pg3 with channels type option. no need for a global/default ocarina setting. channels type allows you to select real, emu, or both channels types for channels coverflow. which means no more pressing B on config icon to cycle thru the choices.
-fixed a minor bug when downloading covers
-changed newid.ini to use only one domain name "[NEWID]". this fixes a possible problem when downloading covers and using newid.ini and multisource.
-added install wad option to nand emulation settings menu. I know you can do it via file explorer but this makes it easier for newbies to find. plus you can select which nand to install to.
-fixed extract game saves.
-fixed extract nand and install GC game by stopping music and controller input while doing these functions.
-Install wii game is broke. added a error msg stating this and keeping users from using it. funny the code is almost identical to usbloader gx which works and wiiflow doesn't.
-now showing all btns on game selected screen. if wiiflow is locked a error msg appears stating this.
-changed makeDir to make the whole path not just one folder. thanks to usbloader gx code.
-added .ciso extension to gamecube list maker so you can use them with nintendont.
2016-12-01 00:05:39 +00:00

80 lines
2.0 KiB
C++

#include "menu.hpp"
s16 m_errorLblMessage;
s16 m_errorLblIcon;
s16 m_errorLblUser[4];
void CMenu::error(const wstringEx &msg)
{
SetupInput();
_hideAbout();
_hideCode();
_hideConfig();
_hideConfigAdv();
_hideConfig3();
_hideConfig4();
_hideConfigScreen();
_hideConfigSnd();
_hideDownload();
_hideGame();
_hideMain();
_hideWBFS();
_hideCFTheme();
_hideCategorySettings();
_hideSystem();
_hideGameInfo();
_hideCheatDownload();
_hideGameSettings();
_hideSource();
_hideWaitMessage();
m_btnMgr.setText(m_errorLblMessage, msg, true);
_showError();
gprintf(msg.toUTF8().c_str());
do
{
_mainLoopCommon();
} while (!m_exit && !BTN_B_PRESSED && !BTN_A_PRESSED && !BTN_HOME_PRESSED);
_hideError(false);
}
void CMenu::_hideError(bool instant)
{
m_btnMgr.hide(m_errorLblIcon, instant);
m_btnMgr.hide(m_errorLblMessage, instant);
for(u8 i = 0; i < ARRAY_SIZE(m_errorLblUser); ++i)
if(m_errorLblUser[i] != -1)
m_btnMgr.hide(m_errorLblUser[i], instant);
}
void CMenu::_showError(void)
{
_setBg(m_errorBg, m_errorBg);
m_btnMgr.show(m_errorLblMessage);
m_btnMgr.show(m_errorLblIcon);
for(u8 i = 0; i < ARRAY_SIZE(m_errorLblUser); ++i)
if(m_errorLblUser[i] != -1)
m_btnMgr.show(m_errorLblUser[i]);
}
void CMenu::_initErrorMenu()
{
TexData texIcon;
TexHandle.fromImageFile(texIcon, fmt("%s/error.png", m_imgsDir.c_str()));
_addUserLabels(m_errorLblUser, ARRAY_SIZE(m_errorLblUser), "ERROR");
m_errorBg = _texture("ERROR/BG", "texture", theme.bg, false);
m_errorLblMessage = _addLabel("ERROR/MESSAGE", theme.lblFont, L"", 112, 20, 500, 440, theme.lblFontColor, FTGX_JUSTIFY_LEFT | FTGX_ALIGN_MIDDLE);
m_errorLblIcon = _addLabel("ERROR/ICON", theme.lblFont, L"", 40, 200, 64, 64, theme.lblFontColor, 0, texIcon);
//
_setHideAnim(m_errorLblMessage, "ERROR/MESSAGE", 0, 0, 0.f, 0.f);
_setHideAnim(m_errorLblIcon, "ERROR/ICON", -50, 0, 0.f, 0.f);
//
_hideError(true);
_textError();
}
void CMenu::_textError(void)
{
}