From 6049d5e4f580b12a51b379cf3c2a4a8132b4b66b Mon Sep 17 00:00:00 2001 From: YoshiRulz Date: Thu, 13 Feb 2025 00:41:02 +1000 Subject: [PATCH] Show placeholder for VSystem menu when no rom loaded --- src/BizHawk.Client.EmuHawk/MainForm.VSystem.cs | 2 ++ src/BizHawk.Client.EmuHawk/MainForm.cs | 4 ++++ 2 files changed, 6 insertions(+) diff --git a/src/BizHawk.Client.EmuHawk/MainForm.VSystem.cs b/src/BizHawk.Client.EmuHawk/MainForm.VSystem.cs index 21fd213751..5104f273a3 100644 --- a/src/BizHawk.Client.EmuHawk/MainForm.VSystem.cs +++ b/src/BizHawk.Client.EmuHawk/MainForm.VSystem.cs @@ -1437,6 +1437,7 @@ namespace BizHawk.Client.EmuHawk var i = GenericCoreSubMenu.Text.IndexOf('&'); if (i != -1) AvailableAccelerators.Add(GenericCoreSubMenu.Text[i + 1]); } + NullHawkVSysSubmenu.Visible = false; GenericCoreSubMenu.Visible = false; TI83SubMenu.Visible = false; NESSubMenu.Visible = false; @@ -1458,6 +1459,7 @@ namespace BizHawk.Client.EmuHawk switch (sysID) { case VSystemID.Raw.NULL: + NullHawkVSysSubmenu.Visible = true; break; case VSystemID.Raw.A78: A7800SubMenu.Visible = true; diff --git a/src/BizHawk.Client.EmuHawk/MainForm.cs b/src/BizHawk.Client.EmuHawk/MainForm.cs index 83ab228915..df5c67e20f 100644 --- a/src/BizHawk.Client.EmuHawk/MainForm.cs +++ b/src/BizHawk.Client.EmuHawk/MainForm.cs @@ -56,6 +56,8 @@ namespace BizHawk.Client.EmuHawk private const int WINDOW_SCALE_MAX = 10; + private readonly ToolStripMenuItemEx NullHawkVSysSubmenu = new() { Enabled = false, Text = "—" }; + private void MainForm_Load(object sender, EventArgs e) { UpdateWindowTitle(); @@ -164,6 +166,8 @@ namespace BizHawk.Client.EmuHawk Text = "Core Settings", }); + MainformMenu.Items.Insert(MainformMenu.Items.IndexOf(ToolsSubMenu) + 1, NullHawkVSysSubmenu); + // Hide Status bar icons and general StatusBar prep MainStatusBar.Padding = new Padding(MainStatusBar.Padding.Left, MainStatusBar.Padding.Top, MainStatusBar.Padding.Left, MainStatusBar.Padding.Bottom); // Workaround to remove extra padding on right PlayRecordStatusButton.Visible = false;