aboutsummaryrefslogtreecommitdiff
path: root/launcher/ui/setupwizard/LanguageWizardPage.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'launcher/ui/setupwizard/LanguageWizardPage.cpp')
-rw-r--r--launcher/ui/setupwizard/LanguageWizardPage.cpp49
1 files changed, 49 insertions, 0 deletions
diff --git a/launcher/ui/setupwizard/LanguageWizardPage.cpp b/launcher/ui/setupwizard/LanguageWizardPage.cpp
new file mode 100644
index 00000000..072df10d
--- /dev/null
+++ b/launcher/ui/setupwizard/LanguageWizardPage.cpp
@@ -0,0 +1,49 @@
+#include "LanguageWizardPage.h"
+#include <Application.h>
+#include <translations/TranslationsModel.h>
+
+#include "ui/widgets/LanguageSelectionWidget.h"
+#include <QVBoxLayout>
+#include <BuildConfig.h>
+
+LanguageWizardPage::LanguageWizardPage(QWidget *parent)
+ : BaseWizardPage(parent)
+{
+ setObjectName(QStringLiteral("languagePage"));
+ auto layout = new QVBoxLayout(this);
+ mainWidget = new LanguageSelectionWidget(this);
+ layout->setContentsMargins(0,0,0,0);
+ layout->addWidget(mainWidget);
+
+ retranslate();
+}
+
+LanguageWizardPage::~LanguageWizardPage()
+{
+}
+
+bool LanguageWizardPage::wantsRefreshButton()
+{
+ return true;
+}
+
+void LanguageWizardPage::refresh()
+{
+ auto translations = APPLICATION->translations();
+ translations->downloadIndex();
+}
+
+bool LanguageWizardPage::validatePage()
+{
+ auto settings = APPLICATION->settings();
+ QString key = mainWidget->getSelectedLanguageKey();
+ settings->set("Language", key);
+ return true;
+}
+
+void LanguageWizardPage::retranslate()
+{
+ setTitle(tr("Language"));
+ setSubTitle(tr("Select the language to use in %1").arg(BuildConfig.LAUNCHER_NAME));
+ mainWidget->retranslate();
+}