aboutsummaryrefslogtreecommitdiff
path: root/src/qmmpui
diff options
context:
space:
mode:
authortrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2012-09-01 13:46:09 +0000
committertrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2012-09-01 13:46:09 +0000
commit7a1bbda224cf38a593f39a1bd9c02e2027e6f73a (patch)
tree6ab052c9d03eee07e61c11f65770fbc6ec5509b0 /src/qmmpui
parent4a82cdf9d88d28d26923091bff34e3a3d5163138 (diff)
downloadqmmp-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.cpp42
-rw-r--r--src/qmmpui/configdialog.h1
-rw-r--r--src/qmmpui/forms/configdialog.ui2
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">