remove ThemeManager::ReloadMetricsIfNecessary
This commit is contained in:
@@ -541,7 +541,6 @@ void ScreenManager::ClearScreenStack()
|
||||
void ScreenManager::SetFromNewScreen( Screen *pNewScreen, bool Stack )
|
||||
{
|
||||
RefreshCreditsMessages();
|
||||
THEME->ReloadMetricsIfNecessary();
|
||||
|
||||
if( !Stack )
|
||||
ClearScreenStack();
|
||||
|
||||
@@ -72,12 +72,6 @@ ThemeManager::ThemeManager()
|
||||
m_pIniBaseMetrics = new IniFile;
|
||||
|
||||
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;
|
||||
GetThemeNames( arrayThemeNames );
|
||||
@@ -158,14 +152,6 @@ void ThemeManager::SwitchThemeAndLanguage( CString sThemeName, CString sLanguage
|
||||
for( i = 0; i < NUM_ELEMENT_CATEGORIES; ++i )
|
||||
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
|
||||
m_pIniBaseMetrics->Reset();
|
||||
m_pIniBaseMetrics->ReadFile( GetMetricsIniPath(FALLBACK_THEME_NAME) );
|
||||
@@ -469,21 +455,6 @@ bool ThemeManager::HasMetric( CString sClassName, CString sValueName )
|
||||
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()
|
||||
{
|
||||
SwitchThemeAndLanguage(m_sCurThemeName, m_sCurLanguage); // force a reload of the metrics cache
|
||||
|
||||
@@ -27,7 +27,6 @@ public:
|
||||
CString GetCurThemeDir() { return GetThemeDirFromName(m_sCurThemeName); };
|
||||
void NextTheme();
|
||||
void ReloadMetrics();
|
||||
void ReloadMetricsIfNecessary();
|
||||
void GetModifierNames( set<CString>& AddTo );
|
||||
|
||||
/* 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_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
|
||||
|
||||
Reference in New Issue
Block a user