From 3b97e3c363711c96a0198fa57695eaaa021c82ba Mon Sep 17 00:00:00 2001 From: Jan Dalheimer Date: Sat, 4 Jan 2014 11:49:06 +0100 Subject: Fix a few things related to the translations --- gui/dialogs/ModEditDialogCommon.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gui') diff --git a/gui/dialogs/ModEditDialogCommon.cpp b/gui/dialogs/ModEditDialogCommon.cpp index 9a15d92d..eee42e5e 100644 --- a/gui/dialogs/ModEditDialogCommon.cpp +++ b/gui/dialogs/ModEditDialogCommon.cpp @@ -50,8 +50,8 @@ void showWebsiteForMod(QWidget *parentDlg, Mod &m) else { CustomMessageBox::selectable( - parentDlg, parentDlg->tr("How sad!"), - parentDlg->tr("The mod author didn't provide a website link for this mod."), + parentDlg, QObject::tr("How sad!"), + QObject::tr("The mod author didn't provide a website link for this mod."), QMessageBox::Warning); } } -- cgit v1.2.3 From 7f6b344b49506462a63453bc79ae1b82536dc138 Mon Sep 17 00:00:00 2001 From: Jan Dalheimer Date: Sat, 4 Jan 2014 16:13:28 +0100 Subject: Clean up/update translation code and made language selectable in the settings dialog --- gui/dialogs/SettingsDialog.cpp | 16 ++++++++++++++++ gui/dialogs/SettingsDialog.ui | 17 +++++++++++++++-- 2 files changed, 31 insertions(+), 2 deletions(-) (limited to 'gui') diff --git a/gui/dialogs/SettingsDialog.cpp b/gui/dialogs/SettingsDialog.cpp index 9362075e..e0e1b82c 100644 --- a/gui/dialogs/SettingsDialog.cpp +++ b/gui/dialogs/SettingsDialog.cpp @@ -219,6 +219,9 @@ void SettingsDialog::applySettings(SettingsObject *s) } } + // Language + s->set("Language", ui->languageBox->currentData().toLocale().bcp47Name()); + // Updates s->set("AutoUpdate", ui->autoUpdateCheckBox->isChecked()); @@ -286,6 +289,19 @@ void SettingsDialog::applySettings(SettingsObject *s) void SettingsDialog::loadSettings(SettingsObject *s) { + // Language + ui->languageBox->clear(); + ui->languageBox->addItem(tr("English"), QLocale(QLocale::English)); + foreach(const QString & lang, + QDir(MMC->root() + "/translations").entryList(QStringList() << "*.qm", QDir::Files)) + { + QLocale locale(lang.section(QRegExp("[_\.]"), 1)); + ui->languageBox->addItem( + QLocale::languageToString(locale.language()), + locale); + } + ui->languageBox->setCurrentIndex(ui->languageBox->findData(QLocale(s->get("Language").toString()))); + // Updates ui->autoUpdateCheckBox->setChecked(s->get("AutoUpdate").toBool()); ui->devBuildsCheckBox->setChecked(s->get("UseDevBuilds").toBool()); diff --git a/gui/dialogs/SettingsDialog.ui b/gui/dialogs/SettingsDialog.ui index dbc8ca88..c1008c75 100644 --- a/gui/dialogs/SettingsDialog.ui +++ b/gui/dialogs/SettingsDialog.ui @@ -7,7 +7,7 @@ 0 0 526 - 628 + 701 @@ -40,6 +40,20 @@ General + + + + + + Language (needs restart): + + + + + + + + @@ -644,7 +658,6 @@ - settingsTab buttonBox sortLastLaunchedBtn sortByNameBtn -- cgit v1.2.3 From 8950953d915ba234f62da93b520a1b82594cb9dc Mon Sep 17 00:00:00 2001 From: Jan Dalheimer Date: Sat, 4 Jan 2014 19:20:20 +0100 Subject: Hopefully fix Qt 5.1 compilation --- gui/dialogs/SettingsDialog.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'gui') diff --git a/gui/dialogs/SettingsDialog.cpp b/gui/dialogs/SettingsDialog.cpp index e0e1b82c..60a3e009 100644 --- a/gui/dialogs/SettingsDialog.cpp +++ b/gui/dialogs/SettingsDialog.cpp @@ -220,7 +220,7 @@ void SettingsDialog::applySettings(SettingsObject *s) } // Language - s->set("Language", ui->languageBox->currentData().toLocale().bcp47Name()); + s->set("Language", ui->languageBox->itemData(ui->languageBox->currentIndex()).toLocale().bcp47Name()); // Updates s->set("AutoUpdate", ui->autoUpdateCheckBox->isChecked()); -- cgit v1.2.3