Fallback to system default or English, if language unset

This commit is contained in:
Daniel Winzen
2015-01-01 00:06:32 +01:00
parent 41b756776f
commit 25a3bc63ee

View File

@@ -318,14 +318,33 @@ SetupDialog::SetupDialog( ConfigTabs _tab_to_open ) :
m_languages.append( fileNames[i] );
QString lang = QLocale( m_languages.last() ).nativeLanguageName();
changeLang->addItem( lang );
if( m_lang == m_languages.last() )
{
changeLang->setCurrentIndex( i );
}
}
connect( changeLang, SIGNAL( currentIndexChanged( int ) ),
this, SLOT( setLanguage( int ) ) );
//If language unset, fallback to system language when available
if( m_lang == "" )
{
QString tmp = QLocale::system().name().left( 2 );
if( m_languages.contains( tmp ) )
{
m_lang = tmp;
}
else
{
m_lang = "en";
}
}
for( int i = 0; i < changeLang->count(); ++i )
{
if( m_lang == m_languages.at( i ) )
{
changeLang->setCurrentIndex( i );
break;
}
}
gen_layout->addWidget( bufsize_tw );
gen_layout->addSpacing( 10 );
gen_layout->addWidget( misc_tw );