diff --git a/desktop-ui/presentation/presentation.cpp b/desktop-ui/presentation/presentation.cpp index 13049012c5..5e41f8991c 100644 --- a/desktop-ui/presentation/presentation.cpp +++ b/desktop-ui/presentation/presentation.cpp @@ -73,25 +73,13 @@ Presentation::Presentation() { }); videoShaderMenu.setText("Shader").setIcon(Icon::Emblem::Image); loadShaders(); - bootOptionsMenu.setText("Boot Options").setIcon(Icon::Place::Settings); + fastBoot.setText("Fast Boot").setChecked(settings.boot.fast).onToggle([&] { settings.boot.fast = fastBoot.checked(); }); launchDebugger.setText("Launch Debugger").setChecked(settings.boot.debugger).onToggle([&] { settings.boot.debugger = launchDebugger.checked(); }); - preferNTSCU.setText("Prefer US").onActivate([&] { - settings.boot.prefer = "NTSC-U"; - }); - preferNTSCJ.setText("Prefer Japan").onActivate([&] { - settings.boot.prefer = "NTSC-J"; - }); - preferPAL.setText("Prefer Europe").onActivate([&] { - settings.boot.prefer = "PAL"; - }); - if(settings.boot.prefer == "NTSC-U") preferNTSCU.setChecked(); - if(settings.boot.prefer == "NTSC-J") preferNTSCJ.setChecked(); - if(settings.boot.prefer == "PAL") preferPAL.setChecked(); muteAudioSetting.setText("Mute Audio").setChecked(settings.audio.mute).onToggle([&] { settings.audio.mute = muteAudioSetting.checked(); }); @@ -408,6 +396,7 @@ auto Presentation::loadEmulators() -> void { } menu.append(item); } + if(enabled == 0) { //if the user disables every system, give an indication for how to re-add systems to the load menu MenuItem item{&loadMenu}; @@ -418,9 +407,27 @@ auto Presentation::loadEmulators() -> void { }); } - #if !defined(PLATFORM_MACOS) loadMenu.append(MenuSeparator()); - + + Group preferRegionGroup; + MenuRadioItem preferNTSCU{&loadMenu}; + preferNTSCU.setText("NTSC-U").onActivate([&] { + settings.boot.prefer = "NTSC-U"; + }); + + MenuRadioItem preferNTSCJ{&loadMenu}; + preferNTSCJ.setText("NTSC-J").onActivate([&] { + settings.boot.prefer = "NTSC-J"; + }); + MenuRadioItem preferPAL{&loadMenu}; + preferPAL.setText("PAL").onActivate([&] { + settings.boot.prefer = "PAL"; + }); + + loadMenu.append(MenuSeparator()); + + #if !defined(PLATFORM_MACOS) + { MenuItem quit{&loadMenu}; quit.setIcon(Icon::Action::Quit); quit.setText("Quit"); diff --git a/desktop-ui/presentation/presentation.hpp b/desktop-ui/presentation/presentation.hpp index 510a7aa3a2..4d24f74968 100644 --- a/desktop-ui/presentation/presentation.hpp +++ b/desktop-ui/presentation/presentation.hpp @@ -29,15 +29,8 @@ struct Presentation : Window { MenuCheckItem videoAdaptiveSizing{&videoOutputMenu}; MenuCheckItem videoAutoCentering{&videoOutputMenu}; Menu videoShaderMenu{&settingsMenu}; - Menu bootOptionsMenu{&settingsMenu}; - MenuCheckItem fastBoot{&bootOptionsMenu}; - MenuCheckItem launchDebugger{&bootOptionsMenu}; - MenuSeparator bootOptionsSeparator{&bootOptionsMenu}; - MenuRadioItem preferNTSCU{&bootOptionsMenu}; - MenuRadioItem preferNTSCJ{&bootOptionsMenu}; - MenuRadioItem preferPAL{&bootOptionsMenu}; - Group preferRegionGroup{&preferNTSCU, &preferNTSCJ, &preferPAL}; - MenuSeparator groupSettingsSeparatpr{&settingsMenu}; + MenuCheckItem fastBoot{&settingsMenu}; + MenuCheckItem launchDebugger{&settingsMenu}; MenuCheckItem muteAudioSetting{&settingsMenu}; MenuCheckItem showStatusBarSetting{&settingsMenu}; MenuSeparator audioSettingsSeparator{&settingsMenu};