aboutsummaryrefslogtreecommitdiffstats
path: root/src/quicktemplates2/qquickdial.cpp
diff options
context:
space:
mode:
authorJ-P Nurmi <jpnurmi@qt.io>2017-04-19 17:30:08 +0200
committerJ-P Nurmi <jpnurmi@qt.io>2017-04-20 09:47:27 +0000
commit9ba2c26a54b8180a822ab23b85fa2967bfa05683 (patch)
tree50510177339046269d1b799ff8a87a8304ee0f74 /src/quicktemplates2/qquickdial.cpp
parent508df25faab2adb1565b2ac8a92a0cf768add69f (diff)
Override QQuickControlPrivate::handleXxx()
Change-Id: I5c5be24142a758637e18df24b43847a8c6079346 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Diffstat (limited to 'src/quicktemplates2/qquickdial.cpp')
-rw-r--r--src/quicktemplates2/qquickdial.cpp89
1 files changed, 27 insertions, 62 deletions
diff --git a/src/quicktemplates2/qquickdial.cpp b/src/quicktemplates2/qquickdial.cpp
index 285dda49..98ca8186 100644
--- a/src/quicktemplates2/qquickdial.cpp
+++ b/src/quicktemplates2/qquickdial.cpp
@@ -117,10 +117,10 @@ public:
void updatePosition();
bool isLargeChange(const QPointF &eventPos, qreal proposedPosition) const;
- void handlePress(const QPointF &point);
- void handleMove(const QPointF &point);
- void handleRelease(const QPointF &point);
- void handleUngrab();
+ void handlePress(const QPointF &point) override;
+ void handleMove(const QPointF &point) override;
+ void handleRelease(const QPointF &point) override;
+ void handleUngrab() override;
qreal from;
qreal to;
@@ -198,6 +198,7 @@ bool QQuickDialPrivate::isLargeChange(const QPointF &eventPos, qreal proposedPos
void QQuickDialPrivate::handlePress(const QPointF &point)
{
Q_Q(QQuickDial);
+ QQuickControlPrivate::handlePress(point);
pressPoint = point;
q->setPressed(true);
}
@@ -205,6 +206,7 @@ void QQuickDialPrivate::handlePress(const QPointF &point)
void QQuickDialPrivate::handleMove(const QPointF &point)
{
Q_Q(QQuickDial);
+ QQuickControlPrivate::handleMove(point);
const qreal oldPos = position;
qreal pos = positionAt(point);
if (snapMode == QQuickDial::SnapAlways)
@@ -223,6 +225,7 @@ void QQuickDialPrivate::handleMove(const QPointF &point)
void QQuickDialPrivate::handleRelease(const QPointF &point)
{
Q_Q(QQuickDial);
+ QQuickControlPrivate::handleRelease(point);
if (q->keepMouseGrab() || q->keepTouchGrab()) {
const qreal oldPos = position;
qreal pos = positionAt(point);
@@ -245,6 +248,7 @@ void QQuickDialPrivate::handleRelease(const QPointF &point)
void QQuickDialPrivate::handleUngrab()
{
Q_Q(QQuickDial);
+ QQuickControlPrivate::handleUngrab();
pressPoint = QPointF();
q->setPressed(false);
}
@@ -644,14 +648,12 @@ void QQuickDial::mousePressEvent(QMouseEvent *event)
{
Q_D(QQuickDial);
QQuickControl::mousePressEvent(event);
- d->handlePress(event->localPos());
d->handleMove(event->localPos());
}
void QQuickDial::mouseMoveEvent(QMouseEvent *event)
{
Q_D(QQuickDial);
- QQuickControl::mouseMoveEvent(event);
if (!keepMouseGrab()) {
bool overXDragThreshold = QQuickWindowPrivate::dragOverThreshold(event->localPos().x() - d->pressPoint.x(), Qt::XAxis, event);
setKeepMouseGrab(overXDragThreshold);
@@ -661,81 +663,44 @@ void QQuickDial::mouseMoveEvent(QMouseEvent *event)
setKeepMouseGrab(overYDragThreshold);
}
}
- d->handleMove(event->localPos());
-}
-
-void QQuickDial::mouseReleaseEvent(QMouseEvent *event)
-{
- Q_D(QQuickDial);
- QQuickControl::mouseReleaseEvent(event);
- d->handleRelease(event->localPos());
-}
-
-void QQuickDial::mouseUngrabEvent()
-{
- Q_D(QQuickDial);
- QQuickControl::mouseUngrabEvent();
- d->handleUngrab();
+ QQuickControl::mouseMoveEvent(event);
}
void QQuickDial::touchEvent(QTouchEvent *event)
{
Q_D(QQuickDial);
switch (event->type()) {
- case QEvent::TouchBegin:
- if (d->touchId == -1) {
- const QTouchEvent::TouchPoint point = event->touchPoints().first();
- d->touchId = point.id();
- d->handlePress(point.pos());
- } else {
- event->ignore();
- }
- break;
-
case QEvent::TouchUpdate:
for (const QTouchEvent::TouchPoint &point : event->touchPoints()) {
- if (point.id() != d->touchId)
+ if (!d->acceptTouch(point))
continue;
- if (!keepTouchGrab()) {
- bool overXDragThreshold = QQuickWindowPrivate::dragOverThreshold(point.pos().x() - d->pressPoint.x(), Qt::XAxis, &point);
- setKeepTouchGrab(overXDragThreshold);
+ switch (point.state()) {
+ case Qt::TouchPointMoved:
+ if (!keepTouchGrab()) {
+ bool overXDragThreshold = QQuickWindowPrivate::dragOverThreshold(point.pos().x() - d->pressPoint.x(), Qt::XAxis, &point);
+ setKeepTouchGrab(overXDragThreshold);
- if (!overXDragThreshold) {
- bool overYDragThreshold = QQuickWindowPrivate::dragOverThreshold(point.pos().y() - d->pressPoint.y(), Qt::YAxis, &point);
- setKeepTouchGrab(overYDragThreshold);
+ if (!overXDragThreshold) {
+ bool overYDragThreshold = QQuickWindowPrivate::dragOverThreshold(point.pos().y() - d->pressPoint.y(), Qt::YAxis, &point);
+ setKeepTouchGrab(overYDragThreshold);
+ }
}
- }
- if (keepTouchGrab())
- d->handleMove(point.pos());
- }
- break;
+ if (keepTouchGrab())
+ d->handleMove(point.pos());
+ break;
- case QEvent::TouchEnd:
- for (const QTouchEvent::TouchPoint &point : event->touchPoints()) {
- if (point.id() != d->touchId)
- continue;
-
- d->handleRelease(point.pos());
+ default:
+ QQuickControl::touchEvent(event);
+ break;
+ }
}
break;
- case QEvent::TouchCancel:
- d->handleUngrab();
- break;
-
default:
+ QQuickControl::touchEvent(event);
break;
}
-
- QQuickControl::touchEvent(event);
-}
-
-void QQuickDial::touchUngrabEvent()
-{
- Q_D(QQuickDial);
- QQuickControl::touchUngrabEvent();
- d->handleUngrab();
}
#if QT_CONFIG(wheelevent)