2020-04-22 16:42:58 +08:00
|
|
|
|
#include "ui/mainwindow.h"
|
2020-04-07 18:28:41 +08:00
|
|
|
|
|
|
|
|
|
#include <QApplication>
|
2020-04-25 18:15:00 +08:00
|
|
|
|
#include <QSettings>
|
|
|
|
|
#include <QTranslator>
|
|
|
|
|
#include <QMessageBox>
|
2021-02-14 22:47:56 +08:00
|
|
|
|
#include <QTextCodec>
|
2020-04-07 18:28:41 +08:00
|
|
|
|
|
|
|
|
|
int main(int argc, char *argv[])
|
|
|
|
|
{
|
2021-02-12 23:45:25 +08:00
|
|
|
|
QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling);
|
2021-02-14 22:47:56 +08:00
|
|
|
|
QTextCodec::setCodecForLocale(QTextCodec::codecForName("UTF-8"));
|
2020-04-07 18:28:41 +08:00
|
|
|
|
QApplication a(argc, argv);
|
|
|
|
|
MainWindow w;
|
2021-02-14 22:47:56 +08:00
|
|
|
|
|
2020-04-25 18:15:00 +08:00
|
|
|
|
QSettings* settings = new QSettings("GUIsettings.ini", QSettings::IniFormat);
|
2021-02-14 22:47:56 +08:00
|
|
|
|
settings->setIniCodec("UTF-8");
|
2020-06-13 01:27:59 +08:00
|
|
|
|
settings->beginGroup("lang");
|
2021-02-14 22:47:56 +08:00
|
|
|
|
QString currLang = settings->value("language", "").toString();
|
|
|
|
|
settings->endGroup();
|
|
|
|
|
if(currLang == "")
|
2020-04-25 18:15:00 +08:00
|
|
|
|
{
|
2021-02-14 22:47:56 +08:00
|
|
|
|
if(Util::chooseLanguage(settings, &w))
|
2020-04-25 18:15:00 +08:00
|
|
|
|
{
|
2021-02-14 22:47:56 +08:00
|
|
|
|
settings->beginGroup("lang");
|
|
|
|
|
currLang = settings->value("language", "").toString();
|
|
|
|
|
settings->endGroup();
|
2020-04-25 18:15:00 +08:00
|
|
|
|
}
|
2021-02-14 22:47:56 +08:00
|
|
|
|
else
|
|
|
|
|
currLang = "en_US";
|
|
|
|
|
}
|
|
|
|
|
currLang = "lang/" + currLang;
|
2020-04-29 16:30:27 +08:00
|
|
|
|
#ifdef Q_OS_WIN
|
2021-02-14 22:47:56 +08:00
|
|
|
|
currLang += ".qm";
|
2020-04-29 16:30:27 +08:00
|
|
|
|
#else
|
2021-02-14 22:47:56 +08:00
|
|
|
|
currLang += ".ts";;
|
2020-04-29 16:30:27 +08:00
|
|
|
|
#endif
|
2020-04-25 18:15:00 +08:00
|
|
|
|
QTranslator* translator = new QTranslator(&w);
|
2021-02-14 22:47:56 +08:00
|
|
|
|
if(translator->load(currLang))
|
2020-04-25 18:15:00 +08:00
|
|
|
|
{
|
|
|
|
|
a.installTranslator(translator);
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
2021-02-14 22:47:56 +08:00
|
|
|
|
QMessageBox::information(&w, "Error", "Can't load " + currLang + " as translation file.");
|
2020-04-25 18:15:00 +08:00
|
|
|
|
}
|
|
|
|
|
delete settings;
|
|
|
|
|
w.initUI();
|
2020-04-07 18:28:41 +08:00
|
|
|
|
w.show();
|
|
|
|
|
return a.exec();
|
|
|
|
|
}
|
2021-02-14 22:47:56 +08:00
|
|
|
|
|
|
|
|
|
|