From f1e823e2900f3cc3ef039432fb0f3535fc824bac Mon Sep 17 00:00:00 2001 From: Andras Becsi Date: Fri, 27 Jan 2012 12:05:00 +0100 Subject: [PATCH] Flickable should be controllable programatically Add flick(xVelocity, yVelocity) and cancelFlick() functions. The functionality provided by these functions is already covered by current unit tests. Task-number: https://bugreports.qt.nokia.com/browse/QTBUG-23865 Change-Id: Ie284232bfbd98ae7c70ca060760fb016b4a45ee1 Reviewed-by: Martin Jones --- src/quick/items/qquickflickable.cpp | 19 +++++++++++++++++++ src/quick/items/qquickflickable_p.h | 3 ++- 2 files changed, 21 insertions(+), 1 deletion(-) diff --git a/src/quick/items/qquickflickable.cpp b/src/quick/items/qquickflickable.cpp index f4a9f6d..f581909 100644 --- a/src/quick/items/qquickflickable.cpp +++ b/src/quick/items/qquickflickable.cpp @@ -1274,6 +1274,25 @@ void QQuickFlickable::geometryChanged(const QRectF &newGeometry, d->updateBeginningEnd(); } +/*! + \qmlmethod QtQuick2::Flickable::flick(qreal xVelocity, qreal yVelocity) + + Flicks the content with \a xVelocity horizontally and \a yVelocity vertically in pixels/sec. +*/ + +void QQuickFlickable::flick(qreal xVelocity, qreal yVelocity) +{ + Q_D(QQuickFlickable); + d->flickX(xVelocity); + d->flickY(yVelocity); +} + +/*! + \qmlmethod QtQuick2::Flickable::cancelFlick() + + Cancels the current flick animation. +*/ + void QQuickFlickable::cancelFlick() { Q_D(QQuickFlickable); diff --git a/src/quick/items/qquickflickable_p.h b/src/quick/items/qquickflickable_p.h index 3d527e9..7d6dc59 100644 --- a/src/quick/items/qquickflickable_p.h +++ b/src/quick/items/qquickflickable_p.h @@ -184,6 +184,8 @@ public: Q_INVOKABLE void resizeContent(qreal w, qreal h, QPointF center); Q_INVOKABLE void returnToBounds(); + Q_INVOKABLE void flick(qreal xVelocity, qreal yVelocity); + Q_INVOKABLE void cancelFlick(); Q_SIGNALS: void contentWidthChanged(); @@ -254,7 +256,6 @@ protected: bool xflick() const; bool yflick() const; - void cancelFlick(); protected: QQuickFlickable(QQuickFlickablePrivate &dd, QQuickItem *parent); -- 2.7.4