diff options
author | Shawn Rutledge <shawn.rutledge@qt.io> | 2018-03-22 13:53:36 +0100 |
---|---|---|
committer | Shawn Rutledge <shawn.rutledge@qt.io> | 2018-05-30 19:25:12 +0000 |
commit | e2fee3b9c4bdb1e4ba4834e1a30a250a190f73d2 (patch) | |
tree | 4c77d4b971d155a03606a89aed5167a40d76af56 /src/quick/handlers/qquickpointerdevicehandler.cpp | |
parent | b30d628c24ddb43cd7fe96e19459f4af24a9007b (diff) |
Split QQuickPointerDeviceHandler and QQuickPointerDeviceHandlerPrivate
It will be supported C++ API eventually.
Change-Id: Iebb31c8dbba62bb13c6cf93c27df90aa7d2909fe
Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
Diffstat (limited to 'src/quick/handlers/qquickpointerdevicehandler.cpp')
-rw-r--r-- | src/quick/handlers/qquickpointerdevicehandler.cpp | 58 |
1 files changed, 41 insertions, 17 deletions
diff --git a/src/quick/handlers/qquickpointerdevicehandler.cpp b/src/quick/handlers/qquickpointerdevicehandler.cpp index 06831613b6..add6513c1a 100644 --- a/src/quick/handlers/qquickpointerdevicehandler.cpp +++ b/src/quick/handlers/qquickpointerdevicehandler.cpp @@ -37,7 +37,7 @@ ** ****************************************************************************/ -#include "qquickpointerdevicehandler_p.h" +#include "qquickpointerdevicehandler_p_p.h" #include <private/qquickitem_p.h> #include <QMouseEvent> #include <QDebug> @@ -59,10 +59,12 @@ QT_BEGIN_NAMESPACE allow filtering based on device type, pointer type, or keyboard modifiers. */ QQuickPointerDeviceHandler::QQuickPointerDeviceHandler(QObject *parent) - : QQuickPointerHandler(parent) - , m_acceptedDevices(QQuickPointerDevice::AllDevices) - , m_acceptedPointerTypes(QQuickPointerDevice::AllPointerTypes) - , m_acceptedModifiers(Qt::KeyboardModifierMask) + : QQuickPointerHandler(*(new QQuickPointerDeviceHandlerPrivate), parent) +{ +} + +QQuickPointerDeviceHandler::QQuickPointerDeviceHandler(QQuickPointerDeviceHandlerPrivate &dd, QObject *parent) + : QQuickPointerHandler(dd, parent) { } @@ -70,6 +72,24 @@ QQuickPointerDeviceHandler::~QQuickPointerDeviceHandler() { } +QQuickPointerDevice::DeviceTypes QQuickPointerDeviceHandler::acceptedDevices() const +{ + Q_D(const QQuickPointerDeviceHandler); + return d->acceptedDevices; +} + +QQuickPointerDevice::PointerTypes QQuickPointerDeviceHandler::acceptedPointerTypes() const +{ + Q_D(const QQuickPointerDeviceHandler); + return d->acceptedPointerTypes; +} + +Qt::KeyboardModifiers QQuickPointerDeviceHandler::acceptedModifiers() const +{ + Q_D(const QQuickPointerDeviceHandler); + return d->acceptedModifiers; +} + /*! \qmlproperty int PointerDeviceHandler::acceptedDevices @@ -98,10 +118,11 @@ QQuickPointerDeviceHandler::~QQuickPointerDeviceHandler() */ void QQuickPointerDeviceHandler::setAcceptedDevices(QQuickPointerDevice::DeviceTypes acceptedDevices) { - if (m_acceptedDevices == acceptedDevices) + Q_D(QQuickPointerDeviceHandler); + if (d->acceptedDevices == acceptedDevices) return; - m_acceptedDevices = acceptedDevices; + d->acceptedDevices = acceptedDevices; emit acceptedDevicesChanged(); } @@ -136,10 +157,11 @@ void QQuickPointerDeviceHandler::setAcceptedDevices(QQuickPointerDevice::DeviceT */ void QQuickPointerDeviceHandler::setAcceptedPointerTypes(QQuickPointerDevice::PointerTypes acceptedPointerTypes) { - if (m_acceptedPointerTypes == acceptedPointerTypes) + Q_D(QQuickPointerDeviceHandler); + if (d->acceptedPointerTypes == acceptedPointerTypes) return; - m_acceptedPointerTypes = acceptedPointerTypes; + d->acceptedPointerTypes = acceptedPointerTypes; emit acceptedPointerTypesChanged(); } @@ -171,26 +193,28 @@ void QQuickPointerDeviceHandler::setAcceptedPointerTypes(QQuickPointerDevice::Po */ void QQuickPointerDeviceHandler::setAcceptedModifiers(Qt::KeyboardModifiers acceptedModifiers) { - if (m_acceptedModifiers == acceptedModifiers) + Q_D(QQuickPointerDeviceHandler); + if (d->acceptedModifiers == acceptedModifiers) return; - m_acceptedModifiers = acceptedModifiers; + d->acceptedModifiers = acceptedModifiers; emit acceptedModifiersChanged(); } bool QQuickPointerDeviceHandler::wantsPointerEvent(QQuickPointerEvent *event) { + Q_D(QQuickPointerDeviceHandler); if (!QQuickPointerHandler::wantsPointerEvent(event)) return false; qCDebug(lcPointerHandlerDispatch) << objectName() - << "checking device type" << m_acceptedDevices - << "pointer type" << m_acceptedPointerTypes - << "modifiers" << m_acceptedModifiers; - if ((event->device()->type() & m_acceptedDevices) == 0) + << "checking device type" << d->acceptedDevices + << "pointer type" << d->acceptedPointerTypes + << "modifiers" << d->acceptedModifiers; + if ((event->device()->type() & d->acceptedDevices) == 0) return false; - if ((event->device()->pointerType() & m_acceptedPointerTypes) == 0) + if ((event->device()->pointerType() & d->acceptedPointerTypes) == 0) return false; - if (m_acceptedModifiers != Qt::KeyboardModifierMask && event->modifiers() != m_acceptedModifiers) + if (d->acceptedModifiers != Qt::KeyboardModifierMask && event->modifiers() != d->acceptedModifiers) return false; return true; } |