aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/aoapplication.cpp3
-rw-r--r--src/aooptionsdialog.cpp13
-rw-r--r--src/charselect.cpp2
-rw-r--r--src/courtroom.cpp10
-rw-r--r--src/lobby.cpp10
-rw-r--r--src/main.cpp11
6 files changed, 34 insertions, 15 deletions
diff --git a/src/aoapplication.cpp b/src/aoapplication.cpp
index c47f3507..6213acd6 100644
--- a/src/aoapplication.cpp
+++ b/src/aoapplication.cpp
@@ -160,8 +160,7 @@ void AOApplication::ms_connect_finished(bool connected, bool will_retry)
if (will_retry)
{
if (lobby_constructed)
- w_lobby->append_error("Error connecting to master server. Will try again in "
- + QString::number(net_manager->ms_reconnect_delay) + " seconds.");
+ w_lobby->append_error(tr("Error connecting to master server. Will try again in %1 seconds.").arg(QString::number(net_manager->ms_reconnect_delay)));
}
else
{
diff --git a/src/aooptionsdialog.cpp b/src/aooptionsdialog.cpp
index 4bfe9de2..d68f6cbb 100644
--- a/src/aooptionsdialog.cpp
+++ b/src/aooptionsdialog.cpp
@@ -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");
diff --git a/src/charselect.cpp b/src/charselect.cpp
index 58c990ba..7e20c74e 100644
--- a/src/charselect.cpp
+++ b/src/charselect.cpp
@@ -214,7 +214,7 @@ void Courtroom::character_loading_finished()
int total_loading_size = ao_app->char_list_size * 2 + ao_app->evidence_list_size + ao_app->music_list_size;
int loading_value = int(((ao_app->loaded_chars + ao_app->generated_chars + ao_app->loaded_music + ao_app->loaded_evidence) / static_cast<double>(total_loading_size)) * 100);
ao_app->w_lobby->set_loading_value(loading_value);
- ao_app->w_lobby->set_loading_text(tr("Generating chars:\n") + QString::number(ao_app->generated_chars) + "/" + QString::number(ao_app->char_list_size));
+ ao_app->w_lobby->set_loading_text(tr("Generating chars:\n%1/%2").arg(QString::number(ao_app->generated_chars)).arg(QString::number(ao_app->char_list_size)));
}
}
diff --git a/src/courtroom.cpp b/src/courtroom.cpp
index 2ba3ba2c..dc7f12ce 100644
--- a/src/courtroom.cpp
+++ b/src/courtroom.cpp
@@ -245,7 +245,7 @@ Courtroom::Courtroom(AOApplication *p_ao_app) : QMainWindow()
ui_pair_list = new QListWidget(this);
ui_pair_offset_spinbox = new QSpinBox(this);
ui_pair_offset_spinbox->setRange(-100,100);
- ui_pair_offset_spinbox->setSuffix("% offset");
+ ui_pair_offset_spinbox->setSuffix(tr("% offset"));
ui_pair_button = new AOButton(this, ao_app);
ui_evidence_button = new AOButton(this, ao_app);
@@ -2821,7 +2821,7 @@ void Courtroom::on_ooc_return_pressed()
if (command.size() < 2)
{
- append_server_chatmessage("CLIENT", tr("You need to give a filename to load (extension not needed)! Make sure that it is in the `base/cases/` folder, and that it is a correctly formatted ini.\nCases you can load: ") + caseslist.join(", "), "1");
+ append_server_chatmessage("CLIENT", tr("You need to give a filename to load (extension not needed)! Make sure that it is in the `base/cases/` folder, and that it is a correctly formatted ini.\nCases you can load: %1").arg(caseslist.join(", ")), "1");
ui_ooc_chat_message->clear();
return;
}
@@ -2842,13 +2842,13 @@ void Courtroom::on_ooc_return_pressed()
QString casestatus = casefile.value("status", "").value<QString>();
if (!caseauth.isEmpty())
- append_server_chatmessage("CLIENT", tr("Case made by ") + caseauth + ".", "1");
+ append_server_chatmessage("CLIENT", tr("Case made by %1.").arg(caseauth), "1");
if (!casedoc.isEmpty())
ao_app->send_server_packet(new AOPacket("CT#" + ui_ooc_chat_name->text() + "#/doc " + casedoc + "#%"));
if (!casestatus.isEmpty())
ao_app->send_server_packet(new AOPacket("CT#" + ui_ooc_chat_name->text() + "#/status " + casestatus + "#%"));
if (!cmdoc.isEmpty())
- append_server_chatmessage("CLIENT", tr("Navigate to ") + cmdoc + tr(" for the CM doc."), "1");
+ append_server_chatmessage("CLIENT", tr("Navigate to %1 for the CM doc.").arg(cmdoc), "1");
for (int i = local_evidence_list.size() - 1; i >= 0; i--) {
ao_app->send_server_packet(new AOPacket("DE#" + QString::number(i) + "#%"));
@@ -2867,7 +2867,7 @@ void Courtroom::on_ooc_return_pressed()
ao_app->send_server_packet(new AOPacket("PE", f_contents));
}
- append_server_chatmessage("CLIENT", tr("Your case \"") + command[1] + tr("\" was loaded!"), "1");
+ append_server_chatmessage("CLIENT", tr("Your case \"%1\" was loaded!").arg(command[1]), "1");
ui_ooc_chat_message->clear();
return;
}
diff --git a/src/lobby.cpp b/src/lobby.cpp
index 776528c9..c95fd49c 100644
--- a/src/lobby.cpp
+++ b/src/lobby.cpp
@@ -9,7 +9,7 @@ Lobby::Lobby(AOApplication *p_ao_app) : QMainWindow()
{
ao_app = p_ao_app;
- this->setWindowTitle("Attorney Online 2");
+ this->setWindowTitle(tr("Attorney Online 2"));
this->setWindowIcon(QIcon(":/logo.png"));
ui_background = new AOImage(this, ao_app);
@@ -26,7 +26,7 @@ Lobby::Lobby(AOApplication *p_ao_app) : QMainWindow()
ui_chatbox = new AOTextArea(this);
ui_chatbox->setOpenExternalLinks(true);
ui_chatname = new QLineEdit(this);
- ui_chatname->setPlaceholderText("Name");
+ ui_chatname->setPlaceholderText(tr("Name"));
ui_chatname->setText(ao_app->get_ooc_name());
ui_chatmessage = new QLineEdit(this);
ui_loading_background = new AOImage(this, ao_app);
@@ -101,7 +101,7 @@ void Lobby::set_widgets()
ui_connect->set_image("connect.png");
set_size_and_pos(ui_version, "version");
- ui_version->setText("Version: " + ao_app->get_version_string());
+ ui_version->setText(tr("Version: %1").arg(ao_app->get_version_string()));
set_size_and_pos(ui_about, "about");
ui_about->set_image("about.png");
@@ -111,7 +111,7 @@ void Lobby::set_widgets()
"font: bold;");
set_size_and_pos(ui_player_count, "player_count");
- ui_player_count->setText("Offline");
+ ui_player_count->setText(tr("Offline"));
ui_player_count->setStyleSheet("font: bold;"
"color: white;"
"qproperty-alignment: AlignCenter;");
@@ -373,7 +373,7 @@ void Lobby::append_error(QString f_message)
void Lobby::set_player_count(int players_online, int max_players)
{
- QString f_string = "Online: " + QString::number(players_online) + "/" + QString::number(max_players);
+ QString f_string = tr("Online: %1/%2").arg(QString::number(players_online)).arg(QString::number(max_players));
ui_player_count->setText(f_string);
}
diff --git a/src/main.cpp b/src/main.cpp
index 7c2daa66..6c15e6f7 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -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();