From 2943f608110f93a7c44150dd26de076c8a822c98 Mon Sep 17 00:00:00 2001 From: Philip Kaufmann Date: Mon, 25 Jun 2012 22:36:16 +0200 Subject: [PATCH] GUI: change language selection format - display as "language - country (locale name)", when locale name consists of 2 parts - display as "language (locale name)", when locale name consists of 1 part --- src/qt/optionsdialog.cpp | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/src/qt/optionsdialog.cpp b/src/qt/optionsdialog.cpp index 9c7b8545..e28b96b0 100644 --- a/src/qt/optionsdialog.cpp +++ b/src/qt/optionsdialog.cpp @@ -14,6 +14,7 @@ #include #include #include +#include #include #include #include @@ -62,7 +63,19 @@ OptionsDialog::OptionsDialog(QWidget *parent) : ui->lang->addItem(QString("(") + tr("default") + QString(")"), QVariant("")); foreach(const QString &langStr, translations.entryList()) { - ui->lang->addItem(langStr, QVariant(langStr)); + QLocale locale(langStr); + + /** check if the locale name consists of 2 parts (language_country) */ + if(langStr.contains("_")) + { + /** display language strings as "language - country (locale name)", e.g. "German - Germany (de)" */ + ui->lang->addItem(QLocale::languageToString(locale.language()) + QString(" - ") + QLocale::countryToString(locale.country()) + QString(" (") + langStr + QString(")"), QVariant(langStr)); + } + else + { + /** display language strings as "language (locale name)", e.g. "German (de)" */ + ui->lang->addItem(QLocale::languageToString(locale.language()) + QString(" (") + langStr + QString(")"), QVariant(langStr)); + } } ui->unit->setModel(new BitcoinUnits(this));