-added home menu, it will open if you press the home button/icon,

currently you can access the settings from it, see the about screen,
update wiiflow, reload cache and exit wiiflow (to exit wiiflow you
can also just press home/start button again in this menu)
-removed reload cache with b button on settings icon
-removed update button from about menu
-updated english help file and english.ini
-updated german.ini
This commit is contained in:
fix94.1 2012-06-21 17:28:46 +00:00
parent f6cba49acc
commit 927fec478d
8 changed files with 176 additions and 41 deletions

View File

@ -6,8 +6,8 @@ Controls:
-- Minus / Plus = Fast skip through games -- Minus / Plus = Fast skip through games
-- A = Select game -- A = Select game
-- B+A = Launch game immediately -- B+A = Launch game immediately
-- B+Home = Reload Wiiflow -- B+Home = Reload WiiFlow
-- Home = Exit to Wii menu -- Home = Open Home Menu / Exit WiiFlow
-- 1 / 2 = Previous / next coverflow mode -- 1 / 2 = Previous / next coverflow mode
-- B+Left / B+Right = Change Song -- B+Left / B+Right = Change Song
-- B+UP / B+DOWN = Alphabetic search -- B+UP / B+DOWN = Alphabetic search
@ -17,7 +17,7 @@ Controls:
-- A on Star Icon = Favorites -- A on Star Icon = Favorites
-- B on Star Icon = Categories -- B on Star Icon = Categories
-- A on Gear Icon = Wiiflow settings -- A on Gear Icon = WiiFlow settings
-- B on Gear Icon = Refresh cache -- B on Gear Icon = Refresh cache
-- A on USB, DML, Channels, Emu, or Homebrew Icon = Switch to that view -- A on USB, DML, Channels, Emu, or Homebrew Icon = Switch to that view
-- B on USB, DML, Channels, Emu, or Homebrew Icon = Enable/Disable Emu-NAND and switch to Channels view -- B on USB, DML, Channels, Emu, or Homebrew Icon = Enable/Disable Emu-NAND and switch to Channels view
@ -49,7 +49,7 @@ Controls:
-- B+Minus / B+Plus = Previous / next page -- B+Minus / B+Plus = Previous / next page
-- B = Faster adjustment (B+A instead of just A to click a button) -- B = Faster adjustment (B+A instead of just A to click a button)
-- B+1 = Copy whole coverflow -- B+1 = Copy whole coverflow
-- B+2 = Paste coverflow\n\ -- B+2 = Paste coverflow
TIPS for running games that crash: TIPS for running games that crash:
If the game just locks up with a black screen at launch then check to see if it is a PAL game. If the game just locks up with a black screen at launch then check to see if it is a PAL game.

View File

@ -1059,6 +1059,7 @@ void CMenu::_buildMenus(void)
_initSystemMenu(theme); _initSystemMenu(theme);
_initGameInfoMenu(theme); _initGameInfoMenu(theme);
_initNandEmuMenu(theme); _initNandEmuMenu(theme);
_initHomeMenu(theme);
_loadCFCfg(theme); _loadCFCfg(theme);
} }

View File

