diff options
Diffstat (limited to 'saltoqd/toqmanager.h')
-rw-r--r-- | saltoqd/toqmanager.h | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/saltoqd/toqmanager.h b/saltoqd/toqmanager.h index 422884d..6cc8b8d 100644 --- a/saltoqd/toqmanager.h +++ b/saltoqd/toqmanager.h @@ -2,6 +2,7 @@ #define TOQMANAGER_H #include <QtCore/QObject> +#include <QtDBus/QDBusAbstractAdaptor> #include "toqconnection.h" #include "settings.h" @@ -24,6 +25,8 @@ class NotificationManager; class ToqManager : public QObject { Q_OBJECT + Q_PROPERTY(bool connected READ isConnected NOTIFY connectedChanged) + public: explicit ToqManager(Settings *settings, QObject *parent = 0); @@ -51,6 +54,7 @@ public: signals: void connected(); void disconnected(); + void connectedChanged(); private slots: void handleToqMessage(const ToqConnection::Message &msg); @@ -77,6 +81,22 @@ private: NotificationManager *_notificationManager; }; +class ToqManagerAdaptor : public QDBusAbstractAdaptor +{ + Q_OBJECT + Q_CLASSINFO("D-Bus Interface", "com.javispedro.saltoq.ToqManager") + + Q_PROPERTY(bool connected READ isConnected NOTIFY connectedChanged) + +public: + ToqManagerAdaptor(ToqManager *parent); + + bool isConnected() const; + +signals: + void connectedChanged(); +}; + inline bool ToqManager::isConnected() const { return _conn->isConnected(); @@ -87,4 +107,9 @@ inline quint16 ToqManager::newTransactionId() return _conn->newTransactionId(); } +inline bool ToqManagerAdaptor::isConnected() const +{ + return static_cast<ToqManager*>(parent())->isConnected(); +} + #endif // TOQMANAGER_H |