winport - menu option to control CLI console visibility

fixes #230
This commit is contained in:
zeromus 2018-11-29 16:25:40 -06:00
parent 6bcd19b3cb
commit 3e37352bee
5 changed files with 46 additions and 22 deletions

View File

@ -590,6 +590,11 @@ DWORD WINCLASS::checkMenu(UINT idd, bool check)
return CheckMenuItem(hmenu, idd, MF_BYCOMMAND | (check?MF_CHECKED:MF_UNCHECKED));
}
void WINCLASS::enableMenu(UINT idd, bool enable)
{
EnableMenuItem(hmenu, idd, MF_BYCOMMAND | (enable ? (MF_ENABLED) : MF_GRAYED));
}
HWND WINCLASS::getHWnd()
{
return hwnd;

View File

@ -241,6 +241,7 @@ public:
bool setMenu(HMENU menu);
bool addMenuItem(u32 item, bool byPos, LPCMENUITEMINFO info);
DWORD checkMenu(UINT idd, bool check);
void enableMenu(UINT idd, bool enable);
void Show(int mode);
void Hide();

View File

@ -1690,9 +1690,6 @@ int MenuInit()
// DeleteMenu(configMenu,GetSubMenuIndexByHMENU(configMenu,advancedMenu),MF_BYPOSITION);
//#endif
if (!gShowConsole)
DeleteMenu(toolsMenu, IDM_CONSOLE_ALWAYS_ON_TOP, MF_BYCOMMAND);
return 1;
}
@ -3804,6 +3801,8 @@ LRESULT CALLBACK WindowProcedure (HWND hwnd, UINT message, WPARAM wParam, LPARAM
// Tools
MainWindow->checkMenu(IDM_CONSOLE_ALWAYS_ON_TOP, gConsoleTopmost);
MainWindow->checkMenu(IDM_CONSOLE_SHOWHIDE, gShowConsole);
MainWindow->enableMenu(IDM_CONSOLE_ALWAYS_ON_TOP, gShowConsole);
UpdateHotkeyAssignments(); //Add current hotkey mappings to menu item names
@ -5477,6 +5476,22 @@ DOKEYDOWN:
}
return 0;
case IDM_CONSOLE_SHOWHIDE:
{
gShowConsole = !gShowConsole;
WritePrivateProfileBool("Console", "Show", gShowConsole, IniName);
if(gShowConsole)
{
OpenConsole(); // Init debug console
ConsoleAlwaysTop(gConsoleTopmost);
}
else
{
CloseConsole();
}
return 0;
}
case IDM_SHOWTOOLBAR:
{
u32 style = GetStyle();

View File

@ -985,6 +985,12 @@
#define IDM_FS_MENU 40150
#define IDM_FS_WINDOW 40151
#define IDM_FS_HIDE_CURSOR 40152
#define ID_TOOLS_SHOWCONSOLE 40153
#define ID_TOOLS_CONSOLE 40154
#define ID_CONSOLE_ALWAYSONTOP 40155
#define ID_CONSOLE_SHOWCONSOLE 40156
#define IDM_CONSOLE_SHOW 40157
#define IDM_CONSOLE_SHOWHIDE 40158
#define ID_LABEL_HK3b 44670
#define ID_LABEL_HK3c 44671
#define ID_LABEL_HK3d 44672
@ -1032,6 +1038,9 @@
#define IDC_KILLSTYLUS 50039
#define IDC_KILLSTYLUSTOP 50039
#define IDC_KILLSTYLUSOFF 50040
#define ID_LABEL_S_0_ALPHA_BLEND 50186
#define ID_LABEL_DEPTH_EQUALS_TT 50187
#define ID_LABEL_DEPTH_L_EQUAL_PF 50188
#define IDC_LUASCRIPT_RESERVE_START 58000
#define IDC_LUASCRIPT_RESERVE_END 58099
#define IDD_LUARECENT_RESERVE_START 58100
@ -1094,10 +1103,6 @@
#define ID_LABEL_GPU_COLOR_DEPTH 64006
#define ID_LABEL_TEXTURE_SCALING 64007
#define ID_LABEL_SHADOW_POLYGONS 64009
#define ID_LABEL_S_0_ALPHA_BLEND 640010
#define ID_LABEL_DEPTH_EQUALS_TT 640011
#define ID_LABEL_DEPTH_L_EQUAL_PF 640012
// Next default values for new objects
//
@ -1105,7 +1110,7 @@
#ifndef APSTUDIO_READONLY_SYMBOLS
#define _APS_NO_MFC 1
#define _APS_NEXT_RESOURCE_VALUE 128
#define _APS_NEXT_COMMAND_VALUE 40153
#define _APS_NEXT_COMMAND_VALUE 40159
#define _APS_NEXT_CONTROL_VALUE 1066
#define _APS_NEXT_SYMED_VALUE 101
#endif

View File

@ -68,22 +68,19 @@ BEGIN
CONTROL "Automatically use last visited folder",IDC_USELASTVISIT,
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,5,27,129,10
CONTROL "Associate nds Files",IDC_ASSOCIATE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,132,27,80,10
GROUPBOX "SaveRam",IDC_STATIC,0,42,248,44
LTEXT "Auto save",IDC_STATIC,5,54,35,14
GROUPBOX "SaveRam",IDC_STATIC,0,42,248,44
LTEXT "Auto save",IDC_STATIC,5,54,35,14
EDITTEXT IDC_SAVERAMPATHEDIT,42,51,184,14,ES_AUTOHSCROLL
PUSHBUTTON "...",IDC_BROWSESRAM,229,51,13,14
LTEXT "Im/export",IDC_STATIC,5,70,35,14
LTEXT "Im/export",IDC_STATIC,5,70,35,14
EDITTEXT IDC_SRAMIMPORTPATHEDIT,42,67,184,14,ES_AUTOHSCROLL
PUSHBUTTON "...",IDC_BROWSESRAMIMPORT,229,67,13,14
GROUPBOX "States",IDC_STATIC,0,87,248,46
GROUPBOX "States",IDC_STATIC,0,87,248,46
EDITTEXT IDC_STATEPATHEDIT,5,97,221,14,ES_AUTOHSCROLL
PUSHBUTTON "...",IDC_BROWSESTATES,229,97,13,14
LTEXT "Slots",IDC_STATIC,5,116,15,14
LTEXT "Slots",IDC_STATIC,5,116,15,14
EDITTEXT IDC_STATESLOTPATHEDIT,24,113,202,14,ES_AUTOHSCROLL
PUSHBUTTON "...",IDC_BROWSESTATESLOTS,229,113,13,14
GROUPBOX "Screenshots",IDC_STATIC,0,135,248,44
EDITTEXT IDC_SCREENSHOTPATHEDIT,5,144,221,14,ES_AUTOHSCROLL
PUSHBUTTON "...",IDC_BROWSESCREENSHOTS,229,144,13,14
@ -92,20 +89,17 @@ BEGIN
RADIOBUTTON "BMP",IDC_BMP,65,163,29,10
LTEXT "Format:",IDC_FORMATSTATIC,95,163,26,8
EDITTEXT IDC_FORMATEDIT,124,160,118,14,ES_AUTOHSCROLL
GROUPBOX "AviFiles",IDC_STATIC,0,181,247,28
EDITTEXT IDC_AVIPATHEDIT,5,189,221,14,ES_AUTOHSCROLL
PUSHBUTTON "...",IDC_BROWSEAVI,229,189,13,14
GROUPBOX "Cheats",IDC_STATIC,0,212,247,50
EDITTEXT IDC_CHEATPATHEDIT,5,221,221,14,ES_AUTOHSCROLL
EDITTEXT IDC_CHEATPATHEDIT,5,221,221,14,ES_AUTOHSCROLL
PUSHBUTTON "...",IDC_BROWSECHEATS,229,221,13,14
LTEXT "R4 cheats database file name",IDC_STATIC,56,238,100,17
CONTROL "CHEAT.DAT",IDC_R4TYPE1,"Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,160,238,54,10
CONTROL "USRCHEAT.DAT",IDC_R4TYPE2,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,160,250,67,10
GROUPBOX "Lua",IDC_STATIC,0,265,247,38
EDITTEXT IDC_LUAPATHEDIT,5,275,221,14,ES_AUTOHSCROLL
EDITTEXT IDC_LUAPATHEDIT,5,275,221,14,ES_AUTOHSCROLL
PUSHBUTTON "...",IDC_BROWSELUA,229,275,13,14
CONTROL "Auto-load Lua scripts with ROM",IDC_AUTOLOADLUA,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,5,291,219,8
PUSHBUTTON "Defaults",IDC_PATHDEFAULTS,3,306,50,14
@ -1772,7 +1766,6 @@ BEGIN
MENUITEM "View &Sound State", IDM_SOUND_VIEW
MENUITEM "View Nitro&FS", ID_TOOLS_VIEWFSNITRO
MENUITEM SEPARATOR
MENUITEM "&Console Always On Top", IDM_CONSOLE_ALWAYS_ON_TOP
POPUP "&Cheats"
BEGIN
MENUITEM "&List", IDM_CHEATS_LIST, INACTIVE
@ -1799,6 +1792,11 @@ BEGIN
MENUITEM "Sub BG 3", IDM_SBG3, CHECKED
MENUITEM "Sub OBJ", IDM_SOBJ, CHECKED
END
POPUP "Console"
BEGIN
MENUITEM "Enabled", IDM_CONSOLE_SHOWHIDE
MENUITEM "Always On Top", IDM_CONSOLE_ALWAYS_ON_TOP
END
MENUITEM SEPARATOR
POPUP "Lua Scripting"
BEGIN