Add VIS vehicle signal support
[apps/hvac.git] / app / main.cpp
index b532b73..e4f87bf 100644 (file)
@@ -1,5 +1,6 @@
 /*
  * Copyright (C) 2016 The Qt Company Ltd.
+ * Copyright (C) 2022 Konsulko Group
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
  * limitations under the License.
  */
 
-#include <QtCore/QDebug>
-#include <QtCore/QCommandLineParser>
-#include <QtCore/QUrlQuery>
-#include <QtGui/QGuiApplication>
-#include <QtQml/QQmlApplicationEngine>
-#include <QtQml/QQmlContext>
-#include <QtQuickControls2/QQuickStyle>
+#include <QGuiApplication>
+#include <QQmlApplicationEngine>
+#include <QDebug>
+#include <hvac.h>
+#include <vehiclesignals.h>
 
-#ifdef HAVE_LIBHOMESCREEN
-#include <libhomescreen.hpp>
-#endif
+#include "translator.h"
 
 int main(int argc, char *argv[])
 {
-#ifdef HAVE_LIBHOMESCREEN
-    LibHomeScreen libHomeScreen;
+       setenv("QT_QUICK_CONTROLS_STYLE", "AGL", 1);
 
-    if (!libHomeScreen.renderAppToAreaAllowed(0, 1)) {
-        qWarning() << "renderAppToAreaAllowed is denied";
-        return -1;
-    }
-#endif
+       QGuiApplication app(argc, argv);
 
-    QGuiApplication app(argc, argv);
-    app.setApplicationName(QStringLiteral("HVAC"));
-    app.setApplicationVersion(QStringLiteral("0.1.0"));
-    app.setOrganizationDomain(QStringLiteral("automotivelinux.org"));
-    app.setOrganizationName(QStringLiteral("AutomotiveGradeLinux"));
+       QQmlApplicationEngine engine;
+       VehicleSignalsConfig vsConfig("hvac");
+       engine.rootContext()->setContextProperty("hvac", new HVAC(new VehicleSignals(vsConfig)));
+       qmlRegisterType<Translator>("Translator", 1, 0, "Translator");
+       engine.load(QUrl(QStringLiteral("qrc:/HVAC.qml")));
 
-    QQuickStyle::setStyle("AGL");
-
-    QCommandLineParser parser;
-    parser.addPositionalArgument("port", app.translate("main", "port for binding"));
-    parser.addPositionalArgument("secret", app.translate("main", "secret for binding"));
-    parser.addHelpOption();
-    parser.addVersionOption();
-    parser.process(app);
-    QStringList positionalArguments = parser.positionalArguments();
-
-
-    QQmlApplicationEngine engine;
-    if (positionalArguments.length() == 2) {
-        int port = positionalArguments.takeFirst().toInt();
-        QString secret = positionalArguments.takeFirst();
-        QUrl bindingAddress;
-        bindingAddress.setScheme(QStringLiteral("ws"));
-        bindingAddress.setHost(QStringLiteral("localhost"));
-        bindingAddress.setPort(port);
-        bindingAddress.setPath(QStringLiteral("/api"));
-        QUrlQuery query;
-        query.addQueryItem(QStringLiteral("token"), secret);
-        bindingAddress.setQuery(query);
-        QQmlContext *context = engine.rootContext();
-        context->setContextProperty(QStringLiteral("bindingAddress"), bindingAddress);
-    }
-    engine.load(QUrl(QStringLiteral("qrc:/HVAC.qml")));
-
-    return app.exec();
+       return app.exec();
 }
-