cache metrics (fixes some music wheel load problems)

This commit is contained in:
Glenn Maynard
2004-01-11 21:49:36 +00:00
parent c77d411b89
commit 2fae214ed9
+15 -7
View File
@@ -40,13 +40,13 @@ SongManager* SONGMAN = NULL; // global and accessable from anywhere in our progr
#define NUM_GROUP_COLORS THEME->GetMetricI("SongManager","NumGroupColors") #define NUM_GROUP_COLORS THEME->GetMetricI("SongManager","NumGroupColors")
#define GROUP_COLOR( i ) THEME->GetMetricC("SongManager",ssprintf("GroupColor%d",i+1)) #define GROUP_COLOR( i ) THEME->GetMetricC("SongManager",ssprintf("GroupColor%d",i+1))
#define BEGINNER_COLOR THEME->GetMetricC("SongManager","BeginnerColor") CachedThemeMetricC BEGINNER_COLOR ("SongManager","BeginnerColor");
#define EASY_COLOR THEME->GetMetricC("SongManager","EasyColor") CachedThemeMetricC EASY_COLOR ("SongManager","EasyColor");
#define MEDIUM_COLOR THEME->GetMetricC("SongManager","MediumColor") CachedThemeMetricC MEDIUM_COLOR ("SongManager","MediumColor");
#define HARD_COLOR THEME->GetMetricC("SongManager","HardColor") CachedThemeMetricC HARD_COLOR ("SongManager","HardColor");
#define CHALLENGE_COLOR THEME->GetMetricC("SongManager","ChallengeColor") CachedThemeMetricC CHALLENGE_COLOR ("SongManager","ChallengeColor");
#define EXTRA_COLOR THEME->GetMetricC("SongManager","ExtraColor") CachedThemeMetricC EXTRA_COLOR ("SongManager","ExtraColor");
#define EXTRA_COLOR_METER THEME->GetMetricI("SongManager","ExtraColorMeter") CachedThemeMetricI EXTRA_COLOR_METER ("SongManager","ExtraColorMeter");
vector<RageColor> g_vGroupColors; vector<RageColor> g_vGroupColors;
RageTimer g_LastMetricUpdate; /* can't use RageTimer globally */ RageTimer g_LastMetricUpdate; /* can't use RageTimer globally */
@@ -60,6 +60,14 @@ static void UpdateMetrics()
g_vGroupColors.clear(); g_vGroupColors.clear();
for( int i=0; i<NUM_GROUP_COLORS; i++ ) for( int i=0; i<NUM_GROUP_COLORS; i++ )
g_vGroupColors.push_back( GROUP_COLOR(i) ); g_vGroupColors.push_back( GROUP_COLOR(i) );
BEGINNER_COLOR.Refresh();
EASY_COLOR.Refresh();
MEDIUM_COLOR.Refresh();
HARD_COLOR.Refresh();
CHALLENGE_COLOR.Refresh();
EXTRA_COLOR.Refresh();
EXTRA_COLOR_METER.Refresh();
} }
SongManager::SongManager( LoadingWindow *ld ) SongManager::SongManager( LoadingWindow *ld )