diff options
| author | trialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38> | 2012-09-01 13:46:09 +0000 |
|---|---|---|
| committer | trialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38> | 2012-09-01 13:46:09 +0000 |
| commit | 7a1bbda224cf38a593f39a1bd9c02e2027e6f73a (patch) | |
| tree | 6ab052c9d03eee07e61c11f65770fbc6ec5509b0 /src/qmmpui | |
| parent | 4a82cdf9d88d28d26923091bff34e3a3d5163138 (diff) | |
| download | qmmp-7a1bbda224cf38a593f39a1bd9c02e2027e6f73a.tar.gz qmmp-7a1bbda224cf38a593f39a1bd9c02e2027e6f73a.tar.bz2 qmmp-7a1bbda224cf38a593f39a1bd9c02e2027e6f73a.zip | |
added user interface language option
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@2919 90c681e8-e032-0410-971d-27865f9a5e38
Diffstat (limited to 'src/qmmpui')
| -rw-r--r-- | src/qmmpui/configdialog.cpp | 42 | ||||
| -rw-r--r-- | src/qmmpui/configdialog.h | 1 | ||||
| -rw-r--r-- | src/qmmpui/forms/configdialog.ui | 2 |
3 files changed, 44 insertions, 1 deletions
diff --git a/src/qmmpui/configdialog.cpp b/src/qmmpui/configdialog.cpp index 78b62e2cc..f97b9aa06 100644 --- a/src/qmmpui/configdialog.cpp +++ b/src/qmmpui/configdialog.cpp @@ -69,6 +69,7 @@ ConfigDialog::ConfigDialog (QWidget *parent) : QDialog (parent) m_ui->replayGainModeComboBox->addItem (tr("Disabled"), QmmpSettings::REPLAYGAIN_DISABLED); readSettings(); loadPluginsInfo(); + loadLanguages(); createMenus(); //setup icons m_ui->preferencesButton->setIcon(QIcon::fromTheme("configure")); @@ -297,6 +298,43 @@ void ConfigDialog::createMenus() connect(menu, SIGNAL(triggered (QAction *)), SLOT(addTitleString(QAction *))); } +void ConfigDialog::loadLanguages() +{ + QMap<QString, QString> l; + l["auto"] = tr("<Autodetect>"); + l["pt_BR"] = tr("Brazilian Portuguese"); + l["zh_CN"] = tr("Chinese Simplified"); + l["zh_TW"] = tr("Chinese Traditional"); + l["cs"] = tr("Czech"); + l["nl"] = tr("Dutch"); + l["en_US"] = tr("English"); + l["fr"] = tr("French"); + l["de"] = tr("German"); + l["hu"] = tr("Hungarian"); + l["it"] = tr("Italian"); + l["ja"] = tr("Japanese"); + l["kk"] = tr("Kazakh"); + l["lt"] = tr("Lithuanian"); + l["pl_PL"] = tr("Polish"); + l["ru_RU"] = tr("Russian"); + l["sk"] = tr("Slovak"); + l["es"] = tr("Spanish"); + l["tr"] = tr("Turkish"); + l["uk_UA"] = tr("Ukrainian"); + + foreach(QString code, l.keys()) + { + QString title = code != "auto" ? l.value(code) + " (" + code + ")" : l.value(code); + m_ui->langComboBox->addItem(title, code); + } + + QString code = Qmmp::uiLanguageID(); + int index = m_ui->langComboBox->findData(code); + if(index < 0) + index = m_ui->langComboBox->findData("auto"); + m_ui->langComboBox->setCurrentIndex(index); +} + void ConfigDialog::addTitleString(QAction * a) { if (m_ui->formatLineEdit->cursorPosition () < 1) @@ -351,6 +389,10 @@ void ConfigDialog::saveSettings() QSettings settings (Qmmp::configFile(), QSettings::IniFormat); settings.setValue("ConfigDialog/splitter_sizes", var_sizes); settings.setValue("ConfigDialog/window_size", size()); + //User interface language + int index = m_ui->langComboBox->currentIndex(); + if(index >= 0) + Qmmp::setUiLanguageID(m_ui->langComboBox->itemData(index).toString()); } void ConfigDialog::on_treeWidget_itemChanged (QTreeWidgetItem *item, int column) diff --git a/src/qmmpui/configdialog.h b/src/qmmpui/configdialog.h index 163df66ad..b039c3529 100644 --- a/src/qmmpui/configdialog.h +++ b/src/qmmpui/configdialog.h @@ -72,6 +72,7 @@ private: void findSkins(const QString &path); void loadPluginsInfo(); void createMenus(); + void loadLanguages(); int m_insert_row; Ui::ConfigDialog *m_ui; diff --git a/src/qmmpui/forms/configdialog.ui b/src/qmmpui/forms/configdialog.ui index 95183279a..14ecc4d49 100644 --- a/src/qmmpui/forms/configdialog.ui +++ b/src/qmmpui/forms/configdialog.ui @@ -724,7 +724,7 @@ <property name="title"> <string>Audio</string> </property> - <layout class="QGridLayout" name="gridLayout"> + <layout class="QGridLayout" name="gridLayout3"> <item row="0" column="0"> <widget class="QLabel" name="label_20"> <property name="text"> |
