code_app/app/scanner/main.cpp

54 lines
1.4 KiB
C++

#include "mainwindow.h"
#include <QApplication>
#include <QTranslator>
#include <QScreen>
#include "app_cfg.h"
#include "lang/app_language.h"
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
lang_initialize(nullptr);
QString appLang = getCfgValue("global", "language", QString("chinese"));
for (int i = 1; i < argc; i++)
{
char* z = argv[i];
if (z == strstr(z, "-language="))
appLang = z + strlen("-language=");
}
if (appLang != "english")
{
appLang = "chinese";
}
QString translator_qt_name = ":translation/qt_zh_CN.qm";
QString translator_scanner_name = ":translation/Scanner_zh_CN.qm";
int cp = 936;
if (appLang == "english")
{
translator_qt_name = ":translation/qt_zh_CN.qm";
translator_scanner_name = ":translation/Scanner_zh_EN.qm";
cp = 20127;
}
QTranslator translator_qt;
if (translator_qt.load(translator_qt_name))
a.installTranslator(&translator_qt);
QTranslator translator_scanner;
if (translator_scanner.load(translator_scanner_name))
a.installTranslator(&translator_scanner);
lang_set_code_page(cp);
MainWindow w(appLang);
QScreen *screen = QGuiApplication::primaryScreen();
w.move((screen->size().width() - w.width()) / 2, (screen->size().height() - w.height()) / 2);
w.show();
return a.exec();
}