summaryrefslogtreecommitdiffstats
path: root/examples
diff options
context:
space:
mode:
Diffstat (limited to 'examples')
-rw-r--r--examples/sensors/sensors.pro3
-rw-r--r--examples/sensors/shakeit/icon.pngbin0 -> 10695 bytes
-rw-r--r--examples/sensors/shakeit/images/triangle.pngbin0 -> 7251 bytes
-rw-r--r--examples/sensors/shakeit/images/triangle2.pngbin0 -> 5633 bytes
-rw-r--r--examples/sensors/shakeit/images/triangle3.pngbin0 -> 5101 bytes
-rw-r--r--examples/sensors/shakeit/info.json13
-rw-r--r--examples/sensors/shakeit/qml.pro4
-rw-r--r--examples/sensors/shakeit/shakeit.pro3
-rw-r--r--examples/sensors/shakeit/shakeit.qdoc60
-rw-r--r--examples/sensors/shakeit/shakeit.qml113
10 files changed, 195 insertions, 1 deletions
diff --git a/examples/sensors/sensors.pro b/examples/sensors/sensors.pro
index f09991c1..0f0494e6 100644
--- a/examples/sensors/sensors.pro
+++ b/examples/sensors/sensors.pro
@@ -4,7 +4,8 @@ SUBDIRS += \
accel \
grue \
qmlsensorgestures \
- sensor_explorer
+ sensor_explorer \
+ shakeit
contains(QT_CONFIG,widgets):SUBDIRS += \
sensorgestures
diff --git a/examples/sensors/shakeit/icon.png b/examples/sensors/shakeit/icon.png
new file mode 100644
index 00000000..d8f21546
--- /dev/null
+++ b/examples/sensors/shakeit/icon.png
Binary files differ
diff --git a/examples/sensors/shakeit/images/triangle.png b/examples/sensors/shakeit/images/triangle.png
new file mode 100644
index 00000000..f366537e
--- /dev/null
+++ b/examples/sensors/shakeit/images/triangle.png
Binary files differ
diff --git a/examples/sensors/shakeit/images/triangle2.png b/examples/sensors/shakeit/images/triangle2.png
new file mode 100644
index 00000000..9318d5a3
--- /dev/null
+++ b/examples/sensors/shakeit/images/triangle2.png
Binary files differ
diff --git a/examples/sensors/shakeit/images/triangle3.png b/examples/sensors/shakeit/images/triangle3.png
new file mode 100644
index 00000000..4cc5ccda
--- /dev/null
+++ b/examples/sensors/shakeit/images/triangle3.png
Binary files differ
diff --git a/examples/sensors/shakeit/info.json b/examples/sensors/shakeit/info.json
new file mode 100644
index 00000000..1895469b
--- /dev/null
+++ b/examples/sensors/shakeit/info.json
@@ -0,0 +1,13 @@
+{
+ "info-version": "1.0",
+ "dict": {
+ "DisplayName": "ShakeIt!",
+ "Identifier": "com.nokia.mt.shakeit",
+ "Runtime": "qml",
+ "MainQML": "shakeit.qml",
+ "Version": "1.0.0",
+ "Category": "application",
+ "Subcategory": "utility",
+ "Summary": "ShakeIt demonstrates the Qt5 QtSensor Gestures API"
+ }
+}
diff --git a/examples/sensors/shakeit/qml.pro b/examples/sensors/shakeit/qml.pro
new file mode 100644
index 00000000..32048333
--- /dev/null
+++ b/examples/sensors/shakeit/qml.pro
@@ -0,0 +1,4 @@
+TEMPLATE = aux
+
+OTHERS += \
+ shakeit.qdoc
diff --git a/examples/sensors/shakeit/shakeit.pro b/examples/sensors/shakeit/shakeit.pro
new file mode 100644
index 00000000..6dc685b9
--- /dev/null
+++ b/examples/sensors/shakeit/shakeit.pro
@@ -0,0 +1,3 @@
+TEMPLATE = subdirs
+
+SUBDIRS = qml.pro
diff --git a/examples/sensors/shakeit/shakeit.qdoc b/examples/sensors/shakeit/shakeit.qdoc
new file mode 100644
index 00000000..f7f4b31b
--- /dev/null
+++ b/examples/sensors/shakeit/shakeit.qdoc
@@ -0,0 +1,60 @@
+/****************************************************************************
+**
+** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the documentation of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:FDL$
+** GNU Free Documentation License
+** Alternatively, this file may be used under the terms of the GNU Free
+** Documentation License version 1.3 as published by the Free Software
+** Foundation and appearing in the file included in the packaging of
+** this file.
+**
+** Other Usage
+** Alternatively, this file may be used in accordance with the terms
+** and conditions contained in a signed written agreement between you
+** and Nokia.
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+/*!
+ \example sensors/shakeit
+ \title ShakeIt! QML Sensor Gestures Example
+ \brief The sensor gesture example demonstrates the steps for creating a QML application
+ that uses sensor gestures and the included shake sensor.
+
+ \section1 Overview
+ Writing a QML application that uses the Shake QML sensorgestures element
+ requires the following steps:
+
+ Import the Sensors Declarative module.
+
+ \snippet ../examples/sensors/shakeit/shakeit.qml 0
+
+ Add a SensorGesture QML element.
+
+ \snippet ../examples/sensors/shakeit/shakeit.qml 1
+
+ In the SensorGesture element, specify which gesture to be used.
+ Note that this can be a comma separated list. Here we are only interested in one
+ gesture recognizer.
+
+ \snippet ../examples/sensors/shakeit/shakeit.qml 2
+
+ Use the 'enabled' property to start the sensor gesture.
+
+ \snippet ../examples/sensors/shakeit/shakeit.qml 3
+
+ Use the onDetected signal to do stuff.
+
+ \snippet ../examples/sensors/shakeit/shakeit.qml 4
+
+*/
diff --git a/examples/sensors/shakeit/shakeit.qml b/examples/sensors/shakeit/shakeit.qml
new file mode 100644
index 00000000..1baaa8ca
--- /dev/null
+++ b/examples/sensors/shakeit/shakeit.qml
@@ -0,0 +1,113 @@
+/****************************************************************************
+**
+** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the QtSensors module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** GNU Lesser General Public License Usage
+** 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, Nokia gives you certain additional
+** rights. These rights are described in the Nokia 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.
+**
+** Other Usage
+** Alternatively, this file may be used in accordance with the terms and
+** conditions contained in a signed written agreement between you and Nokia.
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+import QtQuick 2.0
+//! [0]
+import QtSensors 5.0
+//! [0]
+
+Rectangle {
+ id: window
+
+ Text {
+ text: qsTr("Shake to rotate triangles")
+ y: parent.height / 4
+ anchors.horizontalCenter: parent.horizontalCenter
+ }
+ Image {
+ id: triangle1
+ smooth: true
+ source: "images/triangle.png"
+ y: parent.height / 2 - (triangle1.height);
+ x: parent.width / 2 - (triangle1.width / 2)
+ }
+ Image {
+ id: triangle2
+ smooth: true
+ source: "images/triangle2.png"
+ anchors.right: triangle1.left; anchors.top: triangle1.bottom
+ }
+ Image {
+ id: triangle3
+ smooth: true
+ source: "images/triangle3.png"
+ anchors.left: triangle1.right; anchors.top: triangle1.bottom
+ }
+
+ states: [
+ State {
+ name: "rotated"
+ PropertyChanges { target: triangle1; rotation: 180 }
+ PropertyChanges { target: triangle2; rotation: 90 }
+ PropertyChanges { target: triangle3; rotation: 270 }
+ },
+ State {
+ name: "unrotated"
+ PropertyChanges { target: triangle1; rotation: 0 }
+ PropertyChanges { target: triangle2; rotation: 0 }
+ PropertyChanges { target: triangle3; rotation: 0 }
+ }
+ ]
+ transitions: Transition {
+ RotationAnimation { id: t1Rotation; target: triangle1; duration: 1000; direction: RotationAnimation.Clockwise }
+ RotationAnimation { id: t2Rotation; target: triangle2; duration: 3000; direction: RotationAnimation.Counterclockwise }
+ RotationAnimation { id: t3Rotation; target: triangle3; duration: 3000; direction: RotationAnimation.Clockwise }
+ }
+
+//! [1]
+ SensorGesture {
+//! [1]
+ id: sensorGesture
+//! [3]
+ enabled: true
+//! [3]
+//! [2]
+ gestures : ["QtSensors.shake"]
+//! [2]
+//! [4]
+ onDetected:{
+ if (gesture == "shake") {
+ window.state == "rotated" ? window.state = "unrotated" : window.state = "rotated"
+ }
+ }
+//! [4]
+ }
+}