Win32 - Context Menu - Added Unhide Menu, Load Last Lua, and Stop Lua Script

This commit is contained in:
adelikat 2009-03-01 13:59:51 +00:00
parent 82de3f1477
commit c8c6a1e741
2 changed files with 33 additions and 1 deletions

View File

@ -358,7 +358,7 @@ BEGIN
MENUITEM "Open ROM", FCEU_CONTEXT_OPENROM MENUITEM "Open ROM", FCEU_CONTEXT_OPENROM
MENUITEM "Last ROM used", FCEUX_CONTEXT_RECENTROM1 MENUITEM "Last ROM used", FCEUX_CONTEXT_RECENTROM1
MENUITEM SEPARATOR MENUITEM SEPARATOR
MENUITEM "Help....", FCEU_CONTEXT_FCEUHELP MENUITEM "Help...", FCEU_CONTEXT_FCEUHELP
END END
POPUP "Game+Movie+readwrite" POPUP "Game+Movie+readwrite"
BEGIN BEGIN

View File

@ -68,6 +68,12 @@
#include <sstream> #include <sstream>
using namespace std; using namespace std;
//----Context Menu - Some dynamically added menu items
#define FCEUX_CONTEXT_UNHIDEMENU 60000
#define FCEUX_CONTEXT_LOADLASTLUA 60001
#define FCEUX_CONTEXT_STOPLUA 60002
//******************************************************************************** //********************************************************************************
//Globals //Globals
//******************************************************************************** //********************************************************************************
@ -461,6 +467,24 @@ void UpdateContextMenuItems(HMENU context, int whichContext)
else else
EnableMenuItem(context,FCEUX_CONTEXT_RECENTROM1,MF_BYCOMMAND | MF_GRAYED); EnableMenuItem(context,FCEUX_CONTEXT_RECENTROM1,MF_BYCOMMAND | MF_GRAYED);
//Add Lua separator if either lua condition is true (yeah, a little ugly but it works)
if (recent_lua[0] || luaRunning)
InsertMenu(context, 0xFFFF, MF_SEPARATOR, 0, "");
//If a recent lua file exists, add Load Last Lua
if (recent_lua[0])
InsertMenu(context, 0xFFFF, MF_BYCOMMAND, FCEUX_CONTEXT_LOADLASTLUA, "Load last Lua");
//If lua is loaded, add a stop lua item
if (luaRunning)
InsertMenu(context, 0xFFFF, MF_BYCOMMAND, FCEUX_CONTEXT_STOPLUA, "Stop Lua script");
//If menu is hidden, add an Unhide menu option
if (tog)
{
InsertMenu(context, 0xFFFF, MF_SEPARATOR, 0, "");
InsertMenu(context,0xFFFF, MF_BYCOMMAND, FCEUX_CONTEXT_UNHIDEMENU, "Unhide Menu");
}
} }
/// Updates recent files / recent directories menu /// Updates recent files / recent directories menu
@ -1169,6 +1193,7 @@ LRESULT FAR PASCAL AppWndProc(HWND hWnd,UINT msg,WPARAM wParam,LPARAM lParam)
case ID_FILE_RUNLUASCRIPT: case ID_FILE_RUNLUASCRIPT:
FCEUD_LuaRunFrom(); FCEUD_LuaRunFrom();
break; break;
case FCEUX_CONTEXT_STOPLUA:
case ID_FILE_STOPLUASCRIPT: case ID_FILE_STOPLUASCRIPT:
FCEU_LuaStop(); FCEU_LuaStop();
break; break;
@ -1221,6 +1246,7 @@ LRESULT FAR PASCAL AppWndProc(HWND hWnd,UINT msg,WPARAM wParam,LPARAM lParam)
break; break;
//Config Menu----------------------------------------------------------- //Config Menu-----------------------------------------------------------
case FCEUX_CONTEXT_UNHIDEMENU:
case MENU_HIDE_MENU: case MENU_HIDE_MENU:
ToggleHideMenu(); ToggleHideMenu();
break; break;
@ -1486,6 +1512,12 @@ LRESULT FAR PASCAL AppWndProc(HWND hWnd,UINT msg,WPARAM wParam,LPARAM lParam)
ALoad(recent_files[0]); ALoad(recent_files[0]);
break; break;
//Recent Lua 1
case FCEUX_CONTEXT_LOADLASTLUA:
if(recent_lua[0])
FCEU_LoadLuaCode(recent_lua[0]);
break;
//View comments and subtitles //View comments and subtitles
case FCEUX_CONTEXT_VIEWCOMMENTSSUBTITLES: case FCEUX_CONTEXT_VIEWCOMMENTSSUBTITLES:
CreateDialog(fceu_hInstance, "IDD_REPLAY_METADATA", hWnd, ReplayMetadataDialogProc); CreateDialog(fceu_hInstance, "IDD_REPLAY_METADATA", hWnd, ReplayMetadataDialogProc);