aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/quick/handlers/qquickdraghandler.cpp11
-rw-r--r--src/quick/handlers/qquickdraghandler_p.h8
-rw-r--r--tests/auto/quick/pointerhandlers/qquickdraghandler/tst_qquickdraghandler.cpp2
3 files changed, 14 insertions, 7 deletions
diff --git a/src/quick/handlers/qquickdraghandler.cpp b/src/quick/handlers/qquickdraghandler.cpp
index 840459ba3e..5e7b6a4962 100644
--- a/src/quick/handlers/qquickdraghandler.cpp
+++ b/src/quick/handlers/qquickdraghandler.cpp
@@ -103,7 +103,7 @@ void QQuickDragHandler::handleEventPoint(QQuickEventPoint *point)
if (!m_yAxis.enabled())
delta.setY(0);
if (active()) {
- setTranslation(delta);
+ setTranslation(QVector2D(delta));
if (target() && target()->parentItem()) {
QPointF pos = target()->parentItem()->mapFromScene(m_targetStartPos + delta);
enforceAxisConstraints(&pos);
@@ -164,7 +164,7 @@ void QQuickDragHandler::initializeTargetStartPos(QQuickEventPoint *point)
}
}
-void QQuickDragHandler::setTranslation(const QPointF &trans)
+void QQuickDragHandler::setTranslation(const QVector2D &trans)
{
if (trans == m_translation) // fuzzy compare?
return;
@@ -207,4 +207,11 @@ void QQuickDragAxis::setEnabled(bool enabled)
emit enabledChanged();
}
+/*!
+ \readonly
+ \qmlproperty QVector2D QtQuick::DragHandler::translation
+
+ The translation since the gesture began.
+*/
+
QT_END_NAMESPACE
diff --git a/src/quick/handlers/qquickdraghandler_p.h b/src/quick/handlers/qquickdraghandler_p.h
index b28fb630b8..d10084c654 100644
--- a/src/quick/handlers/qquickdraghandler_p.h
+++ b/src/quick/handlers/qquickdraghandler_p.h
@@ -90,7 +90,7 @@ class Q_AUTOTEST_EXPORT QQuickDragHandler : public QQuickSinglePointHandler
Q_OBJECT
Q_PROPERTY(QQuickDragAxis * xAxis READ xAxis CONSTANT)
Q_PROPERTY(QQuickDragAxis * yAxis READ yAxis CONSTANT)
- Q_PROPERTY(QPointF translation READ translation NOTIFY translationChanged)
+ Q_PROPERTY(QVector2D translation READ translation NOTIFY translationChanged)
public:
explicit QQuickDragHandler(QObject *parent = 0);
@@ -101,8 +101,8 @@ public:
QQuickDragAxis *xAxis() { return &m_xAxis; }
QQuickDragAxis *yAxis() { return &m_yAxis; }
- QPointF translation() const { return m_translation; }
- void setTranslation(const QPointF &trans);
+ QVector2D translation() const { return m_translation; }
+ void setTranslation(const QVector2D &trans);
Q_INVOKABLE void enforceConstraints();
@@ -122,7 +122,7 @@ private:
private:
QPointF m_targetStartPos;
- QPointF m_translation;
+ QVector2D m_translation;
QQuickDragAxis m_xAxis;
QQuickDragAxis m_yAxis;
diff --git a/tests/auto/quick/pointerhandlers/qquickdraghandler/tst_qquickdraghandler.cpp b/tests/auto/quick/pointerhandlers/qquickdraghandler/tst_qquickdraghandler.cpp
index 5b59911965..cd60be6a4c 100644
--- a/tests/auto/quick/pointerhandlers/qquickdraghandler/tst_qquickdraghandler.cpp
+++ b/tests/auto/quick/pointerhandlers/qquickdraghandler/tst_qquickdraghandler.cpp
@@ -97,7 +97,7 @@ void tst_DragHandler::defaultPropertyValues()
QVERIFY(dragHandler);
QCOMPARE(dragHandler->acceptedButtons(), Qt::LeftButton);
- QCOMPARE(dragHandler->translation(), QPointF());
+ QCOMPARE(dragHandler->translation(), QVector2D());
QCOMPARE(dragHandler->point().position(), QPointF());
QCOMPARE(dragHandler->point().scenePosition(), QPointF());
QCOMPARE(dragHandler->point().pressPosition(), QPointF());