--- /dev/null
+#ifndef QUICKWIDGET_HPP\r
+#define QUICKWIDGET_HPP\r
+\r
+#include <QtCore>\r
+#include <QtGui>\r
+#include <q-extras/qemaemo5dynamicwidgethelper.h>\r
+\r
+class QDeclarativeView;\r
+class QuickWidgetWrapper;\r
+\r
+\r
+class QuickWidget : public QeMaemo5DynamicHomescreenWidget\r
+{\r
+ Q_OBJECT\r
+\r
+private:\r
+ void initView(const QString& fileName, const QSize& size=QSize());\r
+ QSize size_;\r
+ QDeclarativeView* view_;\r
+ QuickWidgetWrapper* wrapper_;\r
+\r
+protected:\r
+// void showSettingsDialog();\r
+ bool restoreWidgetState();\r
+ void errorWidget();\r
+ bool x11Event(XEvent *event);\r
+\r
+public:\r
+ static QuickWidget *createAndShowNew(const QString& fileName, const QSize& size=QSize());\r
+\r
+ explicit QuickWidget(QWidget *parent = 0);\r
+ Q_INVOKABLE bool onHomescreen() { return isVisibleOnCurrentHomescreen(); }\r
+ ~QuickWidget();\r
+\r
+};\r
+\r
+class QuickWidgetWrapper : public QObject\r
+{\r
+ Q_OBJECT\r
+\r
+public:\r
+ QuickWidgetWrapper(QuickWidget *owner) : m_owner(owner) {;}\r
+ Q_PROPERTY(bool isActiveWindow READ onHomeScreen NOTIFY onHomeScreenChanged);\r
+\r
+ bool onHomeScreen() const { return homeScreen; }\r
+\r
+ void setOnHomeScreen(bool active)\r
+ {\r
+ if (active == homeScreen)\r
+ return;\r
+ homeScreen = active;\r
+ emit onHomeScreenChanged();\r
+ }\r
+\r
+Q_SIGNALS:\r
+ void onHomeScreenChanged();\r
+\r
+private:\r
+ QuickWidget *m_owner;\r
+ bool homeScreen;\r
+};\r
+\r
+#endif // QuickWidget_HPP\r