summaryrefslogtreecommitdiffstats
path: root/src/gui/kernel/qgesture.cpp
diff options
context:
space:
mode:
authorDenis Dzyubenko <denis.dzyubenko@nokia.com>2009-03-13 17:08:18 (GMT)
committerDenis Dzyubenko <denis.dzyubenko@nokia.com>2009-05-11 14:51:25 (GMT)
commit86a160b083f9d43c07d42bbd7d2ef8b676552e38 (patch)
treecf809282c646ef327156a5ed5ae3fd4671c0e3e4 /src/gui/kernel/qgesture.cpp
parentf8c5c2720b4a48dad0f68b83d9c494185e012cd1 (diff)
downloadQt-86a160b083f9d43c07d42bbd7d2ef8b676552e38.zip
Qt-86a160b083f9d43c07d42bbd7d2ef8b676552e38.tar.gz
Qt-86a160b083f9d43c07d42bbd7d2ef8b676552e38.tar.bz2
Modifications after the api review by Brad.
Gesture types are now separated to internal ones, which are listed as enums (though they might be converted to strings internally), and third party gestures which are referenced by strings. From now on QGesture objects derive from QObject, which means third party gesture recognizer developers can use QObjects property system to store custom data inside QGesture without need to subclass it. Some functions were renamed to show their purpose more clear.
Diffstat (limited to 'src/gui/kernel/qgesture.cpp')
-rw-r--r--src/gui/kernel/qgesture.cpp56
1 files changed, 30 insertions, 26 deletions
diff --git a/src/gui/kernel/qgesture.cpp b/src/gui/kernel/qgesture.cpp
index fbabb8f..b2d357c 100644
--- a/src/gui/kernel/qgesture.cpp
+++ b/src/gui/kernel/qgesture.cpp
@@ -42,80 +42,80 @@
#include "qgesture.h"
#include <private/qgesture_p.h>
-QGesture::QGesture(const Qt::GestureType &type, Qt::GestureState state)
- : d(new QGesturePrivate), gestureType_(type), gestureState_(state)
+QT_BEGIN_NAMESPACE
+
+QString qt_getStandardGestureTypeName(Qt::GestureType type);
+
+QGesture::QGesture(QObject *parent, const QString &type, Qt::GestureState state)
+ : QObject(*new QGesturePrivate, parent), gestureType_(type), gestureState_(state)
{
}
-QGesture::QGesture(const Qt::GestureType &type, const QPoint &startPos,
+QGesture::QGesture(QObject *parent, const QString &type, const QPoint &startPos,
const QPoint &lastPos, const QPoint &pos, const QRect &rect,
const QPoint &hotSpot, const QDateTime &startTime,
uint duration, Qt::GestureState state)
- : d(new QGesturePrivate), gestureType_(type), gestureState_(state)
+ : QObject(*new QGesturePrivate, parent), gestureType_(type), gestureState_(state)
{
- d->init(startPos, lastPos, pos, rect, hotSpot, startTime, duration);
+ d_func()->init(startPos, lastPos, pos, rect, hotSpot, startTime, duration);
}
-QGesture::QGesture(QGesturePrivate &dd, const Qt::GestureType &type,
+QGesture::QGesture(QGesturePrivate &dd, QObject *parent, const QString &type,
Qt::GestureState state)
- : d(&dd), gestureType_(type), gestureState_(state)
+ : QObject(dd, parent), gestureType_(type), gestureState_(state)
{
}
QGesture::~QGesture()
{
- delete d; d = 0;
}
QRect QGesture::rect() const
{
- return d->rect;
+ return d_func()->rect;
}
QPoint QGesture::hotSpot() const
{
- return d->hotSpot;
+ return d_func()->hotSpot;
}
QDateTime QGesture::startTime() const
{
- return d->startTime;
+ return d_func()->startTime;
}
uint QGesture::duration() const
{
- return d->duration;
+ return d_func()->duration;
}
QPoint QGesture::startPos() const
{
- return d->startPos;
+ return d_func()->startPos;
}
QPoint QGesture::lastPos() const
{
- return d->lastPos;
+ return d_func()->lastPos;
}
QPoint QGesture::pos() const
{
- return d->pos;
+ return d_func()->pos;
}
-QPannableGesture::QPannableGesture(const Qt::GestureType &type, Qt::GestureState state)
- : QGesture(*new QPannableGesturePrivate, type, state)
-{
-}
-
-QPannableGesture::QPannableGesture(const Qt::GestureType &type, const QPoint &startPos,
+QPannableGesture::QPannableGesture(QObject *parent, const QPoint &startPos,
const QPoint &lastPos, const QPoint &pos, const QRect &rect,
const QPoint &hotSpot, const QDateTime &startTime,
uint duration, Qt::GestureState state)
- : QGesture(*new QPannableGesturePrivate, type, state)
+ : QGesture(*new QPannableGesturePrivate, parent,
+ qt_getStandardGestureTypeName(Qt::PanGesture), state)
{
+ Q_D(QPannableGesture);
d->init(startPos, lastPos, pos, rect, hotSpot, startTime, duration);
- ((QPannableGesturePrivate*)d)->lastDirection = QPannableGesture::None;
- ((QPannableGesturePrivate*)d)->direction = QPannableGesture::None;
+ d->lastDirection = QPannableGesture::None;
+ d->direction = QPannableGesture::None;
}
QPannableGesture::~QPannableGesture()
@@ -124,10 +124,14 @@ QPannableGesture::~QPannableGesture()
QPannableGesture::DirectionType QPannableGesture::lastDirection() const
{
- return ((QPannableGesturePrivate*)d)->lastDirection;
+ Q_D(const QPannableGesture);
+ return d->lastDirection;
}
QPannableGesture::DirectionType QPannableGesture::direction() const
{
- return ((QPannableGesturePrivate*)d)->direction;
+ Q_D(const QPannableGesture);
+ return d->direction;
}
+
+QT_END_NAMESPACE