change onscreenapp
[apps/onscreenapp.git] / app / eventhandler.h
index 612e3de..40e3672 100644 (file)
 #include <string>
 #include <QVariant>
 #include <QPair>
-#include <QMap>
+//#include <QMap>
 #include <libhomescreen.hpp>
 #include <qlibwindowmanager.h>
 #include "hmi-debug.h"
 
-#define ROLE_NAME "on_screen"
 #define APP_ID "onscreenapp"
 
 class QQmlApplicationEngine;
@@ -46,20 +45,28 @@ public:
     static void* myThis;
     static void onRep_static(struct json_object* reply_contents);
 
-    void activateWindow(const char *role, const char *area = "normal");
     Q_INVOKABLE void deactivateWindow();
-    Q_INVOKABLE void onScreenReply(const QString &btn_name,
-                                   const QString &press_mode = QString("shortPress"),
-                                   const QString &press_state = QString("release"));
+    Q_INVOKABLE void onScreenReply(const QString &btn_name);
 
 signals:
-    void signalLoader(QVariant url);
-    void signalOnScreenParameter(QVariant text);
+    void updateModel(QVariant data);
+    void showOnScreen();
+    void hideOnScreen();
 
 private:
+    enum {
+        HIDING = 0,
+        SHOWING,
+        SWAPPING
+    };
+
+    int getDisplayStatus() {return m_dsp_sts;}
+    void setDisplayStatus(int sts) {m_dsp_sts = sts;}
+    void activateWindow(const char *role, const char *area = "normal.full");
+
     LibHomeScreen *mp_hs;
     QLibWindowmanager* mp_wm;
-    QMap<QString, QPair<QString, QString>> m_req;
-    QString m_dspreq;
+    QPair<QString, QString> m_req, m_dsp;
+    int m_dsp_sts = HIDING;
 };
 #endif // HOMESCREENHANDLER_H