#include "backend.h" #include #include #include #include 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("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("currentEngine"); engine->retranslate(); qDebug() << "L'activation de la langue [" << lang << "] a été effectuée avec succès."; }