aboutsummaryrefslogtreecommitdiffstats
path: root/src/qmltest/quicktestevent_p.h
diff options
context:
space:
mode:
authorJeremy Katz <jeremy@panix.com>2016-08-10 21:41:19 -0700
committerShawn Rutledge <shawn.rutledge@qt.io>2016-12-06 15:41:55 +0000
commit485e9fdf486446fb13012debe10137739b96d8ca (patch)
tree3ce5cc917264fef78ba49d7ded7fbf41e8385928 /src/qmltest/quicktestevent_p.h
parentab54d0cab57121055914ff9a750f5ad975fe7525 (diff)
Add touch event support to qmltest
[ChangeLog][QuickTest] Add support for simulating touch events from TestCase. Task-number: QTBUG-23083 Change-Id: Ic045e00a91b8270b6f08d398323e06b576615e79 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
Diffstat (limited to 'src/qmltest/quicktestevent_p.h')
-rw-r--r--src/qmltest/quicktestevent_p.h24
1 files changed, 24 insertions, 0 deletions
diff --git a/src/qmltest/quicktestevent_p.h b/src/qmltest/quicktestevent_p.h
index 1adf8f3317..c37d03ad0f 100644
--- a/src/qmltest/quicktestevent_p.h
+++ b/src/qmltest/quicktestevent_p.h
@@ -54,8 +54,28 @@
#include <QtQuickTest/quicktestglobal.h>
#include <QtCore/qobject.h>
#include <QtGui/QWindow>
+#include <QtTest/qtesttouch.h>
+
QT_BEGIN_NAMESPACE
+class QuickTestEvent;
+class Q_QUICK_TEST_EXPORT QQuickTouchEventSequence : public QObject
+{
+ Q_OBJECT
+public:
+ explicit QQuickTouchEventSequence(QuickTestEvent *testEvent, QObject *item = nullptr);
+public slots:
+ QObject* press(int touchId, QObject *item, qreal x, qreal y);
+ QObject* move(int touchId, QObject *item, qreal x, qreal y);
+ QObject* release(int touchId, QObject *item, qreal x, qreal y);
+ QObject* stationary(int touchId);
+ QObject* commit();
+
+private:
+ QTest::QTouchEventSequence m_sequence;
+ QuickTestEvent * const m_testEvent;
+};
+
class Q_QUICK_TEST_EXPORT QuickTestEvent : public QObject
{
Q_OBJECT
@@ -91,9 +111,13 @@ public Q_SLOTS:
int modifiers, int xDelta, int yDelta, int delay);
#endif
+ QQuickTouchEventSequence *touchEvent(QObject *item = nullptr);
private:
QWindow *eventWindow(QObject *item = 0);
QWindow *activeWindow();
+ QTouchDevice *touchDevice();
+
+ friend class QQuickTouchEventSequence;
};
QT_END_NAMESPACE