mirror of
https://github.com/hrydgard/ppsspp.git
synced 2026-09-04 19:55:27 +02:00
Windows: Separate Pause and Break actions.
It was confusing that "Pause" made PPSSPP appear to hang. This has the side effect of making "Break on Load" work outside Windows.
This commit is contained in:
@@ -60,10 +60,11 @@ namespace MainWindow {
|
||||
EnableMenuItem(menu, ID_FILE_LOADSTATEFILE, menuEnable);
|
||||
EnableMenuItem(menu, ID_FILE_QUICKSAVESTATE, menuEnable);
|
||||
EnableMenuItem(menu, ID_FILE_QUICKLOADSTATE, menuEnable);
|
||||
EnableMenuItem(menu, ID_TOGGLE_PAUSE, menuEnable);
|
||||
EnableMenuItem(menu, ID_EMULATION_PAUSE, menuEnable);
|
||||
EnableMenuItem(menu, ID_EMULATION_STOP, menuEnable);
|
||||
EnableMenuItem(menu, ID_EMULATION_RESET, menuEnable);
|
||||
EnableMenuItem(menu, ID_EMULATION_SWITCH_UMD, umdSwitchEnable);
|
||||
EnableMenuItem(menu, ID_TOGGLE_BREAK, menuEnable);
|
||||
EnableMenuItem(menu, ID_DEBUG_LOADMAPFILE, menuEnable);
|
||||
EnableMenuItem(menu, ID_DEBUG_SAVEMAPFILE, menuEnable);
|
||||
EnableMenuItem(menu, ID_DEBUG_LOADSYMFILE, menuEnable);
|
||||
@@ -270,7 +271,7 @@ namespace MainWindow {
|
||||
TranslateMenuItem(menu, ID_FILE_EXIT, L"\tAlt+F4");
|
||||
|
||||
// Emulation menu
|
||||
TranslateMenuItem(menu, ID_TOGGLE_PAUSE, L"\tF8", "Pause");
|
||||
TranslateMenuItem(menu, ID_EMULATION_PAUSE);
|
||||
TranslateMenuItem(menu, ID_EMULATION_STOP, L"\tCtrl+W");
|
||||
TranslateMenuItem(menu, ID_EMULATION_RESET, L"\tCtrl+B");
|
||||
TranslateMenuItem(menu, ID_EMULATION_SWITCH_UMD, L"\tCtrl+U", "Switch UMD");
|
||||
@@ -281,16 +282,17 @@ namespace MainWindow {
|
||||
TranslateMenuItem(menu, ID_EMULATION_ROTATION_V_R);
|
||||
|
||||
// Debug menu
|
||||
TranslateMenuItem(menu, ID_TOGGLE_BREAK, L"\tF8", "Break");
|
||||
TranslateMenuItem(menu, ID_DEBUG_BREAKONLOAD);
|
||||
TranslateMenuItem(menu, ID_DEBUG_IGNOREILLEGALREADS);
|
||||
TranslateMenuItem(menu, ID_DEBUG_LOADMAPFILE);
|
||||
TranslateMenuItem(menu, ID_DEBUG_SAVEMAPFILE);
|
||||
TranslateMenuItem(menu, ID_DEBUG_LOADSYMFILE);
|
||||
TranslateMenuItem(menu, ID_DEBUG_SAVESYMFILE);
|
||||
TranslateMenuItem(menu, ID_DEBUG_RESETSYMBOLTABLE);
|
||||
TranslateMenuItem(menu, ID_DEBUG_DUMPNEXTFRAME);
|
||||
TranslateMenuItem(menu, ID_DEBUG_TAKESCREENSHOT, L"\tF12");
|
||||
TranslateMenuItem(menu, ID_DEBUG_DUMPNEXTFRAME);
|
||||
TranslateMenuItem(menu, ID_DEBUG_SHOWDEBUGSTATISTICS);
|
||||
TranslateMenuItem(menu, ID_DEBUG_IGNOREILLEGALREADS);
|
||||
TranslateMenuItem(menu, ID_DEBUG_RUNONLOAD);
|
||||
TranslateMenuItem(menu, ID_DEBUG_DISASSEMBLY, L"\tCtrl+D");
|
||||
TranslateMenuItem(menu, ID_DEBUG_GEDEBUGGER, L"\tCtrl+G");
|
||||
TranslateMenuItem(menu, ID_DEBUG_EXTRACTFILE);
|
||||
@@ -582,7 +584,7 @@ namespace MainWindow {
|
||||
ShellExecute(NULL, L"open", ConvertUTF8ToWString(g_Config.memStickDirectory).c_str(), 0, 0, SW_SHOW);
|
||||
break;
|
||||
|
||||
case ID_TOGGLE_PAUSE:
|
||||
case ID_TOGGLE_BREAK:
|
||||
if (GetUIState() == UISTATE_PAUSEMENU) {
|
||||
// Causes hang
|
||||
//NativeMessageReceived("run", "");
|
||||
@@ -603,6 +605,11 @@ namespace MainWindow {
|
||||
noFocusPause = !noFocusPause; // If we pause, override pause on lost focus
|
||||
break;
|
||||
|
||||
case ID_EMULATION_PAUSE:
|
||||
NativeMessageReceived("pause", "");
|
||||
Core_EnableStepping(false);
|
||||
break;
|
||||
|
||||
case ID_EMULATION_STOP:
|
||||
if (Core_IsStepping())
|
||||
Core_EnableStepping(false);
|
||||
@@ -821,7 +828,7 @@ namespace MainWindow {
|
||||
PostMessage(hWnd, WM_CLOSE, 0, 0);
|
||||
break;
|
||||
|
||||
case ID_DEBUG_RUNONLOAD:
|
||||
case ID_DEBUG_BREAKONLOAD:
|
||||
g_Config.bAutoRun = !g_Config.bAutoRun;
|
||||
break;
|
||||
|
||||
@@ -1055,7 +1062,7 @@ namespace MainWindow {
|
||||
CHECKITEM(ID_DEBUG_IGNOREILLEGALREADS, g_Config.bIgnoreBadMemAccess);
|
||||
CHECKITEM(ID_DEBUG_SHOWDEBUGSTATISTICS, g_Config.bShowDebugStats);
|
||||
CHECKITEM(ID_OPTIONS_HARDWARETRANSFORM, g_Config.bHardwareTransform);
|
||||
CHECKITEM(ID_DEBUG_RUNONLOAD, g_Config.bAutoRun);
|
||||
CHECKITEM(ID_DEBUG_BREAKONLOAD, !g_Config.bAutoRun);
|
||||
CHECKITEM(ID_OPTIONS_VERTEXCACHE, g_Config.bVertexCache);
|
||||
CHECKITEM(ID_OPTIONS_SHOWFPS, g_Config.iShowFPSCounter);
|
||||
CHECKITEM(ID_OPTIONS_FRAMESKIP_AUTO, g_Config.bAutoFrameSkip);
|
||||
@@ -1322,7 +1329,7 @@ namespace MainWindow {
|
||||
lastGlobalUIState = GetUIState();
|
||||
|
||||
bool isPaused = Core_IsStepping() && GetUIState() == UISTATE_INGAME;
|
||||
TranslateMenuItem(menu, ID_TOGGLE_PAUSE, L"\tF8", isPaused ? "Run" : "Pause");
|
||||
TranslateMenuItem(menu, ID_TOGGLE_BREAK, L"\tF8", isPaused ? "Run" : "Break");
|
||||
}
|
||||
|
||||
// Message handler for about box.
|
||||
|
||||
Reference in New Issue
Block a user