Sat, 23 Apr 2022 13:18:47 +0200
Moved QStringList arrays to global.
/** * main.cpp is part of bmsapp. * * bmsapp is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * bmsapp is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see <http://www.gnu.org/licenses/>. */ #include <QApplication> #include <QCommandLineParser> #include <QDebug> #include <QDate> #include <QMessageBox> #include <QSettings> #include "MainWindow.h" #include "config.h" int main(int argc, char *argv[]) { QApplication app(argc, argv); QString locale = QLocale::system().name(); app.setApplicationName("bmsapp"); app.setApplicationVersion(VERSIONSTRING); app.setOrganizationName("mbse"); /* Stylesheet setup */ QFile f(":/qdarkstyle/theme/style.qss"); //QFile f(":dummy"); if (!f.exists()) { printf("Unable to set stylesheet, file not found\n"); } else { f.open(QFile::ReadOnly | QFile::Text); QTextStream ts(&f); qApp->setStyleSheet(ts.readAll()); } /* Setup user ini format */ QSettings::setDefaultFormat(QSettings::IniFormat); /* Setup commandline parser */ QCommandLineParser parser; parser.setApplicationDescription("Brewery Management System Application."); QCommandLineOption const startConfigOption({"c", "config"}, "Start the configuration editor."); parser.addOption(startConfigOption); QCommandLineOption const useDevelopOption({"d", "develop"}, "Use the development database."); parser.addOption(useDevelopOption); parser.addHelpOption(); parser.addVersionOption(); parser.process(app); QTranslator translator; translator.load(QString("bmsapp_") + locale); app.installTranslator(&translator); qDebug().noquote() << "Starting" << app.applicationName() << app.applicationVersion() << QDateTime::currentDateTime().toString(); MainWindow w(parser.isSet(useDevelopOption), parser.isSet(startConfigOption)); w.show(); try { auto mainAppReturnValue = app.exec(); qDebug().noquote() << "Finished" << app.applicationName() << app.applicationVersion() << QDateTime::currentDateTime().toString(); return mainAppReturnValue; } catch (const QString &error) { QMessageBox::critical(0, QApplication::tr("Application terminates"), QApplication::tr("The application encountered a fatal error.\nError message:\n%1").arg(error)); } return EXIT_FAILURE; }