change for new seq
[src/libqthomescreen.git] / src / qlibhomescreen.h
index 53a461e..306983c 100644 (file)
@@ -18,6 +18,7 @@
 #define QLIBHOMESCREEN_H
 
 #include <QObject>
+#include <QQuickWindow>
 #include <libhomescreen.hpp>
 #include <functional>
 #include <QVariant>
@@ -40,7 +41,8 @@ public:
        Event_HideWindow = LibHomeScreen::Event_HideWindow,
        Event_ReplyShowWindow = LibHomeScreen::Event_ReplyShowWindow,
        Event_ShowNotification = LibHomeScreen::Event_ShowNotification,
-       Event_ShowInformation = LibHomeScreen::Event_ShowInformation
+       Event_ShowInformation = LibHomeScreen::Event_ShowInformation,
+       Event_AppListChanged = LibHomeScreen::Event_AppListChanged
     };
     using handler_fun = std::function<void(json_object *object)>;
 
@@ -59,11 +61,21 @@ public:
     Q_INVOKABLE void hideWindow(QString application_id);
     Q_INVOKABLE void replyShowWindow(QString application_id, QString reply);
     Q_INVOKABLE void getRunnables(void);
+    void registerCallback(
+        void (*event_cb)(const std::string& event, struct json_object* event_contents),
+        void (*reply_cb)(struct json_object* reply_contents),
+        void (*hangup_cb)(void) = nullptr);
+    void setQuickWindow(QQuickWindow *qw);
 
 signals:
 
+public slots:
+    void slotPublishSubscription(void);
+
 private:
     LibHomeScreen *mp_hs;
+    QQuickWindow *mp_window;
+    QMetaObject::Connection m_loading;
 };
 
 #endif // QLIBHOMESCREEN_H