X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=app%2Fmain.cpp;fp=app%2Fmain.cpp;h=0000000000000000000000000000000000000000;hb=5a9d121e37b110a8dce34d2a2d506412cac6b2d7;hp=92f1c5ffbfe36a7c5e9887954163c4d5eccfb95f;hpb=de4e4f75c59b1da4de91a75b3ab7b94d0ab8335f;p=apps%2Fonscreenapp.git diff --git a/app/main.cpp b/app/main.cpp deleted file mode 100644 index 92f1c5f..0000000 --- a/app/main.cpp +++ /dev/null @@ -1,107 +0,0 @@ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -int main(int argc, char* argv[]) { - QString role = QString("Restriction"); - - QGuiApplication app(argc, argv); - - QQuickStyle::setStyle("AGL"); - - QQmlApplicationEngine engine; - - 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(); - - 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); - - std::string token = secret.toStdString(); - LibHomeScreen* hs = new LibHomeScreen(); - QLibWindowmanager* qwm = new QLibWindowmanager(); - - if (qwm->init(port, secret) != 0) { - exit(EXIT_FAILURE); - } - // Request a surface as described in layers.json windowmanager’s file - if (qwm->requestSurface(role) != 0) { - exit(EXIT_FAILURE); - } - // Create an event callback against an event type. Here a lambda is - // called when SyncDraw event occurs - qwm->set_event_handler(QLibWindowmanager::Event_SyncDraw, - [qwm, role](json_object* object) { - fprintf(stderr, "Surface got syncDraw!\n"); - qwm->endDraw(role); - }); - - engine.load(QUrl(QStringLiteral("qrc:/main.qml"))); - QObject* root = engine.rootObjects().first(); - - // HomeScreen - hs->init(port, token.c_str()); - - // release restriction - hs->set_event_handler( - LibHomeScreen::Event_ReleaseRestriction, - [qwm, role, root](json_object* object) { - json_object* areaJ = nullptr; - if (json_object_object_get_ex(object, "area", &areaJ)) { - QString area(QLatin1String(json_object_get_string(areaJ))); - - QMetaObject::invokeMethod(root, "hideImage"); - - // qwm->releaseWR(role, area); - qwm->deactivateSurface(role); - } - }); - - // allocate restriction - hs->set_event_handler( - LibHomeScreen::Event_AllocateRestriction, - [qwm, role, root](json_object* object) { - json_object* areaJ = nullptr; - if (json_object_object_get_ex(object, "area", &areaJ)) { - QString area(QLatin1String(json_object_get_string(areaJ))); - qDebug() - << "Surface got Event_AllocateRestriction " << area; - - QMetaObject::invokeMethod(root, "showImage", - Q_ARG(QVariant, area)); - - // qwm->allocateWR(role, area); - qwm->activateSurface(role, area.prepend("restriction.")); - } - }); - } - - return app.exec(); -} \ No newline at end of file