rn->setNode(0, un.release());
return rn.release();
}
- else
- {
- un->setNode(0, ln.release());
- un->setNode(1, rn.release());
- return un.release();
- }
+
+
+ un->setNode(0, ln.release());
+ un->setNode(1, rn.release());
+ return un.release();
}
return ln.release();
}
rn->setNode(0, un.release());
return rn.release();
}
- else
- {
- un->setNode(0, ln.release());
- un->setNode(1, rn.release());
- return un.release();
- }
+
+ un->setNode(0, ln.release());
+ un->setNode(1, rn.release());
+ return un.release();
}
return ln.release();
}
m_pszOldLocale = NULL;
m_pMsgCat = NULL;
m_language = wxLANGUAGE_UNKNOWN;
+ m_initialized = false;
}
// NB: this function has (desired) side effect of changing current locale
bool bLoadDefault,
bool bConvertEncoding)
{
+ wxASSERT_MSG( !m_initialized,
+ _T("you can't call wxLocale::Init more than once") );
+
+ m_initialized = true;
m_strLocale = szName;
m_strShort = szShort;
m_bConvertEncoding = bConvertEncoding;
if ( m_strShort.IsEmpty() ) {
// FIXME I don't know how these 2 letter abbreviations are formed,
// this wild guess is surely wrong
- if ( szLocale[0] )
+ if ( szLocale && szLocale[0] )
{
m_strShort += (wxChar)wxTolower(szLocale[0]);
if ( szLocale[1] )
}
else
{
- int codepage = -1;
+ int codepage
+ #ifdef SETLOCALE_FAILS_ON_UNICODE_LANGS
+ = -1
+ #endif
+ ;
wxUint32 lcid = MAKELCID(MAKELANGID(info->WinLang, info->WinSublang),
SORT_DEFAULT);
// FIXME
(flags & wxLOCALE_CONV_ENCODING) != 0);
free(szLocale);
- if ( ret )
+ if (IsOk()) // setlocale() succeeded
m_language = lang;
return ret;
// don't add it because it couldn't be loaded anyway
delete pMsgCat;
+ // it's OK to not load English catalog, the texts are embedded in
+ // the program:
+ if (m_strShort.Mid(0, 2) == wxT("en"))
+ return TRUE;
+
return FALSE;
}
}
LNG(wxLANGUAGE_SWAHILI, "sw_KE", LANG_SWAHILI , SUBLANG_DEFAULT , "Swahili")
LNG(wxLANGUAGE_SWEDISH, "sv_SE", LANG_SWEDISH , SUBLANG_SWEDISH , "Swedish")
LNG(wxLANGUAGE_SWEDISH_FINLAND, "sv_FI", LANG_SWEDISH , SUBLANG_SWEDISH_FINLAND , "Swedish (Finland)")
- LNG(wxLANGUAGE_TAGALOG, "tl" , 0 , 0 , "Tagalog")
+ LNG(wxLANGUAGE_TAGALOG, "tl_PH", 0 , 0 , "Tagalog")
LNG(wxLANGUAGE_TAJIK, "tg" , 0 , 0 , "Tajik")
LNG(wxLANGUAGE_TAMIL, "ta" , LANG_TAMIL , SUBLANG_DEFAULT , "Tamil")
LNG(wxLANGUAGE_TATAR, "tt" , LANG_TATAR , SUBLANG_DEFAULT , "Tatar")