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>.
Loading...
Searching...
No Matches
QQuickMultiPointHandler Class Reference

#include <qquickmultipointhandler_p.h>

+ Inheritance diagram for QQuickMultiPointHandler:
+ Collaboration diagram for QQuickMultiPointHandler:

Classes

struct  PointData
 

Signals

void minimumPointCountChanged ()
 
void maximumPointCountChanged ()
 
void centroidChanged ()
 
- 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

 QQuickMultiPointHandler (QQuickItem *parent=nullptr, int minimumPointCount=2, int maximumPointCount=-1)
 \qmltype MultiPointHandler
 
int minimumPointCount () const
 \qmlproperty int MultiPointHandler::minimumPointCount
 
void setMinimumPointCount (int c)
 
int maximumPointCount () const
 \qmlproperty int MultiPointHandler::maximumPointCount
 
void setMaximumPointCount (int maximumPointCount)
 
const QQuickHandlerPointcentroid () const
 \readonly \qmlproperty QtQuick::handlerPoint QtQuick::MultiPointHandler::centroid
 
- 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
 
QQuickItemtarget () const
 \qmlproperty Item QtQuick::PointerHandler::target
 
void setTarget (QQuickItem *target)
 
QQuickItemparentItem () 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< QStringbindableObjectName ()
 
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).
 
QThreadthread () 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 >
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 >
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 QObjectListchildren () 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< QByteArraydynamicPropertyNames () const
 
QBindingStoragebindingStorage ()
 
const QBindingStoragebindingStorage () const
 
QObjectparent () 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

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.
 
void onActiveChanged () override
 
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.
 
QList< QQuickHandlerPoint > & currentPoints ()
 
QQuickHandlerPointmutableCentroid ()
 Returns a modifiable reference to the point that will be returned by the \l centroid property.
 
bool hasCurrentPoints (QPointerEvent *event)
 
QVector< QEventPointeligiblePoints (QPointerEvent *event)
 
qreal averageTouchPointDistance (const QPointF &ref)
 
qreal averageStartingDistance (const QPointF &ref)
 
qreal averageTouchPointAngle (const QPointF &ref)
 
qreal averageStartingAngle (const QPointF &ref)
 
QVector< PointDataangles (const QPointF &ref) const
 
void acceptPoints (const QVector< QEventPoint > &points)
 
bool grabPoints (QPointerEvent *event, const QVector< QEventPoint > &points)
 
void moveTarget (QPointF pos)
 
- Protected Member Functions inherited from QQuickPointerDeviceHandler
 QQuickPointerDeviceHandler (QQuickPointerDeviceHandlerPrivate &dd, QQuickItem *parent=nullptr)
 
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.
 
- 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
 
QPointerEventcurrentEvent ()
 
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 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
QObjectsender () 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)
 

Static Protected Member Functions

static qreal averageAngleDelta (const QVector< PointData > &old, const QVector< PointData > &newAngles)
 

Properties

int minimumPointCount
 
int maximumPointCount
 
QQuickHandlerPoint centroid
 
- Properties inherited from QQuickPointerDeviceHandler
QInputDevice::DeviceTypes acceptedDevices
 
QPointingDevice::PointerTypes acceptedPointerTypes
 
Qt::MouseButtons acceptedButtons
 
Qt::KeyboardModifiers acceptedModifiers
 
- Properties inherited from QQuickPointerHandler
bool enabled
 
bool active
 
QQuickItemtarget
 
QQuickItemparent
 
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< QObjectDatad_ptr
 

Detailed Description

Definition at line 28 of file qquickmultipointhandler_p.h.

Constructor & Destructor Documentation

◆ QQuickMultiPointHandler()

QT_BEGIN_NAMESPACE QQuickMultiPointHandler::QQuickMultiPointHandler ( QQuickItem * parent = nullptr,
int minimumPointCount = 2,
int maximumPointCount = -1 )
explicit

\qmltype MultiPointHandler

Since
5.10 \preliminary \instantiates QQuickMultiPointHandler \inherits PointerDeviceHandler \inqmlmodule QtQuick

Abstract handler for multi-point Pointer Events.

An intermediate class (not registered as a QML type) for any type of handler which requires and acts upon a specific number of multiple touchpoints.

Definition at line 26 of file qquickmultipointhandler.cpp.

Member Function Documentation

◆ acceptPoints()

void QQuickMultiPointHandler::acceptPoints ( const QVector< QEventPoint > & points)
protected

Definition at line 345 of file qquickmultipointhandler.cpp.

Referenced by QQuickPinchHandler::handlePointerEventImpl().

+ Here is the caller graph for this function:

◆ angles()

QVector< QQuickMultiPointHandler::PointData > QQuickMultiPointHandler::angles ( const QPointF & ref) const
protected

Definition at line 301 of file qquickmultipointhandler.cpp.

References QLineF::angle(), angles(), and d.

Referenced by angles(), QQuickPinchHandler::handlePointerEventImpl(), and QQuickPinchHandler::onActiveChanged().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ averageAngleDelta()

