diff options
author | wang_zhiqiang <wang_zhiqiang@dl.cn.nexty-ele.com> | 2018-09-26 10:39:58 +0800 |
---|---|---|
committer | wang_zhiqiang <wang_zhiqiang@dl.cn.nexty-ele.com> | 2018-09-26 10:39:58 +0800 |
commit | e79d82c88e350e6b882158624363b82fe3e2d91a (patch) | |
tree | ffce5bb5ca731ac3b3fd323b18c72c7d18572481 /app/eventhandler.h | |
parent | ec044f44133cad1d12311345437b13b1a953226e (diff) |
update
Diffstat (limited to 'app/eventhandler.h')
-rw-r--r-- | app/eventhandler.h | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/app/eventhandler.h b/app/eventhandler.h new file mode 100644 index 0000000..58f694d --- /dev/null +++ b/app/eventhandler.h @@ -0,0 +1,71 @@ +/* + * Copyright (c) 2017 TOYOTA MOTOR CORPORATION + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef HOMESCREENHANDLER_H +#define HOMESCREENHANDLER_H + +#include <QObject> +#include <string> +#include <QVariant> +#include <QPair> +#include <QMap> + +#include <libhomescreen.hpp> +#include <qlibwindowmanager.h> +#include "hmi-debug.h" + +#define ROLE_NAME "on_screen.app" +#define APP_ID "onscreenapp" + +class QQuickWindow; + +class EventHandler : public QObject +{ + Q_OBJECT +public: + explicit EventHandler(QObject *parent = 0); + ~EventHandler(); + + void init(int port, const char* token); + void setQuickWindow(QQuickWindow *qw); + + void onRep(struct json_object* reply_contents); + + static void* myThis; + static void onRep_static(struct json_object* reply_contents); + + void activateWindow(QString &role); + Q_INVOKABLE void deactivateWindow(QString &role); + Q_INVOKABLE void onScreenReply(const QString &btn_name); + +signals: + void signalLoader(QVariant url); + void signalOnScreenParameter(QVariant text); + +private: + + LibHomeScreen *mp_hs; + QLibWindowmanager* mp_wm; + + QQuickWindow *mp_qw; + + QMap<QString, QPair<QString, QString>> m_req; + QString m_dspreq; + QString my_id; + QString my_role; +}; + +#endif // HOMESCREENHANDLER_H |