remove ThemeManager::ReloadMetricsIfNecessary

This commit is contained in:
Chris Danford
2004-07-23 04:26:22 +00:00
parent d0e67f9ffb
commit 7a3e031c63
3 changed files with 0 additions and 37 deletions
-1
View File
@@ -541,7 +541,6 @@ void ScreenManager::ClearScreenStack()
void ScreenManager::SetFromNewScreen( Screen *pNewScreen, bool Stack ) void ScreenManager::SetFromNewScreen( Screen *pNewScreen, bool Stack )
{ {
RefreshCreditsMessages(); RefreshCreditsMessages();
THEME->ReloadMetricsIfNecessary();
if( !Stack ) if( !Stack )
ClearScreenStack(); ClearScreenStack();
-29
View File
@@ -72,12 +72,6 @@ ThemeManager::ThemeManager()
m_pIniBaseMetrics = new IniFile; m_pIniBaseMetrics = new IniFile;
m_sCurThemeName = BASE_THEME_NAME; // Use the base theme for now. It's up to PrefsManager to change this. m_sCurThemeName = BASE_THEME_NAME; // Use the base theme for now. It's up to PrefsManager to change this.
m_uHashForCurThemeMetrics = 0;
m_uHashForBaseThemeMetrics = 0;
m_uHashForCurThemeCurLanguage = 0;
m_uHashForBaseThemeCurLanguage = 0;
m_uHashForCurThemeBaseLanguage = 0;
m_uHashForBaseThemeBaseLanguage = 0;
CStringArray arrayThemeNames; CStringArray arrayThemeNames;
GetThemeNames( arrayThemeNames ); GetThemeNames( arrayThemeNames );
@@ -158,14 +152,6 @@ void ThemeManager::SwitchThemeAndLanguage( CString sThemeName, CString sLanguage
for( i = 0; i < NUM_ELEMENT_CATEGORIES; ++i ) for( i = 0; i < NUM_ELEMENT_CATEGORIES; ++i )
g_ThemePathCache[i].clear(); g_ThemePathCache[i].clear();
// update hashes for metrics files
m_uHashForCurThemeMetrics = GetHashForFile( GetMetricsIniPath(m_sCurThemeName) );
m_uHashForBaseThemeMetrics = GetHashForFile( GetMetricsIniPath(BASE_THEME_NAME) );
m_uHashForBaseThemeBaseLanguage = GetHashForFile( GetLanguageIniPath(BASE_THEME_NAME,BASE_LANGUAGE) );
m_uHashForCurThemeBaseLanguage = GetHashForFile( GetLanguageIniPath(m_sCurThemeName,BASE_LANGUAGE) );
m_uHashForBaseThemeCurLanguage = GetHashForFile( GetLanguageIniPath(BASE_THEME_NAME,m_sCurLanguage) );
m_uHashForCurThemeCurLanguage = GetHashForFile( GetLanguageIniPath(m_sCurThemeName,m_sCurLanguage) );
// read new metrics. First read base metrics, then read cur theme's metrics, overriding base theme // read new metrics. First read base metrics, then read cur theme's metrics, overriding base theme
m_pIniBaseMetrics->Reset(); m_pIniBaseMetrics->Reset();
m_pIniBaseMetrics->ReadFile( GetMetricsIniPath(FALLBACK_THEME_NAME) ); m_pIniBaseMetrics->ReadFile( GetMetricsIniPath(FALLBACK_THEME_NAME) );
@@ -469,21 +455,6 @@ bool ThemeManager::HasMetric( CString sClassName, CString sValueName )
return GetMetricRaw( sClassName, sValueName, sThrowAway ); return GetMetricRaw( sClassName, sValueName, sThrowAway );
} }
void ThemeManager::ReloadMetricsIfNecessary()
{
//
// reload metrics if file has changed
//
CString sCurMetricPath = GetMetricsIniPath(m_sCurThemeName);
CString sDefaultMetricPath = GetMetricsIniPath(BASE_THEME_NAME);
if( m_uHashForCurThemeMetrics != GetHashForFile(sCurMetricPath) ||
m_uHashForBaseThemeMetrics != GetHashForFile(sDefaultMetricPath) )
{
ReloadMetrics();
}
}
void ThemeManager::ReloadMetrics() void ThemeManager::ReloadMetrics()
{ {
SwitchThemeAndLanguage(m_sCurThemeName, m_sCurLanguage); // force a reload of the metrics cache SwitchThemeAndLanguage(m_sCurThemeName, m_sCurLanguage); // force a reload of the metrics cache
-7
View File
@@ -27,7 +27,6 @@ public:
CString GetCurThemeDir() { return GetThemeDirFromName(m_sCurThemeName); }; CString GetCurThemeDir() { return GetThemeDirFromName(m_sCurThemeName); };
void NextTheme(); void NextTheme();
void ReloadMetrics(); void ReloadMetrics();
void ReloadMetricsIfNecessary();
void GetModifierNames( set<CString>& AddTo ); void GetModifierNames( set<CString>& AddTo );
/* I renamed these for two reasons. The overload conflicts with the ones below: /* I renamed these for two reasons. The overload conflicts with the ones below:
@@ -73,12 +72,6 @@ protected:
IniFile* m_pIniCurMetrics; // make this a pointer so we don't have to include IniFile here IniFile* m_pIniCurMetrics; // make this a pointer so we don't have to include IniFile here
IniFile* m_pIniBaseMetrics; // make this a pointer so we don't have to include IniFile here IniFile* m_pIniBaseMetrics; // make this a pointer so we don't have to include IniFile here
unsigned m_uHashForCurThemeMetrics;
unsigned m_uHashForBaseThemeMetrics;
unsigned m_uHashForCurThemeCurLanguage;
unsigned m_uHashForBaseThemeCurLanguage;
unsigned m_uHashForCurThemeBaseLanguage;
unsigned m_uHashForBaseThemeBaseLanguage;
}; };
extern ThemeManager* THEME; // global and accessable from anywhere in our program extern ThemeManager* THEME; // global and accessable from anywhere in our program