provide a default localizer

This commit is contained in:
Glenn Maynard
2005-12-30 08:35:33 +00:00
parent 6db0cf831a
commit 7cc18a89cd
2 changed files with 7 additions and 8 deletions
+6 -6
View File
@@ -2,7 +2,11 @@
#include "LocalizedString.h" #include "LocalizedString.h"
#include "Foreach.h" #include "Foreach.h"
static RString (*g_pfnLocalizer)(const RString&,const RString&) = NULL; static RString DefaultLocalizer( const RString &sSection, const RString &sName )
{
return sName;
}
static RString (*g_pfnLocalizer)(const RString&,const RString&) = DefaultLocalizer;
void LocalizedString::RegisterLocalizer( RString (*pfnLocalizer)(const RString&, const RString&) ) void LocalizedString::RegisterLocalizer( RString (*pfnLocalizer)(const RString&, const RString&) )
{ {
@@ -21,19 +25,17 @@ void LocalizedString::RefreshLocalizedStrings()
RString LocalizedString::LocalizeString( const RString &sSection, const RString &sName ) RString LocalizedString::LocalizeString( const RString &sSection, const RString &sName )
{ {
ASSERT( g_pfnLocalizer );
return g_pfnLocalizer( sSection, sName ); return g_pfnLocalizer( sSection, sName );
} }
LocalizedString::LocalizedString( const RString &sSection, const RString &sName ) LocalizedString::LocalizedString( const RString &sSection, const RString &sName )
{ {
m_bLoaded = false;
m_sSection = sSection; m_sSection = sSection;
m_sName = sName; m_sName = sName;
m_sValue = sName;
SubscriptionManager<LocalizedString>::Subscribe( this ); SubscriptionManager<LocalizedString>::Subscribe( this );
if( g_pfnLocalizer != NULL )
Refresh(); Refresh();
} }
@@ -51,14 +53,12 @@ LocalizedString::operator RString() const
const RString &LocalizedString::GetValue() const const RString &LocalizedString::GetValue() const
{ {
ASSERT(m_bLoaded);
return m_sValue; return m_sValue;
} }
void LocalizedString::Refresh() void LocalizedString::Refresh()
{ {
m_sValue = LocalizeString( m_sSection, m_sName ); m_sValue = LocalizeString( m_sSection, m_sName );
m_bLoaded = true;
} }
-1
View File
@@ -20,7 +20,6 @@ private:
RString m_sSection; RString m_sSection;
RString m_sName; RString m_sName;
RString m_sValue; RString m_sValue;
bool m_bLoaded;
}; };
#endif #endif