From c436021a16a9c797b97d36543dd6d310634ca51d Mon Sep 17 00:00:00 2001 From: Glenn Maynard Date: Sat, 26 Feb 2005 07:01:20 +0000 Subject: [PATCH] generalize m_bIsOnSystemMenu --- stepmania/src/ScreenManager.cpp | 19 +++---------------- 1 file changed, 3 insertions(+), 16 deletions(-) diff --git a/stepmania/src/ScreenManager.cpp b/stepmania/src/ScreenManager.cpp index 9a8f8177b6..562171230a 100644 --- a/stepmania/src/ScreenManager.cpp +++ b/stepmania/src/ScreenManager.cpp @@ -406,22 +406,9 @@ retry: bool bWasOnSystemMenu = GAMESTATE->m_bIsOnSystemMenu; - /* If this is a system menu, don't let the operator key touch it! - However, if you add an options screen, please include it here -- Miryokuteki */ - /* TODO: Don't have a hard-coded list of system menu names. Make it a property - * of the Screen. */ - if( sScreenName == "ScreenOptionsMenu" || - sScreenName == "ScreenMachineOptions" || - sScreenName == "ScreenInputOptions" || - sScreenName == "ScreenGraphicOptions" || - sScreenName == "ScreenGameplayOptions" || - sScreenName == "ScreenMapControllers" || - sScreenName == "ScreenAppearanceOptions" || - sScreenName == "ScreenEdit" || - sScreenName == "ScreenEditMenu" || - sScreenName == "ScreenSoundOptions" ) - GAMESTATE->m_bIsOnSystemMenu = true; - else + if( THEME->HasMetric(sScreenName,"AllowOperatorMenuButton") ) + GAMESTATE->m_bIsOnSystemMenu = !THEME->GetMetricB( sScreenName,"AllowOperatorMenuButton" ); + else GAMESTATE->m_bIsOnSystemMenu = false; // If we're exiting a system menu, persist settings in case we don't exit normally