/*
*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();
}