qreal QQuickMultiPointHandler::averageAngleDelta ( const QVector< PointData > & old,
const QVector< PointData > & newAngles )
staticprotected

Definition at line 313 of file qquickmultipointhandler.cpp.

References it.

Referenced by QQuickPinchHandler::handlePointerEventImpl().

+ Here is the caller graph for this function:

◆ averageStartingAngle()

qreal QQuickMultiPointHandler::averageStartingAngle ( const QPointF & ref)
protected

◆ averageStartingDistance()

qreal QQuickMultiPointHandler::averageStartingDistance ( const QPointF & ref)
protected

Definition at line 289 of file qquickmultipointhandler.cpp.

References d, Q_UNLIKELY, and ret.

◆ averageTouchPointAngle()

qreal QQuickMultiPointHandler::averageTouchPointAngle ( const QPointF & ref)
protected

◆ averageTouchPointDistance()

qreal QQuickMultiPointHandler::averageTouchPointDistance ( const QPointF & ref)
protected

Definition at line 278 of file qquickmultipointhandler.cpp.

References d, Q_UNLIKELY, and ret.

Referenced by QQuickPinchHandler::handlePointerEventImpl(), and QQuickPinchHandler::onActiveChanged().

+ Here is the caller graph for this function:

◆ centroid()

const QQuickHandlerPoint & QQuickMultiPointHandler::centroid ( ) const

\readonly \qmlproperty QtQuick::handlerPoint QtQuick::MultiPointHandler::centroid

A point exactly in the middle of the currently-pressed touch points. If only one point is pressed, it's the same as that point. A handler that has a \l target will normally transform it relative to this point.

Definition at line 238 of file qquickmultipointhandler.cpp.

References d.

◆ centroidChanged

◆ currentPoints()

QVector< QQuickHandlerPoint > & QQuickMultiPointHandler::currentPoints ( )
protected

Definition at line 255 of file qquickmultipointhandler.cpp.

References d.

Referenced by QQuickDragHandler::handlePointerEventImpl(), and QQuickPinchHandler::handlePointerEventImpl().

+ Here is the caller graph for this function:

◆ eligiblePoints()

QVector< QEventPoint > QQuickMultiPointHandler::eligiblePoints ( QPointerEvent * event)
protected

Definition at line 145 of file qquickmultipointhandler.cpp.

References QQuickPointerHandler::canGrab(), i, QQuickDeliveryAgentPrivate::isMouseEvent(), Qt::NoButton, QEventPoint::Released, ret, and QQuickPointerHandler::wantsEventPoint().

Referenced by wantsPointerEvent().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ grabPoints()

bool QQuickMultiPointHandler::grabPoints ( QPointerEvent * event,
const QVector< QEventPoint > & points )
protected

Definition at line 353 of file qquickmultipointhandler.cpp.

References QQuickPointerHandler::canGrab(), and QQuickPointerHandler::setExclusiveGrab().

Referenced by QQuickDragHandler::handlePointerEventImpl(), and QQuickPinchHandler::handlePointerEventImpl().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ handlePointerEventImpl()

void QQuickMultiPointHandler::handlePointerEventImpl ( QPointerEvent * event)
overrideprotectedvirtual

This function can be overridden to implement whatever behavior a specific subclass is intended to have: \list.

Reimplemented from QQuickPointerHandler.

Reimplemented in QQuickPinchHandler.

Definition at line 80 of file qquickmultipointhandler.cpp.

References centroidChanged(), d, emit, and QQuickPointerHandler::handlePointerEventImpl().

Referenced by QQuickDragHandler::handlePointerEventImpl(), and QQuickPinchHandler::handlePointerEventImpl().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ hasCurrentPoints()

bool QQuickMultiPointHandler::hasCurrentPoints ( QPointerEvent * event)
protected

Definition at line 261 of file qquickmultipointhandler.cpp.

References d, QEventPoint::Released, and QEventPoint::state.

Referenced by wantsPointerEvent().

+ Here is the caller graph for this function:

◆ maximumPointCount()

int QQuickMultiPointHandler::maximumPointCount ( ) const

\qmlproperty int MultiPointHandler::maximumPointCount

The maximum number of touchpoints this handler can utilize.

If a larger number of touchpoints are in contact with the \l {PointerHandler::parent}{parent}, the required number of points will be chosen in the order that they are pressed, and the remaining points will be ignored.

Any ignored points are eligible to activate other Input Handlers that have different constraints, on the same Item or on other Items.

The default value is the same as \l minimumPointCount.

Definition at line 214 of file qquickmultipointhandler.cpp.

References d.

◆ maximumPointCountChanged

void QQuickMultiPointHandler::maximumPointCountChanged ( )
signal

Referenced by setMaximumPointCount(), and setMinimumPointCount().

+ Here is the caller graph for this function:

◆ minimumPointCount()

int QQuickMultiPointHandler::minimumPointCount ( ) const

\qmlproperty int MultiPointHandler::minimumPointCount

The minimum number of touchpoints required to activate this handler.

