pass the language to LoadThemeRecursive and rename to LoadThemeMetrics

This commit is contained in:
Glenn Maynard
2005-11-01 18:04:59 +00:00
parent a23e6d9058
commit 51e06fdc2b
2 changed files with 9 additions and 8 deletions
+8 -7
View File
@@ -166,13 +166,17 @@ bool ThemeManager::DoesLanguageExist( const CString &sLanguage )
return false; return false;
} }
void ThemeManager::LoadThemeRecursive( deque<Theme> &theme, const CString &sThemeName_ ) void ThemeManager::LoadThemeMetrics( deque<Theme> &theme, const CString &sThemeName_, const CString &sLanguage_ )
{ {
for( unsigned i = 0; i < g_vThemes.size(); ++i ) for( unsigned i = 0; i < g_vThemes.size(); ++i )
delete g_vThemes[i].iniMetrics; delete g_vThemes[i].iniMetrics;
g_vThemes.clear(); g_vThemes.clear();
CString sThemeName(sThemeName_); CString sThemeName(sThemeName_);
CString sLanguage(sLanguage_);
m_sCurThemeName = sThemeName;
m_sCurLanguage = sLanguage;
bool bLoadedBase = false; bool bLoadedBase = false;
while(1) while(1)
@@ -185,8 +189,8 @@ void ThemeManager::LoadThemeRecursive( deque<Theme> &theme, const CString &sThem
t.sThemeName = sThemeName; t.sThemeName = sThemeName;
t.iniMetrics->ReadFile( GetMetricsIniPath(sThemeName) ); t.iniMetrics->ReadFile( GetMetricsIniPath(sThemeName) );
t.iniMetrics->ReadFile( GetLanguageIniPath(sThemeName,BASE_LANGUAGE) ); t.iniMetrics->ReadFile( GetLanguageIniPath(sThemeName,BASE_LANGUAGE) );
if( m_sCurLanguage.CompareNoCase(BASE_LANGUAGE) ) if( sLanguage.CompareNoCase(BASE_LANGUAGE) )
t.iniMetrics->ReadFile( GetLanguageIniPath(sThemeName,m_sCurLanguage) ); t.iniMetrics->ReadFile( GetLanguageIniPath(sThemeName,sLanguage) );
bool bIsBaseTheme = !sThemeName.CompareNoCase(BASE_THEME_NAME); bool bIsBaseTheme = !sThemeName.CompareNoCase(BASE_THEME_NAME);
t.iniMetrics->GetValue( "Global", "IsBaseTheme", bIsBaseTheme ); t.iniMetrics->GetValue( "Global", "IsBaseTheme", bIsBaseTheme );
@@ -250,15 +254,12 @@ void ThemeManager::SwitchThemeAndLanguage( const CString &sThemeName_, const CSt
if( sThemeName == m_sCurThemeName && sLanguage == m_sCurLanguage ) if( sThemeName == m_sCurThemeName && sLanguage == m_sCurLanguage )
return; return;
m_sCurThemeName = sThemeName;
m_sCurLanguage = sLanguage;
// clear theme path cache // clear theme path cache
for( int i = 0; i < NUM_ElementCategory; ++i ) for( int i = 0; i < NUM_ElementCategory; ++i )
g_ThemePathCache[i].clear(); g_ThemePathCache[i].clear();
// load current theme // load current theme
LoadThemeRecursive( g_vThemes, m_sCurThemeName ); LoadThemeMetrics( g_vThemes, sThemeName, sLanguage );
LOG->MapLog( "theme", "Theme: %s", sThemeName.c_str() ); LOG->MapLog( "theme", "Theme: %s", sThemeName.c_str() );
LOG->MapLog( "language", "Language: %s", sLanguage.c_str() ); LOG->MapLog( "language", "Language: %s", sLanguage.c_str() );
+1 -1
View File
@@ -98,7 +98,7 @@ public:
protected: protected:
void RunLuaScripts( const CString &sMask ); void RunLuaScripts( const CString &sMask );
void LoadThemeRecursive( deque<Theme> &theme, const CString &sThemeName ); void LoadThemeMetrics( deque<Theme> &theme, const CString &sThemeName, const CString &sLanguage_ );
bool GetMetricRawRecursive( const CString &sClassName, const CString &sValueName, CString &sRet ); bool GetMetricRawRecursive( const CString &sClassName, const CString &sValueName, CString &sRet );
CString GetPathToAndFallback( ElementCategory category, const CString &sClassName, const CString &sFile ); CString GetPathToAndFallback( ElementCategory category, const CString &sClassName, const CString &sFile );
CString GetPathToRaw( const CString &sThemeName, ElementCategory category, const CString &sClassName, const CString &sFile ); CString GetPathToRaw( const CString &sThemeName, ElementCategory category, const CString &sClassName, const CString &sFile );