X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=homescreen%2Fsrc%2Fhomescreenhandler.h;h=df3dfc72c6fe5b0298ceb3916ab5ad2dbd232acd;hb=refs%2Fheads%2Fsandbox%2Fzheng_wenlong%2Fals2019_horizontal;hp=c18d7a0e9f5ec4806c8ca81e510ed267159f9bc1;hpb=85392e71f90a0322fdc08359ef1d829cdcf67381;p=apps%2Fhomescreen.git diff --git a/homescreen/src/homescreenhandler.h b/homescreen/src/homescreenhandler.h index c18d7a0..df3dfc7 100644 --- a/homescreen/src/homescreenhandler.h +++ b/homescreen/src/homescreenhandler.h @@ -18,21 +18,32 @@ #define HOMESCREENHANDLER_H #include -#include +#include +#include #include using namespace std; +class QQmlApplicationEngine; + class HomescreenHandler : public QObject { Q_OBJECT public: + enum CHANGE_LAYOUT_PATTERN { + P_LEFT_METER_RIGHT_MAP = 0, + P_LEFT_MAP_RIGHT_METER + }; + Q_ENUMS(CHANGE_LAYOUT_PATTERN) explicit HomescreenHandler(QObject *parent = 0); ~HomescreenHandler(); - void init(int port, const char* token); + void init(const char* role, int port, const char* token); + void attach(QQmlApplicationEngine* engine); + void setWMHandler(WMHandler &handler); Q_INVOKABLE void tapShortcut(QString application_name); + Q_INVOKABLE void changeLayout(int pattern); void onRep(struct json_object* reply_contents); void onEv(const string& event, struct json_object* event_contents); @@ -40,8 +51,19 @@ public: static void* myThis; static void onRep_static(struct json_object* reply_contents); static void onEv_static(const string& event, struct json_object* event_contents); + +signals: + void notification(QString id, QString icon, QString text); + void information(QString text); + +private Q_SLOTS: + void disconnect_frame_swapped(void); + private: - LibHomeScreen *mp_hs; + QLibHomeScreen *mp_qhs; + LibWindowmanager *mp_wm; + std::string m_role; + QMetaObject::Connection loading; }; #endif // HOMESCREENHANDLER_H