show native names for each language
This commit is contained in:
@@ -153,22 +153,34 @@ static void GameSel( int &sel, bool ToSel, const ConfOption *pConfOption )
|
|||||||
|
|
||||||
static void LanguageChoices( vector<RString> &out )
|
static void LanguageChoices( vector<RString> &out )
|
||||||
{
|
{
|
||||||
THEME->GetLanguages( out );
|
vector<RString> vs;
|
||||||
|
THEME->GetLanguages( vs );
|
||||||
|
SortRStringArray( vs, true );
|
||||||
|
|
||||||
|
FOREACH_CONST( RString, vs, s )
|
||||||
|
{
|
||||||
|
const LanguageInfo *pLI = GetLanguageInfo( *s );
|
||||||
|
if( pLI )
|
||||||
|
out.push_back( pLI->szNativeName );
|
||||||
|
else
|
||||||
|
out.push_back( *s );
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void Language( int &sel, bool ToSel, const ConfOption *pConfOption )
|
static void Language( int &sel, bool ToSel, const ConfOption *pConfOption )
|
||||||
{
|
{
|
||||||
vector<RString> choices;
|
vector<RString> vs;
|
||||||
pConfOption->MakeOptionsList( choices );
|
THEME->GetLanguages( vs );
|
||||||
|
SortRStringArray( vs, true );
|
||||||
|
|
||||||
if( ToSel )
|
if( ToSel )
|
||||||
{
|
{
|
||||||
sel = 0;
|
sel = 0;
|
||||||
for( unsigned i=1; i<choices.size(); i++ )
|
for( unsigned i=1; i<vs.size(); i++ )
|
||||||
if( !stricmp(choices[i], THEME->GetCurLanguage()) )
|
if( !stricmp(vs[i], THEME->GetCurLanguage()) )
|
||||||
sel = i;
|
sel = i;
|
||||||
} else {
|
} else {
|
||||||
const RString sNewLanguage = choices[sel];
|
const RString &sNewLanguage = vs[sel];
|
||||||
|
|
||||||
if( THEME->GetCurLanguage() != sNewLanguage )
|
if( THEME->GetCurLanguage() != sNewLanguage )
|
||||||
THEME->SwitchThemeAndLanguage( THEME->GetCurThemeName(), sNewLanguage, PREFSMAN->m_bPseudoLocalize );
|
THEME->SwitchThemeAndLanguage( THEME->GetCurThemeName(), sNewLanguage, PREFSMAN->m_bPseudoLocalize );
|
||||||
|
|||||||
Reference in New Issue
Block a user