summaryrefslogtreecommitdiffstats
path: root/tests/auto/qsensorgestures/plugins
diff options
context:
space:
mode:
authorLorn Potter <lorn.potter@nokia.com>2012-09-19 19:19:46 +1000
committerLorn Potter <lorn.potter@gmail.com>2012-11-13 20:13:24 +0100
commit05b99e39f4c9e3249d22410d1c70eafb7b8c0170 (patch)
tree0ead578ee1113121494a710b59c4f46376d2803a /tests/auto/qsensorgestures/plugins
parentd8de6ec84d0d4d0a0a48a44590dde2797fe7cc09 (diff)
add qml sensorgesture element backported from qtt5
also add sensorgesture auto tests. need to add a tool that creates the moc data from real device. Change-Id: I6d68f9e889c4c69a916d048505da7dc348c64e11 Reviewed-by: Lorn Potter <lorn.potter@gmail.com>
Diffstat (limited to 'tests/auto/qsensorgestures/plugins')
-rw-r--r--tests/auto/qsensorgestures/plugins/test/qtest2recognizer.cpp98
-rw-r--r--tests/auto/qsensorgestures/plugins/test/qtest2recognizer.h75
-rw-r--r--tests/auto/qsensorgestures/plugins/test/qtestrecognizer.cpp105
-rw-r--r--tests/auto/qsensorgestures/plugins/test/qtestrecognizer.h78
-rw-r--r--tests/auto/qsensorgestures/plugins/test/qtestsensorgestureplugin.cpp107
-rw-r--r--tests/auto/qsensorgestures/plugins/test/qtestsensorgestureplugin_p.h71
-rw-r--r--tests/auto/qsensorgestures/plugins/test1/qtest2recognizerdup.cpp96
-rw-r--r--tests/auto/qsensorgestures/plugins/test1/qtest2recognizerdup.h75
-rw-r--r--tests/auto/qsensorgestures/plugins/test1/qtestrecognizerdup.cpp95
-rw-r--r--tests/auto/qsensorgestures/plugins/test1/qtestrecognizerdup.h76
-rw-r--r--tests/auto/qsensorgestures/plugins/test1/qtestsensorgestureplugindup.cpp105
-rw-r--r--tests/auto/qsensorgestures/plugins/test1/qtestsensorgestureplugindup.h72
-rw-r--r--tests/auto/qsensorgestures/plugins/test1/test1.pro19
13 files changed, 1072 insertions, 0 deletions
diff --git a/tests/auto/qsensorgestures/plugins/test/qtest2recognizer.cpp b/tests/auto/qsensorgestures/plugins/test/qtest2recognizer.cpp
new file mode 100644
index 0000000000..0315f75800
--- /dev/null
+++ b/tests/auto/qsensorgestures/plugins/test/qtest2recognizer.cpp
@@ -0,0 +1,98 @@
+/****************************************************************************
+**
+** Copyright (C) 2012 Digia Plc and/or its subsidiary(-ies).
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the Qt Mobility Components.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+#include "qtest2recognizer.h"
+
+#include "qtestsensorgestureplugin_p.h"
+
+QTest2Recognizer::QTest2Recognizer(QObject *parent)
+ : QSensorGestureRecognizer(parent),
+ active(0)
+{
+}
+
+QTest2Recognizer::~QTest2Recognizer()
+{
+}
+
+bool QTest2Recognizer::start()
+{
+ Q_EMIT test2();
+
+ Q_EMIT detected("test2");
+
+ Q_EMIT test3(true);
+ active = true;
+
+ return true;
+}
+
+bool QTest2Recognizer::stop()
+{
+ active = false;
+ return true;
+}
+
+bool QTest2Recognizer::isActive()
+{
+ return active;
+}
+
+
+void QTest2Recognizer::create()
+{
+ active = false;
+}
+
+QString QTest2Recognizer::id() const
+{
+ return QString("QtSensors.test2");
+}
+
+int QTest2Recognizer::thresholdTime() const
+{
+ return timerTimeout;
+}
+
+void QTest2Recognizer::setThresholdTime(int msec)
+{
+ timer->setInterval(msec);
+}
+
diff --git a/tests/auto/qsensorgestures/plugins/test/qtest2recognizer.h b/tests/auto/qsensorgestures/plugins/test/qtest2recognizer.h
new file mode 100644
index 0000000000..1d68c77bb9
--- /dev/null
+++ b/tests/auto/qsensorgestures/plugins/test/qtest2recognizer.h
@@ -0,0 +1,75 @@
+/****************************************************************************
+**
+** Copyright (C) 2012 Digia Plc and/or its subsidiary(-ies).
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the Qt Mobility Components.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+#ifndef QTEST2RECOGNIZER_H
+#define QTEST2RECOGNIZER_H
+
+#include <qsensorgesturerecognizer.h>
+
+class QTest2Recognizer : public QSensorGestureRecognizer
+{
+ Q_OBJECT
+
+public:
+ QTest2Recognizer(QObject *parent = 0);
+ ~QTest2Recognizer();
+
+ void create();
+
+ QString id() const;
+ bool start();
+ bool stop();
+ bool isActive();
+
+ int thresholdTime() const;
+ void setThresholdTime(int msec);
+
+Q_SIGNALS:
+ void test2();
+ void test3(bool);
+
+private:
+ int timerTimeout;
+ QTimer *timer;
+ bool active;
+};
+
+
+#endif // QTEST2RECOGNIZER_H
diff --git a/tests/auto/qsensorgestures/plugins/test/qtestrecognizer.cpp b/tests/auto/qsensorgestures/plugins/test/qtestrecognizer.cpp
new file mode 100644
index 0000000000..1590e9c668
--- /dev/null
+++ b/tests/auto/qsensorgestures/plugins/test/qtestrecognizer.cpp
@@ -0,0 +1,105 @@
+/****************************************************************************
+**
+** Copyright (C) 2012 Digia Plc and/or its subsidiary(-ies).
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the Qt Mobility Components.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+#include <QStringList>
+#include <QTimer>
+
+#include "qtestrecognizer.h"
+#include "qtestsensorgestureplugin_p.h"
+
+
+QTestRecognizer::QTestRecognizer(QObject *parent)
+ : QSensorGestureRecognizer(parent),
+ active(0)
+{
+ timeout();
+}
+
+QTestRecognizer::~QTestRecognizer()
+{
+}
+
+void QTestRecognizer::timeout()
+{
+ Q_EMIT detected("tested");
+ Q_EMIT tested();
+ QTimer::singleShot(10,this, SLOT(timeout()));
+}
+
+
+bool QTestRecognizer::start()
+{
+ Q_EMIT detected("tested");
+ Q_EMIT tested();
+ active = true;
+ return true;
+}
+
+bool QTestRecognizer::stop()
+{
+ active = false;
+ return true;
+}
+
+bool QTestRecognizer::isActive()
+{
+ return active;
+}
+
+void QTestRecognizer::create()
+{
+ active = false;
+}
+
+QString QTestRecognizer::id() const
+{
+ return QString("QtSensors.test");
+}
+
+
+int QTestRecognizer::thresholdTime() const
+{
+ return timerTimeout;
+}
+
+void QTestRecognizer::setThresholdTime(int msec)
+{
+ timer->setInterval(msec);
+}
diff --git a/tests/auto/qsensorgestures/plugins/test/qtestrecognizer.h b/tests/auto/qsensorgestures/plugins/test/qtestrecognizer.h
new file mode 100644
index 0000000000..3cc2148699
--- /dev/null
+++ b/tests/auto/qsensorgestures/plugins/test/qtestrecognizer.h
@@ -0,0 +1,78 @@
+/****************************************************************************
+**
+** Copyright (C) 2012 Digia Plc and/or its subsidiary(-ies).
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the Qt Mobility Components.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+#ifndef QTESTRECOGNIZER_H
+#define QTESTRECOGNIZER_H
+
+#include <qsensorgesturerecognizer.h>
+
+class QTestRecognizer : public QSensorGestureRecognizer
+{
+ Q_OBJECT
+ Q_PROPERTY(int thresholdTime READ thresholdTime WRITE setThresholdTime)
+
+public:
+
+ QTestRecognizer(QObject *parent = 0);
+ ~QTestRecognizer();
+
+ void create();
+
+ QString id() const;
+ bool start();
+ bool stop();
+ bool isActive();
+
+ int thresholdTime() const;
+ void setThresholdTime(int msec);
+
+Q_SIGNALS:
+ void tested();
+
+private:
+ int timerTimeout;
+ QTimer *timer;
+ bool active;
+
+public slots:
+ void timeout();
+};
+
+#endif // QTESTRECOGNIZER_H
diff --git a/tests/auto/qsensorgestures/plugins/test/qtestsensorgestureplugin.cpp b/tests/auto/qsensorgestures/plugins/test/qtestsensorgestureplugin.cpp
new file mode 100644
index 0000000000..9b210bc39c
--- /dev/null
+++ b/tests/auto/qsensorgestures/plugins/test/qtestsensorgestureplugin.cpp
@@ -0,0 +1,107 @@
+/****************************************************************************
+**
+** Copyright (C) 2012 Digia Plc and/or its subsidiary(-ies).
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the Qt Mobility Components.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+#include <QObject>
+#include <QtPlugin>
+#include <QStringList>
+#include <QTimer>
+#include <QTest>
+
+#include "qtestrecognizer.h"
+#include "qtest2recognizer.h"
+
+#include "qtestsensorgestureplugin_p.h"
+
+#include <qsensorgestureplugininterface.h>
+#include <qsensorgesturerecognizer.h>
+#include <qsensorgesturemanager.h>
+
+
+QTestSensorGesturePlugin::QTestSensorGesturePlugin()
+{
+}
+
+QTestSensorGesturePlugin::~QTestSensorGesturePlugin()
+{
+}
+
+
+///*!
+// Describes this gesture's possible gesture signals.
+//handled through the detected(const QString &) signal.
+// */
+//QStringList QTestSensorGesturePlugin::gestureSignals() const
+//{
+// QStringList list;
+// Q_FOREACH (const QSensorGestureRecognizer* rec, recognizersList) {
+// list.append(rec->gestureSignals());
+// }
+// return list;
+//}
+
+QList <QSensorGestureRecognizer *> QTestSensorGesturePlugin::createRecognizers()
+{
+ QSensorGestureRecognizer *sRec = new QTestRecognizer(this);
+ recognizersList.append(sRec);
+
+ QSensorGestureRecognizer *sRec2 = new QTest2Recognizer(this);
+ recognizersList.append(sRec2);
+
+ return recognizersList;
+}
+
+QStringList QTestSensorGesturePlugin::supportedIds() const
+{
+ QStringList list;
+ list << "QtSensors.test";
+ list <<"QtSensors.test2";
+
+ return list;
+}
+
+QList<QSensorGestureRecognizer*> QTestSensorGesturePlugin::recognizers() const
+{
+ return recognizersList;
+}
+
+QString QTestSensorGesturePlugin::name() const
+{
+ return "TestGestures";
+}
diff --git a/tests/auto/qsensorgestures/plugins/test/qtestsensorgestureplugin_p.h b/tests/auto/qsensorgestures/plugins/test/qtestsensorgestureplugin_p.h
new file mode 100644
index 0000000000..383dd39b6e
--- /dev/null
+++ b/tests/auto/qsensorgestures/plugins/test/qtestsensorgestureplugin_p.h
@@ -0,0 +1,71 @@
+/****************************************************************************
+**
+** Copyright (C) 2012 Digia Plc and/or its subsidiary(-ies).
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the Qt Mobility Components.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+#ifndef QTESTSENSORGESTUREPLUGIN_P_H
+#define QTESTSENSORGESTUREPLUGIN_P_H
+
+#include <QObject>
+#include <qsensorgestureplugininterface.h>
+
+class QTestSensorGesturePlugin : public QObject, public QSensorGesturePluginInterface
+{
+ Q_OBJECT
+ Q_PLUGIN_METADATA(IID "com.Nokia.QSensorGesturePluginInterface")
+ Q_INTERFACES(QSensorGesturePluginInterface)
+
+public:
+ explicit QTestSensorGesturePlugin();
+ ~QTestSensorGesturePlugin();
+
+ QList <QSensorGestureRecognizer *> createRecognizers();
+
+// QStringList gestureSignals() const;
+ QStringList supportedIds() const;
+ QString name() const;
+
+ QList<QSensorGestureRecognizer*> recognizers() const;
+
+ QList<QSensorGestureRecognizer*> recognizersList;
+
+};
+
+
+
+#endif // QTESTSENSORGESTUREPLUGIN_H
diff --git a/tests/auto/qsensorgestures/plugins/test1/qtest2recognizerdup.cpp b/tests/auto/qsensorgestures/plugins/test1/qtest2recognizerdup.cpp
new file mode 100644
index 0000000000..ff9c323105
--- /dev/null
+++ b/tests/auto/qsensorgestures/plugins/test1/qtest2recognizerdup.cpp
@@ -0,0 +1,96 @@
+/****************************************************************************
+**
+** Copyright (C) 2012 Digia Plc and/or its subsidiary(-ies).
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the Qt Mobility Components.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include "qtest2recognizerdup.h"
+
+#include "qtestsensorgestureplugindup.h"
+
+QTest2RecognizerDup::QTest2RecognizerDup(QObject *parent)
+ : QSensorGestureRecognizer(parent),
+ active(0)
+{
+}
+
+QTest2RecognizerDup::~QTest2RecognizerDup()
+{
+}
+
+bool QTest2RecognizerDup::start()
+{
+ Q_EMIT test2_dup();
+
+ active = true;
+
+ return true;
+}
+
+bool QTest2RecognizerDup::stop()
+{
+ active = false;
+ return true;
+}
+
+bool QTest2RecognizerDup::isActive()
+{
+ return active;
+}
+
+
+void QTest2RecognizerDup::create()
+{
+ active = false;
+}
+
+QString QTest2RecognizerDup::id() const
+{
+ return QString("QtSensors.test.dup");
+}
+
+int QTest2RecognizerDup::thresholdTime() const
+{
+ return timerTimeout;
+}
+
+void QTest2RecognizerDup::setThresholdTime(int msec)
+{
+ timer->setInterval(msec);
+}
+
diff --git a/tests/auto/qsensorgestures/plugins/test1/qtest2recognizerdup.h b/tests/auto/qsensorgestures/plugins/test1/qtest2recognizerdup.h
new file mode 100644
index 0000000000..8716cc76bf
--- /dev/null
+++ b/tests/auto/qsensorgestures/plugins/test1/qtest2recognizerdup.h
@@ -0,0 +1,75 @@
+/****************************************************************************
+**
+** Copyright (C) 2012 Digia Plc and/or its subsidiary(-ies).
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the Qt Mobility Components.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef QTEST2RECOGNIZERDUP_H
+#define QTEST2RECOGNIZERDUP_H
+
+#include <qsensorgesturerecognizer.h>
+
+class QTest2RecognizerDup : public QSensorGestureRecognizer
+{
+ Q_OBJECT
+
+public:
+ QTest2RecognizerDup(QObject *parent = 0);
+ ~QTest2RecognizerDup();
+
+ void create();
+
+ QString id() const;
+ bool start();
+ bool stop();
+ bool isActive();
+
+ int thresholdTime() const;
+ void setThresholdTime(int msec);
+
+Q_SIGNALS:
+ void test2_dup();
+
+private:
+ int timerTimeout;
+ QTimer *timer;
+ bool active;
+};
+
+
+#endif // QTEST2RECOGNIZERDUP_H
diff --git a/tests/auto/qsensorgestures/plugins/test1/qtestrecognizerdup.cpp b/tests/auto/qsensorgestures/plugins/test1/qtestrecognizerdup.cpp
new file mode 100644
index 0000000000..9cc9ba1f21
--- /dev/null
+++ b/tests/auto/qsensorgestures/plugins/test1/qtestrecognizerdup.cpp
@@ -0,0 +1,95 @@
+/****************************************************************************
+**
+** Copyright (C) 2012 Digia Plc and/or its subsidiary(-ies).
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the Qt Mobility Components.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QStringList>
+
+#include "qtestrecognizerdup.h"
+#include "qtestsensorgestureplugindup.h"
+
+QTestRecognizerDup::QTestRecognizerDup(QObject *parent)
+ : QSensorGestureRecognizer(parent),
+ active(0)
+{
+}
+
+QTestRecognizerDup::~QTestRecognizerDup()
+{
+}
+
+bool QTestRecognizerDup::start()
+{
+ active = true;
+ Q_EMIT detected("test2_dup");
+ Q_EMIT test2_dup();
+ return true;
+}
+
+bool QTestRecognizerDup::stop()
+{
+ active = false;
+ return true;
+}
+
+bool QTestRecognizerDup::isActive()
+{
+ return active;
+}
+
+void QTestRecognizerDup::create()
+{
+ active = false;
+}
+
+QString QTestRecognizerDup::id() const
+{
+ return QString("QtSensors.test.dup");
+}
+
+
+int QTestRecognizerDup::thresholdTime() const
+{
+ return timerTimeout;
+}
+
+void QTestRecognizerDup::setThresholdTime(int msec)
+{
+ timer->setInterval(msec);
+}
diff --git a/tests/auto/qsensorgestures/plugins/test1/qtestrecognizerdup.h b/tests/auto/qsensorgestures/plugins/test1/qtestrecognizerdup.h
new file mode 100644
index 0000000000..2694b10918
--- /dev/null
+++ b/tests/auto/qsensorgestures/plugins/test1/qtestrecognizerdup.h
@@ -0,0 +1,76 @@
+/****************************************************************************
+**
+** Copyright (C) 2012 Digia Plc and/or its subsidiary(-ies).
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the Qt Mobility Components.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+#ifndef QTESTRECOGNIZERDUP_H
+#define QTESTRECOGNIZERDUP_H
+
+#include <qsensorgesturerecognizer.h>
+
+class QTestRecognizerDup : public QSensorGestureRecognizer
+{
+ Q_OBJECT
+ Q_PROPERTY(int thresholdTime READ thresholdTime WRITE setThresholdTime)
+
+public:
+
+ QTestRecognizerDup(QObject *parent = 0);
+ ~QTestRecognizerDup();
+
+ void create();
+
+ QString id() const;
+ bool start();
+ bool stop();
+ bool isActive();
+
+ int thresholdTime() const;
+ void setThresholdTime(int msec);
+
+Q_SIGNALS:
+ void test2_dup();
+
+private:
+ int timerTimeout;
+ QTimer *timer;
+ bool active;
+
+};
+
+#endif // QTESTRECOGNIZERDUP_H
diff --git a/tests/auto/qsensorgestures/plugins/test1/qtestsensorgestureplugindup.cpp b/tests/auto/qsensorgestures/plugins/test1/qtestsensorgestureplugindup.cpp
new file mode 100644
index 0000000000..4529a449b1
--- /dev/null
+++ b/tests/auto/qsensorgestures/plugins/test1/qtestsensorgestureplugindup.cpp
@@ -0,0 +1,105 @@
+/****************************************************************************
+**
+** Copyright (C) 2012 Digia Plc and/or its subsidiary(-ies).
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the Qt Mobility Components.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+#include <QObject>
+#include <QtPlugin>
+#include <QStringList>
+#include <QTimer>
+
+#include "qtestrecognizerdup.h"
+#include "qtest2recognizerdup.h"
+
+#include "qtestsensorgestureplugindup.h"
+
+#include <qsensorgestureplugininterface.h>
+#include <qsensorgesturerecognizer.h>
+#include <qsensorgesturemanager.h>
+
+
+QTestSensorGestureDupPlugin::QTestSensorGestureDupPlugin()
+{
+}
+
+QTestSensorGestureDupPlugin::~QTestSensorGestureDupPlugin()
+{
+}
+
+/*!
+ Describes this gesture's possible gesture signals.
+handled through the detected(const QString &) signal.
+ */
+QStringList QTestSensorGestureDupPlugin::gestureSignals() const
+{
+ QStringList list;
+ Q_FOREACH (const QSensorGestureRecognizer* rec,recognizersList) {
+ list.append(rec->gestureSignals());
+ }
+ return list;
+}
+
+QList <QSensorGestureRecognizer *> QTestSensorGestureDupPlugin::createRecognizers()
+{
+ QSensorGestureRecognizer *sRec = new QTestRecognizerDup(this);
+ recognizersList.append(sRec);
+
+ QSensorGestureRecognizer *sRec2 = new QTest2RecognizerDup(this);
+ recognizersList.append(sRec2);
+
+ return recognizersList;
+}
+
+QStringList QTestSensorGestureDupPlugin::supportedIds() const
+{
+ QStringList list;
+ list << "QtSensors.test.dup";
+ list << "QtSensors.test.dup";
+
+ return list;
+}
+
+QList<QSensorGestureRecognizer*> QTestSensorGestureDupPlugin::recognizers() const
+{
+ return recognizersList;
+}
+
+QString QTestSensorGestureDupPlugin::name() const
+{
+ return "TestGesturesDup";
+}
diff --git a/tests/auto/qsensorgestures/plugins/test1/qtestsensorgestureplugindup.h b/tests/auto/qsensorgestures/plugins/test1/qtestsensorgestureplugindup.h
new file mode 100644
index 0000000000..42d01f4028
--- /dev/null
+++ b/tests/auto/qsensorgestures/plugins/test1/qtestsensorgestureplugindup.h
@@ -0,0 +1,72 @@
+/****************************************************************************
+**
+** Copyright (C) 2012 Digia Plc and/or its subsidiary(-ies).
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the Qt Mobility Components.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+#ifndef QTESTSENSORGESTUREDUPPLUGIN_H
+#define QTESTSENSORGESTUREDUPPLUGIN_H
+
+#include <QObject>
+#include <qsensorgestureplugininterface.h>
+
+class QTestSensorGestureDupPlugin : public QObject, public QSensorGesturePluginInterface
+{
+ Q_OBJECT
+ Q_PLUGIN_METADATA(IID "com.Nokia.QSensorGesturePluginInterface")
+ Q_INTERFACES(QSensorGesturePluginInterface)
+
+public:
+ explicit QTestSensorGestureDupPlugin();
+ ~QTestSensorGestureDupPlugin();
+
+
+ QList <QSensorGestureRecognizer *> createRecognizers();
+
+ QStringList gestureSignals() const;
+ QStringList supportedIds() const;
+ QString name() const;
+
+ QList<QSensorGestureRecognizer*> recognizers() const;
+
+ QList<QSensorGestureRecognizer*> recognizersList;
+
+};
+
+
+
+#endif // QTESTSENSORGESTUREDUPPLUGIN_H
diff --git a/tests/auto/qsensorgestures/plugins/test1/test1.pro b/tests/auto/qsensorgestures/plugins/test1/test1.pro
new file mode 100644
index 0000000000..17fc6b19e9
--- /dev/null
+++ b/tests/auto/qsensorgestures/plugins/test1/test1.pro
@@ -0,0 +1,19 @@
+TEMPLATE = lib
+CONFIG += plugin
+
+TARGET = qtsensorgestures_testplugin1
+
+QT += sensors sensorgestures
+DESTDIR = $$QT.sensorgestures.plugins/sensorgestures
+
+# Input
+HEADERS += qtestsensorgestureplugindup_p.h \
+ qtestrecognizerdup.h \
+ qtest2recognizerdup.h
+SOURCES += qtestsensorgestureplugindup.cpp \
+ qtestrecognizerdup.cpp \
+ qtest2recognizerduo.cpp
+
+target.path += $$[QT_INSTALL_PLUGINS]/sensorgestures
+INSTALLS += target
+DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0