Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
|
#include <qquicksinglepointhandler_p.h>
Signals | |
void | pointChanged () |
Signals inherited from QQuickPointerDeviceHandler | |
void | acceptedDevicesChanged () |
void | acceptedPointerTypesChanged () |
void | acceptedButtonsChanged () |
void | acceptedModifiersChanged () |
Signals inherited from QQuickPointerHandler | |
void | enabledChanged () |
void | activeChanged () |
void | targetChanged () |
void | marginChanged () |
Q_REVISION (2, 15) void dragThresholdChanged() | |
void | grabChanged (QPointingDevice::GrabTransition transition, QEventPoint point) |
void | grabPermissionChanged () |
void | canceled (QEventPoint point) |
Q_REVISION (6, 3) void parentChanged() | |
Signals inherited from QObject | |
void | destroyed (QObject *=nullptr) |
This signal is emitted immediately before the object obj is destroyed, after any instances of QPointer have been notified, and cannot be blocked. | |
void | objectNameChanged (const QString &objectName, QPrivateSignal) |
This signal is emitted after the object's name has been changed. | |
Public Member Functions | |
QQuickSinglePointHandler (QQuickItem *parent=nullptr) | |
\qmltype SinglePointHandler \qmlabstract \preliminary \instantiates QQuickSinglePointHandler \inherits PointerDeviceHandler \inqmlmodule QtQuick | |
QQuickHandlerPoint | point () const |
Public Member Functions inherited from QQuickPointerDeviceHandler | |
QQuickPointerDeviceHandler (QQuickItem *parent=nullptr) | |
\qmltype PointerDeviceHandler \qmlabstract | |
QInputDevice::DeviceTypes | acceptedDevices () const |
QPointingDevice::PointerTypes | acceptedPointerTypes () const |
Qt::MouseButtons | acceptedButtons () const |
\qmlproperty flags QtQuick::PointerDeviceHandler::acceptedButtons | |
Qt::KeyboardModifiers | acceptedModifiers () const |
Public Member Functions inherited from QQuickPointerHandler | |
QQuickPointerHandler (QQuickItem *parent=nullptr) | |
\qmltype PointerHandler \qmlabstract | |
~QQuickPointerHandler () | |
bool | enabled () const |
\qmlproperty bool QtQuick::PointerHandler::enabled | |
void | setEnabled (bool enabled) |
bool | active () const |
\readonly \qmlproperty bool QtQuick::PointerHandler::active | |
QQuickItem * | target () const |
\qmlproperty Item QtQuick::PointerHandler::target | |
void | setTarget (QQuickItem *target) |
QQuickItem * | parentItem () const |
\qmlproperty Item QtQuick::PointerHandler::parent | |
void | setParentItem (QQuickItem *p) |
void | handlePointerEvent (QPointerEvent *event) |
GrabPermissions | grabPermissions () const |
\qmlproperty flags QtQuick::PointerHandler::grabPermissions | |
void | setGrabPermissions (GrabPermissions grabPermissions) |
qreal | margin () const |
\qmlproperty real PointerHandler::margin | |
void | setMargin (qreal pointDistanceThreshold) |
int | dragThreshold () const |
\qmlproperty int PointerHandler::dragThreshold | |
void | setDragThreshold (int t) |
void | resetDragThreshold () |
Public Member Functions inherited from QObject | |
Q_INVOKABLE | QObject (QObject *parent=nullptr) |
Constructs an object with parent object parent. | |
virtual | ~QObject () |
Destroys the object, deleting all its child objects. | |
virtual bool | eventFilter (QObject *watched, QEvent *event) |
Filters events if this object has been installed as an event filter for the watched object. | |
QString | objectName () const |
Q_WEAK_OVERLOAD void | setObjectName (const QString &name) |
Sets the object's name to name. | |
void | setObjectName (QAnyStringView name) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. | |
QBindable< QString > | bindableObjectName () |
bool | isWidgetType () const |
Returns true if the object is a widget; otherwise returns false . | |
bool | isWindowType () const |
Returns true if the object is a window; otherwise returns false . | |
bool | isQuickItemType () const |
Returns true if the object is a QQuickItem; otherwise returns false . | |
bool | signalsBlocked () const noexcept |
Returns true if signals are blocked; otherwise returns false . | |
bool | blockSignals (bool b) noexcept |
If block is true, signals emitted by this object are blocked (i.e., emitting a signal will not invoke anything connected to it). | |
QThread * | thread () const |
Returns the thread in which the object lives. | |
bool | moveToThread (QThread *thread QT6_DECL_NEW_OVERLOAD_TAIL) |
Changes the thread affinity for this object and its children and returns true on success. | |
int | startTimer (int interval, Qt::TimerType timerType=Qt::CoarseTimer) |
This is an overloaded function that will start a timer of type timerType and a timeout of interval milliseconds. | |
int | startTimer (std::chrono::nanoseconds time, Qt::TimerType timerType=Qt::CoarseTimer) |
void | killTimer (int id) |
Kills the timer with timer identifier, id. | |
void | killTimer (Qt::TimerId id) |
template<typename T > | |
T | findChild (QAnyStringView aName, Qt::FindChildOptions options=Qt::FindChildrenRecursively) const |
Returns the child of this object that can be cast into type T and that is called name, or \nullptr if there is no such object. | |
template<typename T > | |
QList< T > | findChildren (QAnyStringView aName, Qt::FindChildOptions options=Qt::FindChildrenRecursively) const |
Returns all children of this object with the given name that can be cast to type T, or an empty list if there are no such objects. | |
template<typename T > | |
T | findChild (Qt::FindChildOptions options=Qt::FindChildrenRecursively) const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. | |
template<typename T > | |
QList< T > | findChildren (Qt::FindChildOptions options=Qt::FindChildrenRecursively) const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. | |
const QObjectList & | children () const |
Returns a list of child objects. | |
void | setParent (QObject *parent) |
Makes the object a child of parent. | |
void | installEventFilter (QObject *filterObj) |
Installs an event filter filterObj on this object. | |
void | removeEventFilter (QObject *obj) |
Removes an event filter object obj from this object. | |
QMetaObject::Connection | connect (const QObject *sender, const char *signal, const char *member, Qt::ConnectionType type=Qt::AutoConnection) const |
bool | disconnect (const char *signal=nullptr, const QObject *receiver=nullptr, const char *member=nullptr) const |
bool | disconnect (const QObject *receiver, const char *member=nullptr) const |
void | dumpObjectTree () const |
Dumps a tree of children to the debug output. | |
void | dumpObjectInfo () const |
Dumps information about signal connections, etc. | |
bool | setProperty (const char *name, const QVariant &value) |
Sets the value of the object's name property to value. | |
bool | setProperty (const char *name, QVariant &&value) |
QVariant | property (const char *name) const |
Returns the value of the object's name property. | |
QList< QByteArray > | dynamicPropertyNames () const |
QBindingStorage * | bindingStorage () |
const QBindingStorage * | bindingStorage () const |
QObject * | parent () const |
Returns a pointer to the parent object. | |
bool | inherits (const char *classname) const |
Returns true if this object is an instance of a class that inherits className or a QObject subclass that inherits className; otherwise returns false . | |
Public Member Functions inherited from QQmlParserStatus | |
QQmlParserStatus () | |
virtual | ~QQmlParserStatus () |
Protected Member Functions | |
QQuickSinglePointHandler (QQuickSinglePointHandlerPrivate &dd, QQuickItem *parent) | |
bool | wantsPointerEvent (QPointerEvent *event) override |
It is the responsibility of this function to decide whether the event could be relevant at all to this handler, as a preliminary check. | |
void | handlePointerEventImpl (QPointerEvent *event) override |
This function can be overridden to implement whatever behavior a specific subclass is intended to have: \list. | |
virtual void | handleEventPoint (QPointerEvent *event, QEventPoint &point) |
QEventPoint & | currentPoint (QPointerEvent *ev) |
void | onGrabChanged (QQuickPointerHandler *grabber, QPointingDevice::GrabTransition transition, QPointerEvent *event, QEventPoint &point) override |
Notification that the grab has changed in some way which is relevant to this handler. | |
void | setIgnoreAdditionalPoints (bool v=true) |
void | moveTarget (QPointF pos, QEventPoint &point) |
void | setPointId (int id) |
Protected Member Functions inherited from QQuickPointerDeviceHandler | |
QQuickPointerDeviceHandler (QQuickPointerDeviceHandlerPrivate &dd, QQuickItem *parent=nullptr) | |
Protected Member Functions inherited from QQuickPointerHandler | |
QQuickPointerHandler (QQuickPointerHandlerPrivate &dd, QQuickItem *parent) | |
void | classBegin () override |
Overridden only because QQmlParserStatus requires it. | |
void | componentComplete () override |
Overridden from QQmlParserStatus to ensure that parentItem() sets its cursor if this handler's \l cursorShape property has been set. | |
bool | event (QEvent *) override |
QPointerEvent * | currentEvent () |
virtual bool | wantsEventPoint (const QPointerEvent *event, const QEventPoint &point) |
Returns true if the given point (as part of event) could be relevant at all to this handler, as a preliminary check. | |
void | setActive (bool active) |
virtual void | onTargetChanged (QQuickItem *oldTarget) |
virtual void | onActiveChanged () |
virtual bool | canGrab (QPointerEvent *event, const QEventPoint &point) |
Check whether it's OK to take an exclusive grab of the point. | |
virtual bool | approveGrabTransition (QPointerEvent *event, const QEventPoint &point, QObject *proposedGrabber) |
Check this handler's rules to see if \l proposedGrabber will be allowed to take the exclusive grab. | |
void | setPassiveGrab (QPointerEvent *event, const QEventPoint &point, bool grab=true) |
Acquire or give up a passive grab of the given point, according to the grab state. | |
bool | setExclusiveGrab (QPointerEvent *ev, const QEventPoint &point, bool grab=true) |
Acquire or give up the exclusive grab of the given point, according to the grab state, and subject to the rules: canGrab(), and the rule not to relinquish another handler's grab. | |
void | cancelAllGrabs (QPointerEvent *event, QEventPoint &point) |
Cancel any existing grab of the given point. | |
QPointF | eventPos (const QEventPoint &point) const |
bool | parentContains (const QEventPoint &point) const |
Returns true if margin() > 0 and point is within the margin beyond QQuickItem::boundingRect(), or else returns QQuickItem::contains() QEventPoint::position() effectively (because parentContains(scenePosition) calls QQuickItem::mapFromScene()). | |
bool | parentContains (const QPointF &scenePosition) const |
Returns true if scenePosition is within the margin() beyond QQuickItem::boundingRect() (if margin > 0), or parentItem() contains scenePosition according to QQuickItem::contains(). | |
Protected Member Functions inherited from QObject | |
QObject * | sender () const |
Returns a pointer to the object that sent the signal, if called in a slot activated by a signal; otherwise it returns \nullptr. | |
int | senderSignalIndex () const |
int | receivers (const char *signal) const |
Returns the number of receivers connected to the signal. | |
bool | isSignalConnected (const QMetaMethod &signal) const |
virtual void | timerEvent (QTimerEvent *event) |
This event handler can be reimplemented in a subclass to receive timer events for the object. | |
virtual void | childEvent (QChildEvent *event) |
This event handler can be reimplemented in a subclass to receive child events. | |
virtual void | customEvent (QEvent *event) |
This event handler can be reimplemented in a subclass to receive custom events. | |
virtual void | connectNotify (const QMetaMethod &signal) |
virtual void | disconnectNotify (const QMetaMethod &signal) |
QObject (QObjectPrivate &dd, QObject *parent=nullptr) | |
Properties | |
QQuickHandlerPoint | point |
Properties inherited from QQuickPointerDeviceHandler | |
QInputDevice::DeviceTypes | acceptedDevices |
QPointingDevice::PointerTypes | acceptedPointerTypes |
Qt::MouseButtons | acceptedButtons |
Qt::KeyboardModifiers | acceptedModifiers |
Properties inherited from QQuickPointerHandler | |
bool | enabled |
bool | active |
QQuickItem * | target |
QQuickItem * | parent |
GrabPermissions | grabPermissions |
qreal | margin |
int | dragThreshold |
Properties inherited from QObject | |
QString | objectName |
the name of this object | |
Additional Inherited Members | |
Public Types inherited from QQuickPointerHandler | |
enum | GrabPermission { TakeOverForbidden = 0x0 , CanTakeOverFromHandlersOfSameType = 0x01 , CanTakeOverFromHandlersOfDifferentType = 0x02 , CanTakeOverFromItems = 0x04 , CanTakeOverFromAnything = 0x0F , ApprovesTakeOverByHandlersOfSameType = 0x10 , ApprovesTakeOverByHandlersOfDifferentType = 0x20 , ApprovesTakeOverByItems = 0x40 , ApprovesCancellation = 0x80 , ApprovesTakeOverByAnything = 0xF0 } |
Public Slots inherited from QQuickPointerDeviceHandler | |
void | setAcceptedDevices (QInputDevice::DeviceTypes acceptedDevices) |
\qmlproperty flags PointerDeviceHandler::acceptedDevices | |
void | setAcceptedPointerTypes (QPointingDevice::PointerTypes acceptedPointerTypes) |
\qmlproperty flags PointerDeviceHandler::acceptedPointerTypes | |
void | setAcceptedButtons (Qt::MouseButtons buttons) |
void | setAcceptedModifiers (Qt::KeyboardModifiers acceptedModifiers) |
\qmlproperty flags PointerDeviceHandler::acceptedModifiers | |
Public Slots inherited from QObject | |
void | deleteLater () |
\threadsafe | |
Static Public Member Functions inherited from QObject | |
static QMetaObject::Connection | connect (const QObject *sender, const char *signal, const QObject *receiver, const char *member, Qt::ConnectionType=Qt::AutoConnection) |
\threadsafe | |
static QMetaObject::Connection | connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type=Qt::AutoConnection) |
template<typename Func1 , typename Func2 > | |
static QMetaObject::Connection | connect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const typename QtPrivate::ContextTypeForFunctor< Func2 >::ContextType *context, Func2 &&slot, Qt::ConnectionType type=Qt::AutoConnection) |
template<typename Func1 , typename Func2 > | |
static QMetaObject::Connection | connect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, Func2 &&slot) |
static bool | disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *member) |
\threadsafe | |
static bool | disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &member) |
static bool | disconnect (const QMetaObject::Connection &) |
Disconnect a connection. | |
template<typename Func1 , typename Func2 > | |
static bool | disconnect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const typename QtPrivate::FunctionPointer< Func2 >::Object *receiver, Func2 slot) |
template<typename Func1 > | |
static bool | disconnect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const QObject *receiver, void **zero) |
Protected Attributes inherited from QObject | |
QScopedPointer< QObjectData > | d_ptr |
Related Symbols inherited from QObject | |
template< class T > T | qobject_cast (const QObject *object) |
Returns the given object cast to type T if the object is of type T (or of a subclass); otherwise returns \nullptr. | |
template< typename T > T | qFindChildqFindChildren (const QObject *obj, const QString &name)() |
template< typename T > QList< T > | qFindChildrenqFindChildren (const QObject *obj, const QString &name)() |
QObjectList | |
\macro Q_CLASSINFO(Name, Value) | |
Definition at line 25 of file qquicksinglepointhandler_p.h.
|
explicit |
\qmltype SinglePointHandler \qmlabstract \preliminary \instantiates QQuickSinglePointHandler \inherits PointerDeviceHandler \inqmlmodule QtQuick
Abstract handler for single-point Pointer Events.
An intermediate class (not registered as a QML type) for the most common handlers: those which expect only a single point. wantsPointerEvent() will choose the first point which is inside the \l target item, and return true as long as the event contains that point. Override handleEventPoint() to implement a single-point handler.
Definition at line 26 of file qquicksinglepointhandler.cpp.
|
protected |
Definition at line 31 of file qquicksinglepointhandler.cpp.
|
protected |
|
protectedvirtual |
Reimplemented in QQuickHoverHandler, QQuickPointHandler, QQuickTapHandler, QQuickWheelHandler, QQuickTableViewHoverHandler, and QQuickTableViewResizeHandler.
Definition at line 118 of file qquicksinglepointhandler.cpp.
References QQuickPointerDeviceHandler::acceptedButtons, Qt::NoButton, point, QEventPoint::Released, and QQuickPointerHandler::setExclusiveGrab().
Referenced by QQuickPointHandler::handleEventPoint(), QQuickTapHandler::handleEventPoint(), QQuickWheelHandler::handleEventPoint(), and handlePointerEventImpl().
|
overrideprotectedvirtual |
This function can be overridden to implement whatever behavior a specific subclass is intended to have: \list.
true
. Reimplemented from QQuickPointerHandler.
Definition at line 107 of file qquicksinglepointhandler.cpp.
References currentPoint(), d, emit, handleEventPoint(), QQuickPointerHandler::handlePointerEventImpl(), pointChanged(), and Q_ASSERT.
|
protected |
Definition at line 169 of file qquicksinglepointhandler.cpp.
References d, QQuickItem::mapFromScene(), point, pos, QQuickHandlerPoint::scenePosition, QQuickItem::setPosition(), and QQuickPointerHandler::target.
|
overrideprotectedvirtual |
Notification that the grab has changed in some way which is relevant to this handler.
true
.The available cursor shapes are: \list
The default value is not set, which allows the \l {QQuickItem::cursor()}{cursor} of \l parent item to appear. This property can be reset to the same initial condition by setting it to undefined.
undefined
, if you read the value it will return Qt.ArrowCursor
.The grabber (subject) will be the Input Handler whose state is changing, or null if the state change regards an Item. The transition (verb) tells what happened. The point (object) is the \l eventPoint that was grabbed or ungrabbed. QQuickDeliveryAgent calls this function. The Input Handler must react in whatever way is appropriate, and must emit the relevant signals (for the benefit of QML code). A subclass is allowed to override this virtual function, but must always call its parent class's implementation in addition to (usually after) whatever custom behavior it implements.
Reimplemented from QQuickPointerHandler.
Reimplemented in QQuickTapHandler, and QQuickTableViewResizeHandler.
Definition at line 135 of file qquicksinglepointhandler.cpp.
References QPointingDevice::CancelGrabExclusive, QPointingDevice::CancelGrabPassive, d, QPointingDevice::GrabExclusive, QPointingDevice::GrabPassive, QQuickPointerHandler::onGrabChanged(), QPointingDevice::OverrideGrabPassive, point, QQuickHandlerPoint::sceneGrabPosition, QQuickPointerHandler::setActive(), QPointingDevice::UngrabExclusive, and QPointingDevice::UngrabPassive.
Referenced by QQuickTapHandler::onGrabChanged(), and QQuickTableViewResizeHandler::onGrabChanged().
QQuickHandlerPoint QQuickSinglePointHandler::point | ( | ) | const |
Definition at line 183 of file qquicksinglepointhandler.cpp.
References d.
|
signal |
|
protected |
Definition at line 163 of file qquicksinglepointhandler.cpp.
References d.
Referenced by QQuickPointHandler::QQuickPointHandler().
|
protected |
Definition at line 177 of file qquicksinglepointhandler.cpp.
References d.
Referenced by QQuickHoverHandler::wantsPointerEvent(), wantsPointerEvent(), and QQuickWheelHandler::wantsPointerEvent().
|
overrideprotectedvirtual |
It is the responsibility of this function to decide whether the event could be relevant at all to this handler, as a preliminary check.
Returns true
if this handler would like handlePointerEventImpl() to be called. If it returns false
, the handler will be deactivated: setActive(false)
will be called, and any remaining exclusive grab will be relinquished, as a fail-safe.
If you override this function, you should call the immediate parent class implementation (and return false
if it returns false
); that in turn calls its parent class implementation, and so on. QQuickSinglePointHandler::wantsPointerEvent() and QQuickMultiPointHandler::wantsPointerEvent() call wantsEventPoint(), which is also virtual. You usually can get the behavior you want by subclassing the appropriate handler type, overriding QQuickSinglePointHandler::handleEventPoint() or handlePointerEventImpl(), and perhaps overriding wantsEventPoint() if needed.
Reimplemented from QQuickPointerDeviceHandler.
Reimplemented in QQuickWheelHandler.
Definition at line 36 of file qquicksinglepointhandler.cpp.
References QQuickPointerHandler::cancelAllGrabs(), d, Qt::hex(), i, QQuickHandlerPoint::id, point, qCDebug, qCWarning, setPointId(), QEvent::TouchBegin, QQuickPointerHandler::wantsEventPoint(), and QQuickPointerDeviceHandler::wantsPointerEvent().
|
read |
Definition at line 28 of file qquicksinglepointhandler_p.h.
Referenced by QQuickSelectionRectanglePrivate::QQuickSelectionRectanglePrivate(), QQuickHoverHandler::handleEventPoint(), handleEventPoint(), QQuickPointHandler::handleEventPoint(), QQuickTapHandler::handleEventPoint(), QQuickWheelHandler::handleEventPoint(), QQuickTableViewHoverHandler::handleEventPoint(), QQuickTableViewResizeHandler::handleEventPoint(), moveTarget(), QQuickTapHandler::onGrabChanged(), QQuickTableViewResizeHandler::onGrabChanged(), onGrabChanged(), QQuickPointHandler::translation(), QQuickTableViewResizeHandler::updateDrag(), QQuickTableViewResizeHandler::updateState(), QQuickPointHandler::wantsEventPoint(), QQuickTapHandler::wantsEventPoint(), QQuickTableViewResizeHandler::wantsEventPoint(), QQuickTableViewTapHandler::wantsEventPoint(), QQuickHoverHandler::wantsPointerEvent(), wantsPointerEvent(), and QQuickWheelHandler::wantsPointerEvent().