language setting

This commit is contained in:
stonedDiscord 2019-08-05 23:30:00 +02:00
parent fff2c13b63
commit 078ad79b65
3 changed files with 24 additions and 2 deletions

View File

@ -55,6 +55,8 @@ private:
QLineEdit *ui_ms_textbox;
QLabel *ui_discord_lbl;
QCheckBox *ui_discord_cb;
QLabel *ui_language_label;
QComboBox *ui_language_combobox;
QWidget *ui_callwords_tab;
QWidget *ui_callwords_widget;

View File

@ -167,6 +167,18 @@ AOOptionsDialog::AOOptionsDialog(QWidget *parent, AOApplication *p_ao_app) : QDi
ui_gameplay_form->setWidget(9, QFormLayout::FieldRole, ui_discord_cb);
ui_language_label = new QLabel(ui_form_layout_widget);
ui_language_label->setText(tr("Language:"));
ui_language_label->setToolTip(tr("Sets the language if you don't want to use your system language."));
ui_gameplay_form->setWidget(10, QFormLayout::LabelRole, ui_language_label);
ui_language_combobox = new QComboBox(ui_form_layout_widget);
ui_language_combobox->addItem(" - Default");
ui_language_combobox->addItem("en - English");
ui_language_combobox->addItem("de - German");
ui_language_combobox->addItem("jp - Japanese");
ui_gameplay_form->setWidget(10, QFormLayout::FieldRole, ui_language_combobox);
// Here we start the callwords tab.
ui_callwords_tab = new QWidget();
ui_settings_tabs->addTab(ui_callwords_tab, tr("Callwords"));
@ -466,6 +478,7 @@ void AOOptionsDialog::save_pressed()
configini->setValue("show_custom_shownames", ui_showname_cb->isChecked());
configini->setValue("master", ui_ms_textbox->text());
configini->setValue("discord", ui_discord_cb->isChecked());
configini->setValue("language", ui_language_combobox->currentText().left(2));
QFile* callwordsini = new QFile(ao_app->get_base_path() + "callwords.ini");

View File

@ -21,13 +21,20 @@ int main(int argc, char *argv[])
AOApplication main_app(argc, argv);
QSettings* configini = main_app.configini;
QString p_language = configini->value("language",QLocale::system().name()).toString();
if (p_language==" " || p_language=="")
p_language = QLocale::system().name();
QTranslator qtTranslator;
qtTranslator.load("qt_" + QLocale::system().name(),
qtTranslator.load("qt_" + p_language,
QLibraryInfo::location(QLibraryInfo::TranslationsPath));
main_app.installTranslator(&qtTranslator);
QTranslator appTranslator;
appTranslator.load("ao_" + QLocale::system().name(),":/resource/translations/");
qDebug() << ":/resource/translations/ao_" + p_language;
appTranslator.load("ao_" + p_language,":/resource/translations/");
main_app.installTranslator(&appTranslator);
main_app.construct_lobby();