diff options
Diffstat (limited to 'TouchArea/qdeclarativetoucharea.h')
-rw-r--r-- | TouchArea/qdeclarativetoucharea.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/TouchArea/qdeclarativetoucharea.h b/TouchArea/qdeclarativetoucharea.h index f9525e3..9648ece 100644 --- a/TouchArea/qdeclarativetoucharea.h +++ b/TouchArea/qdeclarativetoucharea.h @@ -48,6 +48,7 @@ #include <QMap> #include <QList> +#include <QDeclarativeScriptString> class QDeclarativeTouchPoint : public QObject { Q_OBJECT @@ -133,6 +134,7 @@ class QDeclarativeTouchArea : public QDeclarativeItem Q_PROPERTY(int maximumTouches READ maximumTouches WRITE setMaximumTouches) Q_PROPERTY(qreal scaleFactor READ scaleFactor NOTIFY scaleFactorChanged) Q_PROPERTY(qreal rotationAngle READ rotationAngle NOTIFY rotationAngleChanged) + Q_PROPERTY(QDeclarativeScriptString keepMouseFocus READ keepMouseFocus WRITE setKeepMouseFocus) public: QDeclarativeTouchArea(QDeclarativeItem *parent=0); @@ -146,6 +148,9 @@ public: qreal scaleFactor() const { return _scaleFactor; } qreal rotationAngle() const { return _rotationAngle; } + QDeclarativeScriptString keepMouseFocus() const { return _keepMouseFocus; } + void setKeepMouseFocus(const QDeclarativeScriptString &keep) { _keepMouseFocus = keep; } + QList<QObject*> touches() { return _touches.values(); } QList<QObject*> changedTouches() { return _changedTouches.values(); } @@ -186,6 +191,8 @@ protected: void clearChangedAndReleasedTouches(); void updateTopTouchArea(); void updateTouchData(QEvent*); + bool event(QEvent *event); + bool sceneEventFilter(QGraphicsItem *i, QEvent *event); private: QMap<int,QObject*> _touchPrototypes; @@ -198,6 +205,8 @@ private: qreal _rotationAngle; QDeclarativeTouchArea* _parentTouchArea; bool _active; + bool _stealMouse; + QDeclarativeScriptString _keepMouseFocus; }; |