From 13bd9ddfd2be67596cf5def54f77242272ceb76c Mon Sep 17 00:00:00 2001 From: warmCabin Date: Mon, 2 Aug 2021 02:53:49 -0400 Subject: [PATCH] make color dialog a sub menu --- src/drivers/win/debugger.cpp | 16 +++++++++------- src/drivers/win/res.rc | 10 +++++----- 2 files changed, 14 insertions(+), 12 deletions(-) diff --git a/src/drivers/win/debugger.cpp b/src/drivers/win/debugger.cpp index b89f83e4..bf2a8860 100644 --- a/src/drivers/win/debugger.cpp +++ b/src/drivers/win/debugger.cpp @@ -1679,9 +1679,10 @@ BOOL CALLBACK IDC_DEBUGGER_DISASSEMBLY_WndProc(HWND hwndDlg, UINT uMsg, WPARAM w // Need to coordinate these with res.rc #define MENU_OPTIONS_POS 0 -#define MENU_COLORS_POS 1 -#define MENU_SYMBOLS_POS 2 -#define MENU_TOOLS_POS 3 +#define MENU_SYMBOLS_POS 1 +#define MENU_TOOLS_POS 2 + +#define MENU_OPTIONS_COLORS_POS 2 #define HKEY_STEP_ONE_ID 0 #define HKEY_STEP_OUT_ID 1 @@ -1803,14 +1804,15 @@ void DebuggerInitDialog(HWND hwndDlg) // prepare menu HMENU hdbgmenu = GetMenu(hwndDlg); - HMENU hcolorpopupmenu = GetSubMenu(hdbgmenu, MENU_COLORS_POS); - for (int i = 0; i < sizeof(dbgcolormenu) / sizeof(DBGCOLORMENU); ++i) - InsertColorMenu(hwndDlg, hcolorpopupmenu, &dbgcolormenu[i].menu, i, ID_COLOR_DEBUGGER + i); UpdateOptionsPopup(optionsPopup = GetSubMenu(hdbgmenu, MENU_OPTIONS_POS)); UpdateSymbolsPopup(symbolsPopup = GetSubMenu(hdbgmenu, MENU_SYMBOLS_POS)); UpdateToolsPopup(toolsPopup = GetSubMenu(hdbgmenu, MENU_TOOLS_POS)); + HMENU hcolorpopupmenu = GetSubMenu(optionsPopup, MENU_OPTIONS_COLORS_POS); + for (int i = 0; i < sizeof(dbgcolormenu) / sizeof(DBGCOLORMENU); ++i) + InsertColorMenu(hwndDlg, hcolorpopupmenu, &dbgcolormenu[i].menu, i, ID_COLOR_DEBUGGER + i); + // Register default hotkeys // TODO: Be sure to unregister all these!! RegisterHotKey(hwndDlg, HKEY_STEP_ONE_ID, 0, VK_F11); @@ -1944,7 +1946,7 @@ void DebuggerBnClicked(HWND hwndDlg, uint16 btnId, HWND hwndBtn) RECT rect; GetClientRect(GetDlgItem(hwndDlg, IDC_DEBUGGER_DISASSEMBLY), &rect); UpdateDisassembleView(hwndDlg, IDC_DEBUGGER_DISASSEMBLY, (rect.bottom - rect.top) / debugSystem->disasmFontHeight); - HMENU hcolorpopupmenu = GetSubMenu(GetMenu(hwndDlg), 1); + HMENU hcolorpopupmenu = GetSubMenu(optionsPopup, MENU_OPTIONS_COLORS_POS); for (int i = 0; i < sizeof(dbgcolormenu) / sizeof(DBGCOLORMENU); ++i) ModifyColorMenu(hwndDlg, hcolorpopupmenu, &dbgcolormenu[i].menu, i, ID_COLOR_DEBUGGER + i); } diff --git a/src/drivers/win/res.rc b/src/drivers/win/res.rc index e2e6c4ff..63ad10ff 100644 --- a/src/drivers/win/res.rc +++ b/src/drivers/win/res.rc @@ -3037,6 +3037,11 @@ BEGIN BEGIN MENUITEM "Auto Open on ROM Load", ID_DEBUGGER_AUTO_OPEN, CHECKED MENUITEM SEPARATOR + POPUP "Colors..." + BEGIN + MENUITEM SEPARATOR + MENUITEM "Restore Defaults", ID_DEBUGGER_DEFCOLOR + END MENUITEM "IDA Font", ID_DEBUGGER_IDA_FONT, CHECKED MENUITEM "ROM Offsets", ID_DEBUGGER_SHOW_ROM_OFFSETS, CHECKED MENUITEM "Show Trace Info", ID_DEBUGGER_SHOW_TRACE_INFO, CHECKED @@ -3047,11 +3052,6 @@ BEGIN MENUITEM SEPARATOR MENUITEM "Reset Window Size", ID_DEBUGGER_RESTORE_SIZE END - POPUP "Colors" - BEGIN - MENUITEM SEPARATOR - MENUITEM "Restore Defaults", ID_DEBUGGER_DEFCOLOR - END POPUP "Symbols" BEGIN MENUITEM "Reload", ID_DEBUGGER_RELOAD_SYMBOLS