From 4ae5105d46b0bca6052ec3747bff61a043ef4de6 Mon Sep 17 00:00:00 2001 From: Jason Felds Date: Sun, 8 Jan 2012 22:32:48 -0500 Subject: [PATCH] Enforce a rebuild, allow for sorting itself. --- src/MusicWheel.cpp | 12 ++++++------ src/MusicWheel.h | 2 +- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/MusicWheel.cpp b/src/MusicWheel.cpp index 950d9e98d1..5b6af3280b 100644 --- a/src/MusicWheel.cpp +++ b/src/MusicWheel.cpp @@ -1170,10 +1170,10 @@ void MusicWheel::ChangeMusic( int iDist ) } -bool MusicWheel::ChangeSort( SortOrder new_so ) // return true if change successful +bool MusicWheel::ChangeSort( SortOrder new_so, bool allowSameSort ) // return true if change successful { ASSERT( new_so < NUM_SortOrder ); - if( GAMESTATE->m_SortOrder == new_so ) + if( GAMESTATE->m_SortOrder == new_so && !allowSameSort ) return false; // Don't change to SORT_MODE_MENU if it doesn't have at least two choices. @@ -1511,12 +1511,12 @@ void MusicWheel::PlayerJoined() // We need to rebuild the wheel item data in this situation. -aj if( !GAMESTATE->IsCourseMode() && !PREFSMAN->m_bAutogenSteps ) { - if(m_WheelItemDatasStatus[GAMESTATE->m_SortOrder]!=INVALID) - m_WheelItemDatasStatus[GAMESTATE->m_SortOrder]=NEEDREFILTER; - + FOREACH_ENUM(SortOrder, so) + { + m_WheelItemDatasStatus[so] = INVALID; + } RebuildWheelItems(); } - SetOpenSection( m_sExpandedSectionName ); } diff --git a/src/MusicWheel.h b/src/MusicWheel.h index 0cc080f3d0..92df2ab07e 100644 --- a/src/MusicWheel.h +++ b/src/MusicWheel.h @@ -23,7 +23,7 @@ public: virtual void Load( RString sType ); void BeginScreen(); - bool ChangeSort( SortOrder new_so ); // return true if change successful + bool ChangeSort( SortOrder new_so, bool allowSameSort = false ); // return true if change successful bool NextSort(); // return true if change successful void StartRoulette(); void StartRandom();