diff options
| author | Tomasz Sterna <tomek@xiaoka.com> | 2014-07-06 09:34:43 +0200 |
|---|---|---|
| committer | Tomasz Sterna <tomek@xiaoka.com> | 2014-07-09 01:57:32 +0200 |
| commit | 83d3db78d63b1b8e21277fafd1ee0238fd7e3ddd (patch) | |
| tree | 5c0fa8c74f8f3baa03cba6c6b25ae85adf2a4c06 /daemon/manager.h | |
| parent | 1358e9c672eb186abec781900465988a04a1413e (diff) | |
Moved DBus service related properties to DBusProxy class
Diffstat (limited to 'daemon/manager.h')
| -rw-r--r-- | daemon/manager.h | 31 |
1 files changed, 20 insertions, 11 deletions
diff --git a/daemon/manager.h b/daemon/manager.h index 04dd7d4..b052355 100644 --- a/daemon/manager.h +++ b/daemon/manager.h @@ -18,10 +18,8 @@ using namespace CommHistory; class Manager : public QObject { Q_OBJECT - Q_PROPERTY(QVariantMap pebble READ pebble NOTIFY pebbleChanged) - Q_PROPERTY(QString name READ pebbleName NOTIFY pebbleChanged) - Q_PROPERTY(QString address READ pebbleAddress NOTIFY pebbleChanged) - Q_PROPERTY(bool connected READ pebbleConnected NOTIFY connectedChanged) + + friend class DBusProxy; QBluetoothLocalDevice btDevice; @@ -41,14 +39,7 @@ public: Q_INVOKABLE QString findPersonByNumber(QString number); Q_INVOKABLE void processUnreadMessages(GroupObject *group); - QVariantMap pebble() { return dbus->pebble(); } - QString pebbleName() { return dbus->pebble()["Name"].toString(); } - QString pebbleAddress() { return dbus->pebble()["Address"].toString(); } - bool pebbleConnected() { return watch->isConnected(); } - signals: - void pebbleChanged(); - void connectedChanged(); public slots: void hangupAll(); @@ -64,4 +55,22 @@ protected slots: }; +class DBusProxy : public QObject +{ + Q_OBJECT + Q_PROPERTY(QVariantMap pebble READ pebble) + Q_PROPERTY(QString name READ pebbleName) + Q_PROPERTY(QString address READ pebbleAddress) + Q_PROPERTY(bool connected READ pebbleConnected) + + QVariantMap pebble() { return static_cast<Manager*>(parent())->dbus->pebble(); } + QString pebbleName() { return static_cast<Manager*>(parent())->dbus->pebble()["Name"].toString(); } + QString pebbleAddress() { return static_cast<Manager*>(parent())->dbus->pebble()["Address"].toString(); } + bool pebbleConnected() { return static_cast<Manager*>(parent())->watch->isConnected(); } + +public: + explicit DBusProxy(QObject *parent) : QObject(parent) {} + +}; + #endif // MANAGER_H |