@ -405,7 +405,6 @@ private:
u32 m_aboutLblInfo; u32 m_aboutLblInfo;
u32 m_aboutLblUser[4]; u32 m_aboutLblUser[4];
u32 m_aboutLblIOS; u32 m_aboutLblIOS;
u32 m_aboutBtnSystem;
//menu_wbfs //menu_wbfs
u32 m_wbfsLblTitle; u32 m_wbfsLblTitle;
u32 m_wbfsPBar; u32 m_wbfsPBar;
@ -849,6 +848,7 @@ private:
void _initSystemMenu(SThemeData &theme); void _initSystemMenu(SThemeData &theme);
void _initGameInfoMenu(SThemeData &theme); void _initGameInfoMenu(SThemeData &theme);
void _initNandEmuMenu(CMenu::SThemeData &theme); void _initNandEmuMenu(CMenu::SThemeData &theme);
void _initHomeMenu(CMenu::SThemeData &theme);
// //
void _textSource(void); void _textSource(void);
void _textPluginSettings(void); void _textPluginSettings(void);
@ -872,6 +872,7 @@ private:
void _textGameSettings(void); void _textGameSettings(void);
void _textGameInfo(void); void _textGameInfo(void);
void _textNandEmu(void); void _textNandEmu(void);
void _textHome(void);
// //
void _hideCheatSettings(bool instant = false); void _hideCheatSettings(bool instant = false);
void _hideError(bool instant = false); void _hideError(bool instant = false);
@ -898,6 +899,7 @@ private:
void _hideGameInfo(bool instant = false); void _hideGameInfo(bool instant = false);
void _hideCheatDownload(bool instant = false); void _hideCheatDownload(bool instant = false);
void _hideNandEmu(bool instant = false); void _hideNandEmu(bool instant = false);
void _hideHome(bool instant = false);
// //
void _showError(void); void _showError(void);
void _showMain(void); void _showMain(void);
@ -925,6 +927,7 @@ private:
void _showCFTheme(u32 curParam, int version, bool wide); void _showCFTheme(u32 curParam, int version, bool wide);
void _showGameSettings(void); void _showGameSettings(void);
void _showCheatDownload(void); void _showCheatDownload(void);
void _showHome(void);
void _updateSourceBtns(void); void _updateSourceBtns(void);
void _updatePluginCheckboxes(void); void _updatePluginCheckboxes(void);
void _updateCheckboxes(void); void _updateCheckboxes(void);
@ -967,6 +970,7 @@ private:
bool _Source(); bool _Source();
void _PluginSettings(); void _PluginSettings();
void _CategorySettings(bool fromGameSet=false); void _CategorySettings(bool fromGameSet=false);
bool _Home();
// //
void _mainLoopCommon(bool withCF = false, bool blockReboot = false, bool adjusting = false); void _mainLoopCommon(bool withCF = false, bool blockReboot = false, bool adjusting = false);
// //

View File

