summaryrefslogtreecommitdiff
path: root/libsowatch/watchlet.h
diff options
context:
space:
mode:
authorJavier S. Pedro <maemo@javispedro.com>2011-09-17 03:03:23 +0200
committerJavier S. Pedro <maemo@javispedro.com>2011-09-17 03:03:23 +0200
commit3a755f46d9cf6e3650d40a960d0d0db8c1ad9fa1 (patch)
treef330f63caec08b6626c808b5ae70c64cab0246a6 /libsowatch/watchlet.h
parent0dca79a8c15b76ca53617c0ed3396ab6435f0152 (diff)
downloadsowatch-3a755f46d9cf6e3650d40a960d0d0db8c1ad9fa1.tar.gz
sowatch-3a755f46d9cf6e3650d40a960d0d0db8c1ad9fa1.zip
preparing for library package
Diffstat (limited to 'libsowatch/watchlet.h')
-rw-r--r--libsowatch/watchlet.h48
1 files changed, 48 insertions, 0 deletions
diff --git a/libsowatch/watchlet.h b/libsowatch/watchlet.h
new file mode 100644
index 0000000..06e43a0
--- /dev/null
+++ b/libsowatch/watchlet.h
@@ -0,0 +1,48 @@
+#ifndef WATCHLET_H
+#define WATCHLET_H
+
+#include <QtCore/QObject>
+#include "sowatch_global.h"
+
+namespace sowatch
+{
+
+class Watch;
+class WatchServer;
+
+class SOWATCH_EXPORT Watchlet : public QObject
+{
+ Q_OBJECT
+ Q_PROPERTY(QString id READ id CONSTANT)
+ Q_PROPERTY(bool isActive READ isActive NOTIFY activeChanged)
+
+public:
+ explicit Watchlet(WatchServer *server, const QString& id);
+
+ WatchServer* server();
+ Watch* watch();
+
+ Q_INVOKABLE QString id() const;
+ Q_INVOKABLE bool isActive() const;
+
+signals:
+ void activeChanged();
+ void activated();
+ void deactivated();
+
+protected:
+ virtual void activate();
+ virtual void deactivate();
+
+ const QString _id;
+ bool _active;
+
+private:
+ WatchServer* _server;
+
+friend class WatchServer;
+};
+
+}
+
+#endif // WATCHLET_H