If a smaller number of touchpoints are in contact with the \l {PointerHandler::parent}{parent}, they will be ignored.

Any ignored points are eligible to activate other Input Handlers that have different constraints, on the same Item or on other Items.

The default value is 2.

Definition at line 181 of file qquickmultipointhandler.cpp.

References d.

◆ minimumPointCountChanged

void QQuickMultiPointHandler::minimumPointCountChanged ( )
signal

Referenced by setMinimumPointCount().

+ Here is the caller graph for this function:

◆ moveTarget()

void QQuickMultiPointHandler::moveTarget ( QPointF pos)
protected

Definition at line 371 of file qquickmultipointhandler.cpp.

References d, pos, qWarning, and QQuickPointerHandler::target.

Referenced by QQuickDragHandler::handlePointerEventImpl().

+ Here is the caller graph for this function:

◆ mutableCentroid()

QQuickHandlerPoint & QQuickMultiPointHandler::mutableCentroid ( )
protected

Returns a modifiable reference to the point that will be returned by the \l centroid property.

If you modify it, you are responsible to emit \l centroidChanged.

Definition at line 249 of file qquickmultipointhandler.cpp.

References d.

Referenced by QQuickPinchHandler::handlePointerEventImpl().

+ Here is the caller graph for this function:

◆ onActiveChanged()

void QQuickMultiPointHandler::onActiveChanged ( )
overrideprotectedvirtual

Reimplemented from QQuickPointerHandler.

Reimplemented in QQuickPinchHandler.

Definition at line 97 of file qquickmultipointhandler.cpp.

References QQuickPointerHandler::active, d, Qt::NoButton, and Qt::NoModifier.

Referenced by QQuickDragHandler::onActiveChanged(), and QQuickPinchHandler::onActiveChanged().

+ Here is the caller graph for this function:

◆ onGrabChanged()

void QQuickMultiPointHandler::onGrabChanged ( QQuickPointerHandler * grabber,
QPointingDevice::GrabTransition transition,
QPointerEvent * event,
QEventPoint & point )
overrideprotectedvirtual

Notification that the grab has changed in some way which is relevant to this handler.

Since
5.15 \qmlproperty Qt::CursorShape PointerHandler::cursorShape This property holds the cursor shape that will appear whenever the mouse is hovering over the \l parent item while \l active is 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.

Note
When this property has not been set, or has been set to undefined, if you read the value it will return Qt.ArrowCursor.
See also
Qt::CursorShape, QQuickItem::cursor(), HoverHandler::cursorShape

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.

Definition at line 113 of file qquickmultipointhandler.cpp.

References QPointingDevice::CancelGrabExclusive, QPointingDevice::CancelGrabPassive, d, QPointingDevice::GrabExclusive, QPointingDevice::GrabPassive, QEventPoint::id, QQuickPointerHandler::onGrabChanged(), QPointingDevice::OverrideGrabPassive, QEventPoint::scenePosition, QPointingDevice::UngrabExclusive, and QPointingDevice::UngrabPassive.

Referenced by QQuickDragHandler::onGrabChanged().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setMaximumPointCount()

void QQuickMultiPointHandler::setMaximumPointCount ( int maximumPointCount)

Definition at line 220 of file qquickmultipointhandler.cpp.

References d, emit, maximumPointCount, and maximumPointCountChanged().

+ Here is the call graph for this function:

◆ setMinimumPointCount()

void QQuickMultiPointHandler::setMinimumPointCount ( int c)

Definition at line 187 of file qquickmultipointhandler.cpp.

References d, emit, maximumPointCountChanged(), and minimumPointCountChanged().

+ Here is the call graph for this function:

◆ wantsPointerEvent()

bool QQuickMultiPointHandler::wantsPointerEvent ( QPointerEvent * event)
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.

See also
wantsEventPoint(), QQuickPointerDeviceHandler::wantsPointerEvent(), QQuickMultiPointHandler::wantsPointerEvent(), QQuickSinglePointHandler::wantsPointerEvent()

Reimplemented from QQuickPointerHandler.

Reimplemented in QQuickPinchHandler.

Definition at line 31 of file qquickmultipointhandler.cpp.

References QQuickPointerHandler::active, centroidChanged(), d, eligiblePoints(), emit, hasCurrentPoints(), i, maximumPointCount, minimumPointCount, QEvent::NativeGesture, QQuickPointerHandler::parentItem(), QEventPoint::Released, ret, QQuickPointerHandler::setActive(), QQuickPointerDeviceHandler::wantsPointerEvent(), and QEvent::Wheel.

Referenced by QQuickDragHandler::handlePointerEventImpl(), QQuickDragHandler::wantsPointerEvent(), and QQuickPinchHandler::wantsPointerEvent().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Property Documentation

◆ centroid

◆ maximumPointCount

int QQuickMultiPointHandler::maximumPointCount
readwrite

◆ minimumPointCount

int QQuickMultiPointHandler::minimumPointCount
readwrite

The documentation for this class was generated from the following files: