Added QTranslators

This commit is contained in:
0xFEEDC0DE64
2017-12-05 20:43:56 +01:00
parent 423ec3fe90
commit ced1c0f92e
2 changed files with 58 additions and 1 deletions

View File

@@ -1,8 +1,10 @@
#include <QApplication>
#include <QTranslator>
#include <QMessageBox>
#include <QSplashScreen>
#include <QPixmap>
#include <QDir>
#include <QInputDialog>
#include <QMessageBox>
#include <QDebug>
@@ -13,6 +15,28 @@
#include "dialogs/authenticationdialog.h"
#include "mainwindow.h"
bool loadAndInstallTranslator(QTranslator &translator,
const QLocale &locale,
const QString &filename,
const QString &prefix = QString(),
const QString &directory = QString(),
const QString &suffix = QString())
{
if(!translator.load(locale, filename, prefix, directory, suffix))
{
qDebug() << "could not load translation" << filename;
return false;
}
if(!QCoreApplication::installTranslator(&translator))
{
qDebug() << "could not install translation" << filename;
return false;
}
return true;
}
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
@@ -58,6 +82,14 @@ int main(int argc, char *argv[])
QLocale::setDefault(QLocale(settings.language(), QLocale::Austria));
QTranslator qtTranslator(&app);
loadAndInstallTranslator(qtTranslator, QLocale(), QStringLiteral("qt"), QStringLiteral("_"),
QDir(QCoreApplication::applicationDirPath()).absoluteFilePath("translations"));
QTranslator zeiterfassungTranslator(&app);
loadAndInstallTranslator(zeiterfassungTranslator, QLocale(), QStringLiteral("zeiterfassung"),
QStringLiteral("_"), QStringLiteral(":/zeiterfassung/translations"));
splashScreen.showMessage(QObject::tr("Loading login page..."));
Zeiterfassung erfassung(settings.url(), &app);

View File

@@ -61,3 +61,28 @@ FORMS += \
strips/kontierungstrip.ui \
dialogs/settingsdialog.ui \
dialogs/languageselectiondialog.ui
win32 {
CONFIG(debug, release|debug) {
translationsinstall.path = $${OUT_PWD}/debug/translations
} else {
translationsinstall.path = $${OUT_PWD}/release/translations
}
}
unix {
translationsinstall.path = $${OUT_PWD}/translations
}
translationsinstall.files = $$[QT_INSTALL_TRANSLATIONS]/qt_en.qm \
$$[QT_INSTALL_TRANSLATIONS]/qtbase_en.qm \
$$[QT_INSTALL_TRANSLATIONS]/qtmultimedia_en.qm \
$$[QT_INSTALL_TRANSLATIONS]/qtquick1_en.qm \
$$[QT_INSTALL_TRANSLATIONS]/qtscript_nen.qm \
$$[QT_INSTALL_TRANSLATIONS]/qtxmlpatterns_en.qm \
$$[QT_INSTALL_TRANSLATIONS]/qt_de.qm \
$$[QT_INSTALL_TRANSLATIONS]/qtbase_de.qm \
$$[QT_INSTALL_TRANSLATIONS]/qtmultimedia_de.qm \
$$[QT_INSTALL_TRANSLATIONS]/qtquick1_de.qm \
$$[QT_INSTALL_TRANSLATIONS]/qtscript_de.qm \
$$[QT_INSTALL_TRANSLATIONS]/qtxmlpatterns_de.qm
INSTALLS *= translationsinstall