From d1d61b207019c9e4ff818e8fff381d062ea04b5f Mon Sep 17 00:00:00 2001 From: Chris Danford Date: Wed, 29 Jun 2005 09:21:30 +0000 Subject: [PATCH] fix UpdateStage overrides OnCommands that hide m_sprStage --- stepmania/src/ScreenWithMenuElements.cpp | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/stepmania/src/ScreenWithMenuElements.cpp b/stepmania/src/ScreenWithMenuElements.cpp index e6d1d6d080..15276cc1c2 100644 --- a/stepmania/src/ScreenWithMenuElements.cpp +++ b/stepmania/src/ScreenWithMenuElements.cpp @@ -64,10 +64,18 @@ void ScreenWithMenuElements::Init() { m_sprStage[*s].Load( THEME->GetPathG(m_sName,"stage "+StageToString(*s)) ); m_sprStage[*s]->SetName( "Stage" ); + } + + // UpdateStage to hide/show the appropriate stage graphic. Do this before + // running the OnCommand so that it won't override the OnCommand if On chooses + // to hide the graphic. + UpdateStage(); + + FOREACH_CONST( Stage, vStages, s ) + { SET_XY_AND_ON_COMMAND( m_sprStage[*s] ); this->AddChild( m_sprStage[*s] ); } - UpdateStage(); } if( MEMORY_CARD_ICONS ) @@ -255,7 +263,8 @@ void ScreenWithMenuElements::HandleMessage( const CString& sMessage ) void ScreenWithMenuElements::UpdateStage() { - // update stage counter display (long versions/marathons) + // Refresh the stage counter display. This is useful when changing + // between long versions/marathons songs on the wheel. FOREACH_Stage( s ) m_sprStage[s]->SetHidden( s != GAMESTATE->GetCurrentStage() ); }