summaryrefslogtreecommitdiffstats
path: root/src/declarative/graphicsitems/qmlgraphicsflickable.cpp
diff options
context:
space:
mode:
authorBea Lam <bea.lam@nokia.com>2010-02-03 00:05:16 (GMT)
committerBea Lam <bea.lam@nokia.com>2010-02-03 00:05:16 (GMT)
commitb437255afe8348d0e5b865bd28cbf0500b3750f7 (patch)
tree76e31711c342d3176e5a26813937177bd4318b2d /src/declarative/graphicsitems/qmlgraphicsflickable.cpp
parent17d0ed5af4922645a268b6550742fb521d459c8e (diff)
parent778e902e675a4fb2680012f9bf1221abd3b13981 (diff)
downloadQt-b437255afe8348d0e5b865bd28cbf0500b3750f7.zip
Qt-b437255afe8348d0e5b865bd28cbf0500b3750f7.tar.gz
Qt-b437255afe8348d0e5b865bd28cbf0500b3750f7.tar.bz2
Merge branch 'kinetic-declarativeui' of scm.dev.nokia.troll.no:qt/kinetic into kinetic-declarativeui
Diffstat (limited to 'src/declarative/graphicsitems/qmlgraphicsflickable.cpp')
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsflickable.cpp26
1 files changed, 26 insertions, 0 deletions
diff --git a/src/declarative/graphicsitems/qmlgraphicsflickable.cpp b/src/declarative/graphicsitems/qmlgraphicsflickable.cpp
index da031f1..df8c275 100644
--- a/src/declarative/graphicsitems/qmlgraphicsflickable.cpp
+++ b/src/declarative/graphicsitems/qmlgraphicsflickable.cpp
@@ -819,6 +819,32 @@ void QmlGraphicsFlickable::mouseReleaseEvent(QGraphicsSceneMouseEvent *event)
}
}
+void QmlGraphicsFlickable::wheelEvent(QGraphicsSceneWheelEvent *event)
+{
+ Q_D(QmlGraphicsFlickable);
+ if (!d->interactive) {
+ QmlGraphicsItem::wheelEvent(event);
+ } else if (yflick()) {
+ if (event->delta() > 0)
+ d->velocityY = qMax(event->delta() - d->verticalVelocity.value(), 250.0);
+ else
+ d->velocityY = qMin(event->delta() - d->verticalVelocity.value(), -250.0);
+ d->flicked = false;
+ d->flickY(d->velocityY);
+ event->accept();
+ } else if (xflick()) {
+ if (event->delta() > 0)
+ d->velocityX = qMax(event->delta() - d->horizontalVelocity.value(), 250.0);
+ else
+ d->velocityX = qMin(event->delta() - d->horizontalVelocity.value(), -250.0);
+ d->flicked = false;
+ d->flickX(d->velocityX);
+ event->accept();
+ } else {
+ QmlGraphicsItem::wheelEvent(event);
+ }
+}
+
void QmlGraphicsFlickablePrivate::captureDelayedPress(QGraphicsSceneMouseEvent *event)
{
Q_Q(QmlGraphicsFlickable);