-#ifdef QT_QML_DEBUG
#include <QtQuick>
+#ifdef QT_QML_DEBUG
+#include <QDebug>
#endif
#include <sailfishapp.h>
+#include "journey.h"
+#include "journeymodel.h"
+#include "status.h"
+#include "settings.h"
+
+#include "harbour-pedalo.h"
+
int main(int argc, char *argv[])
{
// SailfishApp::main() will display "qml/harbour-pedalo.qml", if you need more
//
// To display the view, call "show()" (will show fullscreen on device).
- return SailfishApp::main(argc, argv);
+ QScopedPointer<QGuiApplication> app(SailfishApp::application(argc, argv));
+ // These values are used by QSettings to access the config file in
+ // /home/nemo/.local/share/flypig/harbour-pedalo.conf
+ //QCoreApplication::setOrganizationName("flypig");
+ QCoreApplication::setOrganizationDomain("www.flypig.co.uk");
+ QCoreApplication::setApplicationName(APP_NAME);
+
+ Settings::instantiate();
+ qmlRegisterSingletonType<Settings>("harbour.pedalo.settings", 1, 0, "Settings", Settings::provider);
+
+ JourneyModel journeys;
+ Status currentStatus;
+ Settings::getInstance().setMainStatus(currentStatus);
+ Settings::getInstance().loadSettings();
+
+ QFile file;
+ file.setFileName(Settings::getConfigDir() + "/journeys.csv");
+ journeys.importFromFile(file);
+
+ QScopedPointer<QQuickView> view(SailfishApp::createView());
+ view->setSource(SailfishApp::pathTo("qml/harbour-pedalo.qml"));
+
+ QQmlContext *ctxt = view->rootContext();
+ ctxt->setContextProperty("journeymodel", &journeys);
+ ctxt->setContextProperty("currentStatus", ¤tStatus);
+
+ view->show();
+ int result = app->exec();
+
+ // Write out the journey data
+ QDir dir;
+ dir.mkpath(Settings::getConfigDir());
+ file.setFileName(Settings::getConfigDir() + "/journeys.csv");
+ qDebug() << "File saved as: " << file.fileName();
+ journeys.exportToFile(file);
+
+ Settings::getInstance().saveSettings();
+
+ return result;
}