@ -60,24 +60,6 @@ void CMenu::_about(void)
} }
else if (BTN_HOME_PRESSED || BTN_B_PRESSED) else if (BTN_HOME_PRESSED || BTN_B_PRESSED)
break; break;
else if (BTN_A_PRESSED && !(m_thrdWorking && m_thrdStop))
{
if (!m_locked && m_btnMgr.selected(m_aboutBtnSystem))
{
// show system menu
m_cf.stopCoverLoader(true);
_hideAbout(false);
_system();
remove(m_ver.c_str());
if(m_exit)
{
_launchHomebrew(m_dol.c_str(), m_homebrewArgs);
break;
}
_showAbout();
m_cf.startCoverLoader();
}
}
} }
_hideAbout(false); _hideAbout(false);
} }
@ -87,7 +69,6 @@ void CMenu::_hideAbout(bool instant)
m_btnMgr.hide(m_aboutLblTitle, instant); m_btnMgr.hide(m_aboutLblTitle, instant);
m_btnMgr.hide(m_aboutLblIOS, instant); m_btnMgr.hide(m_aboutLblIOS, instant);
m_btnMgr.hide(m_aboutLblInfo, instant); m_btnMgr.hide(m_aboutLblInfo, instant);
m_btnMgr.hide(m_aboutBtnSystem, instant);
for (u32 i = 0; i < ARRAY_SIZE(m_aboutLblUser); ++i) for (u32 i = 0; i < ARRAY_SIZE(m_aboutLblUser); ++i)
{ {
if (m_aboutLblUser[i] != -1u) if (m_aboutLblUser[i] != -1u)
@ -101,8 +82,6 @@ void CMenu::_showAbout(void)
m_btnMgr.show(m_aboutLblTitle); m_btnMgr.show(m_aboutLblTitle);
m_btnMgr.show(m_aboutLblIOS); m_btnMgr.show(m_aboutLblIOS);
m_btnMgr.show(m_aboutLblInfo,false,true); m_btnMgr.show(m_aboutLblInfo,false,true);
if (!m_locked)
m_btnMgr.show(m_aboutBtnSystem);
for (u32 i = 0; i < ARRAY_SIZE(m_aboutLblUser); ++i) for (u32 i = 0; i < ARRAY_SIZE(m_aboutLblUser); ++i)
{ {
if (m_aboutLblUser[i] != -1u) if (m_aboutLblUser[i] != -1u)
@ -117,12 +96,10 @@ void CMenu::_initAboutMenu(CMenu::SThemeData &theme)
m_aboutBg = _texture(theme.texSet, "ABOUT/BG", "texture", theme.bg); m_aboutBg = _texture(theme.texSet, "ABOUT/BG", "texture", theme.bg);
m_aboutLblTitle = _addTitle(theme, "ABOUT/TITLE", theme.titleFont, L"", 20, 30, 600, 75, theme.titleFontColor, FTGX_JUSTIFY_CENTER | FTGX_ALIGN_MIDDLE); m_aboutLblTitle = _addTitle(theme, "ABOUT/TITLE", theme.titleFont, L"", 20, 30, 600, 75, theme.titleFontColor, FTGX_JUSTIFY_CENTER | FTGX_ALIGN_MIDDLE);
m_aboutLblInfo = _addText(theme, "ABOUT/INFO", theme.txtFont, L"", 20, 200, 600, 280, theme.txtFontColor, FTGX_JUSTIFY_LEFT | FTGX_ALIGN_TOP); m_aboutLblInfo = _addText(theme, "ABOUT/INFO", theme.txtFont, L"", 20, 200, 600, 280, theme.txtFontColor, FTGX_JUSTIFY_LEFT | FTGX_ALIGN_TOP);
m_aboutBtnSystem = _addButton(theme, "ABOUT/SYSTEM_BTN", theme.btnFont, L"", 20, 400, 200, 56, theme.btnFontColor);
m_aboutLblIOS = _addLabel(theme, "ABOUT/IOS", theme.txtFont, L"", 240, 400, 360, 56, theme.txtFontColor, FTGX_JUSTIFY_RIGHT | FTGX_ALIGN_MIDDLE); m_aboutLblIOS = _addLabel(theme, "ABOUT/IOS", theme.txtFont, L"", 240, 400, 360, 56, theme.txtFontColor, FTGX_JUSTIFY_RIGHT | FTGX_ALIGN_MIDDLE);
_setHideAnim(m_aboutLblTitle, "ABOUT/TITLE", 0, 100, 0.f, 0.f); _setHideAnim(m_aboutLblTitle, "ABOUT/TITLE", 0, 100, 0.f, 0.f);
_setHideAnim(m_aboutLblInfo, "ABOUT/INFO", 0, 100, 0.f, 0.f); _setHideAnim(m_aboutLblInfo, "ABOUT/INFO", 0, 100, 0.f, 0.f);
_setHideAnim(m_aboutBtnSystem, "ABOUT/SYSTEM_BTN", 0, 0, -2.f, 0.f);
_setHideAnim(m_aboutLblIOS, "ABOUT/IOS", 0, 100, 0.f, 0.f); _setHideAnim(m_aboutLblIOS, "ABOUT/IOS", 0, 100, 0.f, 0.f);
_hideAbout(true); _hideAbout(true);
@ -130,7 +107,6 @@ void CMenu::_initAboutMenu(CMenu::SThemeData &theme)
void CMenu::_textAbout(void) void CMenu::_textAbout(void)
{ {
m_btnMgr.setText(m_aboutBtnSystem, _t("sys4", L"Update"));
m_btnMgr.setText(m_aboutLblTitle, wfmt(_fmt("appname", L"%s (%s-r%s)"), APP_NAME, APP_VERSION, SVN_REV), false); m_btnMgr.setText(m_aboutLblTitle, wfmt(_fmt("appname", L"%s (%s-r%s)"), APP_NAME, APP_VERSION, SVN_REV), false);
wstringEx help_text; wstringEx help_text;

148
source/menu/menu_home.cpp Normal file
View File

@ -0,0 +1,148 @@
#include "menu.hpp"
#include "svnrev.h"
u32 m_homeLblTitle;
u32 m_homeBtnSettings;
u32 m_homeBtnReloadCache;
u32 m_homeBtnUpdate;
u32 m_homeBtnAbout;
u32 m_homeBtnExit;
STexture m_homeBg;
bool CMenu::_Home(void)
{
bool exit = false;
SetupInput();
_showHome();
string prevTheme = m_cfg.getString("GENERAL", "theme", "default");
while(1)
{
_mainLoopCommon();
if(BTN_A_PRESSED)
{
if(m_btnMgr.selected(m_homeBtnSettings))
{
_hideHome();
_config(1);
if(prevTheme != m_cfg.getString("GENERAL", "theme") || m_reload == true)
{
exit = true;
m_reload = true;
break;
}
_showHome();
}
else if(m_btnMgr.selected(m_homeBtnReloadCache))
{
m_gameList.SetLanguage(m_loc.getString(m_curLanguage, "gametdb_code", "EN").c_str());
UpdateCache(m_current_view);
LoadView();
break;
}
else if(m_btnMgr.selected(m_homeBtnUpdate) && !m_locked)
{
m_cf.stopCoverLoader(true);
_hideHome();
_system();
remove(m_ver.c_str());
if(m_exit)
{
_launchHomebrew(m_dol.c_str(), m_homebrewArgs);
break;
}
_showHome();
m_cf.startCoverLoader();
}
else if(m_btnMgr.selected(m_homeBtnAbout))
{
_hideHome();
_about();
if(m_exit)
break;
_showHome();
}
else if(m_btnMgr.selected(m_homeBtnExit))
{
exitHandler();
exit = true;
break;
}
}
else if(BTN_B_PRESSED)
{
break;
}
else if(BTN_HOME_PRESSED)
{
exitHandler();
exit = true;
break;
}
}
_hideHome();
return exit;
}
void CMenu::_showHome(void)
{
_setBg(m_homeBg, m_homeBg);
m_btnMgr.show(m_homeLblTitle);
m_btnMgr.show(m_homeBtnSettings);
m_btnMgr.show(m_homeBtnReloadCache);
m_btnMgr.show(m_homeBtnUpdate);
m_btnMgr.show(m_homeBtnAbout);
m_btnMgr.show(m_homeBtnExit);
}
void CMenu::_hideHome(bool instant)
{
m_btnMgr.hide(m_homeLblTitle, instant);
m_btnMgr.hide(m_homeBtnSettings, instant);
m_btnMgr.hide(m_homeBtnReloadCache, instant);
m_btnMgr.hide(m_homeBtnUpdate, instant);
m_btnMgr.hide(m_homeBtnAbout, instant);
m_btnMgr.hide(m_homeBtnExit, instant);
}
void CMenu::_initHomeMenu(CMenu::SThemeData &theme)
{
STexture emptyTex;
m_homeBg = _texture(theme.texSet, "HOME/BG", "texture", theme.bg);
m_homeLblTitle = _addTitle(theme, "HOME/TITLE", theme.titleFont, L"", 20, 30, 600, 75, theme.titleFontColor, FTGX_JUSTIFY_CENTER | FTGX_ALIGN_MIDDLE);
_setHideAnim(m_homeLblTitle, "HOME/TITLE", 0, 100, 0.f, 0.f);
m_homeBtnSettings = _addButton(theme, "HOME/SETTINGS", theme.btnFont, L"", 220, 120, 200, 56, theme.btnFontColor);
m_homeBtnReloadCache = _addButton(theme, "HOME/RELOAD_CACHE", theme.btnFont, L"", 220, 180, 200, 56, theme.btnFontColor);
m_homeBtnUpdate = _addButton(theme, "HOME/UPDATE", theme.btnFont, L"", 220, 240, 200, 56, theme.btnFontColor);
m_homeBtnAbout = _addButton(theme, "HOME/ABOUT", theme.btnFont, L"", 220, 300, 200, 56, theme.btnFontColor);
m_homeBtnExit = _addButton(theme, "HOME/EXIT", theme.btnFont, L"", 220, 360, 200, 56, theme.btnFontColor);
_setHideAnim(m_homeBtnSettings, "HOME/SETTINGS", 0, 0, -2.f, 0.f);
_setHideAnim(m_homeBtnReloadCache, "HOME/RELOAD_CACHE", 0, 0, -2.f, 0.f);
_setHideAnim(m_homeBtnUpdate, "HOME/UPDATE", 0, 0, -2.f, 0.f);
_setHideAnim(m_homeBtnAbout, "HOME/ABOUT", 0, 0, -2.f, 0.f);
_setHideAnim(m_homeBtnExit, "HOME/EXIT", 0, 0, -2.f, 0.f);
_textHome();
_hideHome(true);
}
void CMenu::_textHome(void)
{
m_btnMgr.setText(m_homeLblTitle, wfmt(_fmt("appname", L"%s (%s-r%s)"), APP_NAME, APP_VERSION, SVN_REV), false);
m_btnMgr.setText(m_homeBtnSettings, _t("home1", L"Settings"));
m_btnMgr.setText(m_homeBtnReloadCache, _t("home2", L"Reload Cache"));
m_btnMgr.setText(m_homeBtnUpdate, _t("home3", L"Update"));
m_btnMgr.setText(m_homeBtnAbout, _t("home4", L"About"));
m_btnMgr.setText(m_homeBtnExit, _t("home5", L"Exit"));
}

View File

@ -341,8 +341,10 @@ int CMenu::main(void)
} }
if(BTN_HOME_PRESSED) if(BTN_HOME_PRESSED)
{ {
exitHandler(); _hideMain();
break; if(_Home()) //exit wiiflow
break;
_showMain();
} }
else if(BTN_A_PRESSED) else if(BTN_A_PRESSED)
{ {
@ -352,8 +354,10 @@ int CMenu::main(void)
m_cf.pageDown(); m_cf.pageDown();
else if(m_btnMgr.selected(m_mainBtnQuit)) else if(m_btnMgr.selected(m_mainBtnQuit))
{ {
exitHandler(); _hideMain();
break; if(_Home()) //exit wiiflow
break;
_showMain();
} }
else if(m_btnMgr.selected(m_mainBtnChannel) || m_btnMgr.selected(m_mainBtnUsb) || m_btnMgr.selected(m_mainBtnDML) || m_btnMgr.selected(m_mainBtnHomebrew) || m_btnMgr.selected(m_mainBtnEmu)) else if(m_btnMgr.selected(m_mainBtnChannel) || m_btnMgr.selected(m_mainBtnUsb) || m_btnMgr.selected(m_mainBtnDML) || m_btnMgr.selected(m_mainBtnHomebrew) || m_btnMgr.selected(m_mainBtnEmu))
{ {
@ -498,12 +502,6 @@ int CMenu::main(void)
m_btnMgr.show(m_mainLblNotice); m_btnMgr.show(m_mainLblNotice);
} }
} }
else if(m_btnMgr.selected(m_mainBtnConfig))
{
m_gameList.SetLanguage(m_loc.getString(m_curLanguage, "gametdb_code", "EN").c_str());
UpdateCache(m_current_view);
LoadView();
}
else if(enable_wmote_roll && m_btnMgr.selected(m_mainBtnQuit)) else if(enable_wmote_roll && m_btnMgr.selected(m_mainBtnQuit))
{ {
_hideMain(); _hideMain();

View File

@ -191,6 +191,11 @@ gm1=Play
gm2=Back gm2=Back
hbc=HBC hbc=HBC
homebrew=Homebrew homebrew=Homebrew
home1=Settings
home2=Reload Cache
home3=Update
home4=About
home5=Exit
hooktype1=VBI hooktype1=VBI
hooktype2=KPAD Read hooktype2=KPAD Read
hooktype3=Joypad hooktype3=Joypad
@ -250,7 +255,6 @@ stup2=Exit
sys1=Update WiiFlow sys1=Update WiiFlow
sys2=WiiFlow Version: sys2=WiiFlow Version:
sys3=Cancel sys3=Cancel
sys4=Update
sys7=Installed Version. sys7=Installed Version.
translation_author= translation_author=
turbografx16=TurboGrafx-16 turbografx16=TurboGrafx-16

View File

@ -191,6 +191,11 @@ gm1=Spielen
gm2=Zurück gm2=Zurück
hbc=HBC hbc=HBC
homebrew=Homebrew homebrew=Homebrew
home1=Einstellungen
home2=Cache updaten
home3=WiiFlow updaten
home4=Über WiiFlow
home5=Beenden
hooktype1=VBI hooktype1=VBI
hooktype2=KPAD Read hooktype2=KPAD Read
hooktype3=Joypad hooktype3=Joypad
@ -248,7 +253,6 @@ snes=Super Nintendo
sys1=WiiFlow Update sys1=WiiFlow Update
sys2=WiiFlow Version: sys2=WiiFlow Version:
sys3=Abbrechen sys3=Abbrechen
sys4=Updaten
sys7=Derzeit installierte Version. sys7=Derzeit installierte Version.
translation_author=FIX94, ZEN.13, PizzaPino, Domi78 translation_author=FIX94, ZEN.13, PizzaPino, Domi78
turbografx16=TurboGrafx-16 turbografx16=TurboGrafx-16