Add support for translating overlays
This commit is contained in:
parent
bc2b603d3d
commit
53f41065eb
@ -105,6 +105,9 @@ INSTALLS += ubuntu_files
|
||||
|
||||
# Translations support
|
||||
TRANSLATIONS += $$files($$absolute_path(nymea-app)/translations/*.ts, true)
|
||||
!equals(OVERLAY_PATH, "") {
|
||||
TRANSLATIONS += $$files($${OVERLAY_PATH}/translations/*ts, true)
|
||||
}
|
||||
system("lrelease $$TRANSLATIONS")
|
||||
lrelease.commands = lrelease $$TRANSLATIONS
|
||||
QMAKE_EXTRA_TARGETS += lrelease
|
||||
|
||||
@ -120,6 +120,17 @@ int main(int argc, char *argv[])
|
||||
}
|
||||
application.installTranslator(&appTranslator);
|
||||
|
||||
#ifdef OVERLAY_PATH
|
||||
QTranslator overlayTranslator;
|
||||
translationResult = overlayTranslator.load(QString("%1-%2").arg(APPLICATION_NAME).arg(QLocale().name()), ":/translations");
|
||||
if (translationResult) {
|
||||
qCDebug(dcApplication()) << "Loaded overlay translation for locale" << QString("%1-%2").arg(APPLICATION_NAME).arg(QLocale().name());
|
||||
} else {
|
||||
qCInfo(dcApplication()) << "Failed to load overlay translations for locale" << QString("%1-%2").arg(APPLICATION_NAME).arg(QLocale().name());
|
||||
}
|
||||
application.installTranslator(&overlayTranslator);
|
||||
#endif
|
||||
|
||||
registerQmlTypes();
|
||||
|
||||
QQmlApplicationEngine *engine = new QQmlApplicationEngine();
|
||||
@ -175,7 +186,7 @@ int main(int argc, char *argv[])
|
||||
qmlRegisterType<ConfiguredHostsProxyModel>("Nymea", 1, 0, "ConfiguredHostsProxyModel");
|
||||
qmlRegisterUncreatableType<ConfiguredHost>("Nymea", 1, 0, "ConfiguredHost", "Get them from ConfiguredHostsModel");
|
||||
|
||||
#ifdef OVERLAY_QMLTYPES
|
||||
#ifdef OVERLAY_PATH
|
||||
registerOverlayTypes("Nymea", 1, 0);
|
||||
#endif
|
||||
|
||||
|
||||
@ -62,6 +62,7 @@ linux:!android:!ubports: {
|
||||
exists($${OVERLAY_PATH}/src/src.pri) {
|
||||
message("Including sources from overlay")
|
||||
include($${OVERLAY_PATH}/src/src.pri)
|
||||
DEFINES += OVERLAY_PATH=\\\"$${OVERLAY_PATH}\\\"
|
||||
DEFINES += OVERLAY_QMLTYPES=\\\"$${OVERLAY_PATH}/src/qmltypes.h\\\"
|
||||
}
|
||||
} else {
|
||||
|
||||
Reference in New Issue
Block a user