aboutsummaryrefslogtreecommitdiff
path: root/src/corelib
diff options
context:
space:
mode:
authorMichal Guminiak <michal.guminiak@teleca.com>2011-01-07 10:30:55 +0100
committerDominik Kapusta <dominik.kapusta@teleca.com>2011-01-07 10:38:58 +0100
commitf5eea42b7c3ebe31fcd22e0bf9e397f3261ede7a (patch)
treed37f11cd7f57a01c7b62f154eae200357b4c6e32 /src/corelib
parent007270faed92e3ca9d2631d490c0a757a1f668b4 (diff)
Fixes: NB#216528 - MSwipeRecognizer should use QElapsedTimer instead of QTime
RevBy: to be done Details: changes the swipe recognizer so that it uses QElapsedTimer instead of QTime. Also updates unittest for it.
Diffstat (limited to 'src/corelib')
-rw-r--r--src/corelib/events/mswipegesture.cpp2
-rw-r--r--src/corelib/events/mswipegesture_p.h3
-rw-r--r--src/corelib/events/mswiperecognizer.cpp8
3 files changed, 7 insertions, 6 deletions
diff --git a/src/corelib/events/mswipegesture.cpp b/src/corelib/events/mswipegesture.cpp
index b9d0711e..8882d30e 100644
--- a/src/corelib/events/mswipegesture.cpp
+++ b/src/corelib/events/mswipegesture.cpp
@@ -24,7 +24,7 @@ MSwipeGesture::MSwipeGesture(QObject* parent) :
recognizedAngle(0),
prevDistance(0),
startPosition(QPointF()),
- time(QTime())
+ timer(QElapsedTimer())
{
}
diff --git a/src/corelib/events/mswipegesture_p.h b/src/corelib/events/mswipegesture_p.h
index 14636e01..300f4862 100644
--- a/src/corelib/events/mswipegesture_p.h
+++ b/src/corelib/events/mswipegesture_p.h
@@ -21,6 +21,7 @@
#define MSWIPEGESTURE_P_H
#include <QSwipeGesture>
+#include <QElapsedTimer>
//! \internal
@@ -66,7 +67,7 @@ private:
/*!
Time of the initial mousepress used to check if the swipe gesture is fast enough.
*/
- QTime time;
+ QElapsedTimer timer;
friend class MSwipeRecognizer;
friend class MSwipeRecognizerPrivate;
diff --git a/src/corelib/events/mswiperecognizer.cpp b/src/corelib/events/mswiperecognizer.cpp
index ab69cd10..c487d1e4 100644
--- a/src/corelib/events/mswiperecognizer.cpp
+++ b/src/corelib/events/mswiperecognizer.cpp
@@ -26,7 +26,7 @@
#include "mtheme.h"
#include <QEvent>
-#include <QBasicTimer>
+#include <QElapsedTimer>
#include <QGraphicsSceneMouseEvent>
#include <QTouchEvent>
#include <QLineF>
@@ -69,7 +69,7 @@ void MSwipeRecognizerPrivate::snapToRightAngle(MSwipeGesture *swipeGesture)
QGestureRecognizer::Result MSwipeRecognizerPrivate::startRecognition(MSwipeGesture *swipeGesture, const QMouseEvent *mouseEvent)
{
- swipeGesture->time = QTime::currentTime();
+ swipeGesture->timer.start();
swipeGesture->startPosition = mouseEvent->globalPos();
swipeGesture->setHotSpot(mouseEvent->globalPos());
@@ -83,7 +83,7 @@ QGestureRecognizer::Result MSwipeRecognizerPrivate::updateRecognition(MSwipeGest
//Swipe angle is equal to the angle of a line between starting position and current position.
swipeGesture->setSwipeAngle(QLineF(swipeGesture->startPosition, mouseEvent->globalPos()).angle());
- int elapsedTime = swipeGesture->time.msecsTo(QTime::currentTime());
+ int elapsedTime = swipeGesture->timer.elapsed();
if (swipeGesture->state() != Qt::NoGesture) {
//The gesture has already been recognized, check if the user didn't change direction.
@@ -189,7 +189,7 @@ void MSwipeRecognizer::reset(QGesture* state)
swipeGesture->recognizedAngle = 0;
swipeGesture->prevDistance = 0;
swipeGesture->startPosition = QPointF();
- swipeGesture->time = QTime();
+ swipeGesture->timer.invalidate();
QGestureRecognizer::reset(swipeGesture);
}