Selettore lingua (System/EN/IT) nelle impostazioni con QTranslator in main.cpp (pattern quill); fix 'Close book' con pop fino alla prima pagina
This commit is contained in:
+25
-1
@@ -2,6 +2,7 @@
|
||||
#include <QGuiApplication>
|
||||
#include <QQuickView>
|
||||
#include <QQmlContext>
|
||||
#include <QTranslator>
|
||||
#include <sailfishapp.h>
|
||||
|
||||
#include "apiclient.h"
|
||||
@@ -12,13 +13,36 @@
|
||||
Q_DECL_EXPORT int main(int argc, char *argv[])
|
||||
{
|
||||
QGuiApplication *app = SailfishApp::application(argc, argv);
|
||||
|
||||
Settings settings;
|
||||
|
||||
// User-chosen language (Settings -> Language). "system" = Sailfish UI
|
||||
// language (libsailfishapp already installed its translator). "en" =
|
||||
// force English (remove all translators). "it" = force Italian.
|
||||
const QString lang = settings.language();
|
||||
if (lang == "en" || lang == "it") {
|
||||
const QList<QTranslator *> trs = app->findChildren<QTranslator *>();
|
||||
foreach (QTranslator *t, trs) {
|
||||
app->removeTranslator(t);
|
||||
t->deleteLater();
|
||||
}
|
||||
if (lang == "it") {
|
||||
QTranslator *translator = new QTranslator(app);
|
||||
if (translator->load(QStringLiteral("harbour-calibreweb_it"),
|
||||
QStringLiteral("/usr/share/translations"))) {
|
||||
app->installTranslator(translator);
|
||||
} else {
|
||||
qWarning() << "harbour-calibreweb: cannot load harbour-calibreweb_it.qm";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
QQuickView *view = SailfishApp::createView();
|
||||
|
||||
qDebug() << "harbour-calibreweb v0.2.0 build" << __DATE__ << __TIME__;
|
||||
|
||||
qmlRegisterType<EpubBook>("harbour.calibreweb", 1, 0, "EpubBook");
|
||||
|
||||
Settings settings;
|
||||
ApiClient apiClient(&settings);
|
||||
Downloader downloader(&settings);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user