diff options
Diffstat (limited to 'src/gui/kernel')
-rw-r--r-- | src/gui/kernel/qevent.cpp | 15 | ||||
-rw-r--r-- | src/gui/kernel/qevent.h | 8 |
2 files changed, 23 insertions, 0 deletions
diff --git a/src/gui/kernel/qevent.cpp b/src/gui/kernel/qevent.cpp index 5a539ccaf6..51100f56ff 100644 --- a/src/gui/kernel/qevent.cpp +++ b/src/gui/kernel/qevent.cpp @@ -964,6 +964,21 @@ bool QSinglePointEvent::isEndEvent() const } /*! + \property QSinglePointEvent::exclusivePointGrabber + \brief the object that will receive future updates + + The exclusive grabber is an object that has chosen to receive all future + update events and the release event containing the same point that this + event carries. + + Setting the exclusivePointGrabber property is a convenience equivalent to: + \code + setExclusiveGrabber(points().first(), exclusiveGrabber); + \endcode +*/ + + +/*! \class QMouseEvent \ingroup events \inmodule QtGui diff --git a/src/gui/kernel/qevent.h b/src/gui/kernel/qevent.h index 6abbae07be..07d5be51c6 100644 --- a/src/gui/kernel/qevent.h +++ b/src/gui/kernel/qevent.h @@ -233,6 +233,9 @@ protected: class Q_GUI_EXPORT QSinglePointEvent : public QPointerEvent { + Q_GADGET + Q_PROPERTY(QObject *exclusivePointGrabber READ exclusivePointGrabber WRITE setExclusivePointGrabber) + public: QSinglePointEvent(Type type, const QPointingDevice *dev, const QPointF &localPos, const QPointF &scenePos, const QPointF &globalPos, @@ -253,6 +256,11 @@ public: bool isUpdateEvent() const override; bool isEndEvent() const override; + QObject *exclusivePointGrabber() const + { return QPointerEvent::exclusiveGrabber(points().first()); } + void setExclusivePointGrabber(QObject *exclusiveGrabber) + { QPointerEvent::setExclusiveGrabber(points().first(), exclusiveGrabber); } + protected: QSinglePointEvent(Type type, const QPointingDevice *dev, const QEventPoint &point, Qt::MouseButton button, Qt::MouseButtons buttons, |