/* *openPilot Log - A FOSS Pilot Logbook Application *Copyright (C) 2020 Felix Turowsky * *This program 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. * *This program 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 . */ #include "mainwindow.h" //#include #include #include #include #include #include #include #include #include #include #include #include "dbsettings.h" #include "dbsetup.h" #include void connectToDatabase() { const QString DRIVER("QSQLITE"); if(QSqlDatabase::isDriverAvailable(DRIVER)) { QSqlDatabase db = QSqlDatabase::addDatabase(DRIVER); /*For a release, we need to decide where to put the database, for now *it is in the executable working directory for ease of developtment*/ //QString pathtodb = QStandardPaths::writableLocation(QStandardPaths::DocumentsLocation); //db.setDatabaseName(pathtodb+"/logbook.db"); //qDebug() << "Database: " << pathtodb+"/logbook.db"; db.setDatabaseName("logbook.db"); if(!db.open()) qWarning() << "MainWindow::DatabaseConnect - ERROR: " << db.lastError().text(); } else qWarning() << "MainWindow::DatabaseConnect - ERROR: no driver " << DRIVER << " available"; } int main(int argc, char *argv[]) { connectToDatabase(); QCoreApplication::setOrganizationName("Fiffty50"); QCoreApplication::setOrganizationDomain("https://github.com/fiffty-50/openpilotlog"); QCoreApplication::setApplicationName("openLog"); QApplication openLog(argc, argv); //Theming with CSS inlcues QFile,QTextStream, QDir, themes folder and TARGET = flog, RESOURCES = themes/breeze.qrc in pro // credit: https://github.com/Alexhuszagh/BreezeStyleSheets int selectedtheme = dbSettings::retreiveSetting(10).toInt(); QDir::setCurrent("/themes"); if (selectedtheme == 1){ qDebug() << "Loading light theme"; QFile file(":light.qss"); file.open(QFile::ReadOnly | QFile::Text); QTextStream stream(&file); openLog.setStyleSheet(stream.readAll()); }else if (selectedtheme == 2){ qDebug() << "Loading dark theme"; QFile file(":dark.qss"); file.open(QFile::ReadOnly | QFile::Text); QTextStream stream(&file); openLog.setStyleSheet(stream.readAll()); } MainWindow w; w.show(); return openLog.exec(); }