Import initial du projet shipheart_cm5
This commit is contained in:
+38
@@ -0,0 +1,38 @@
|
||||
#include "backend.h"
|
||||
|
||||
#include <QDebug>
|
||||
#include <QApplication>
|
||||
#include <QQmlApplicationEngine>
|
||||
#include <QTranslator>
|
||||
|
||||
extern QTranslator translator;
|
||||
|
||||
Backend::Backend() : QObject()
|
||||
{
|
||||
}
|
||||
|
||||
//===================================================================================================
|
||||
// Fonction : Reçoit le code de la langue (par exemple 'en_EN') sélectionnée par l'utilisateur,
|
||||
// supprime le fichier de langue en cours et charge le nouveau.
|
||||
//===================================================================================================
|
||||
void Backend::change_langue(QString lang)
|
||||
{
|
||||
if (!translator.isEmpty()) QApplication::instance()->removeTranslator(&translator);
|
||||
|
||||
if (translator.load(":/shipheart_"+ lang))
|
||||
{
|
||||
if (QApplication::instance()->installTranslator(&translator))
|
||||
{
|
||||
QQmlApplicationEngine *engine = QApplication::instance()->findChild<QQmlApplicationEngine *>("currentEngine");
|
||||
engine->retranslate();
|
||||
}
|
||||
else qDebug() << "\tL'installation de " << lang << " a rencontré une erreur. Aucune langue n'est désormais installée (retour au FR)";
|
||||
}
|
||||
else qDebug() << "\tLe chargement de " << lang << " a rencontré une erreur. Aucune langue n'est désormais chargée (retour au FR)";
|
||||
|
||||
QQmlApplicationEngine *engine = QApplication::instance()->findChild<QQmlApplicationEngine *>("currentEngine");
|
||||
engine->retranslate();
|
||||
|
||||
qDebug() << "L'activation de la langue [" << lang << "] a été effectuée avec succès.";
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user