aboutsummaryrefslogtreecommitdiffstats
path: root/tests/manual/timelineTestApp/test01.qml
diff options
context:
space:
mode:
authorThomas Hartmann <thomas.hartmann@qt.io>2017-11-27 10:17:41 +0100
committerThomas Hartmann <thomas.hartmann@qt.io>2017-11-29 13:48:22 +0000
commitfe7e09d8ccf6daaf50a8152329960a6bd0157bc8 (patch)
tree05a6a8671c9d1c97f4c9e81b9405a9d6a58615dc /tests/manual/timelineTestApp/test01.qml
parent575402ef399d949ce14ae0235ce126edebfbe29f (diff)
Initial commit
This implements the timeline module for keyframe based animations in Qt Quick. Change-Id: Icf4a4191da7580f670a02ef52e4b0bee4befed18 Reviewed-by: Alessandro Portale <alessandro.portale@qt.io> Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Diffstat (limited to 'tests/manual/timelineTestApp/test01.qml')
-rw-r--r--tests/manual/timelineTestApp/test01.qml137
1 files changed, 137 insertions, 0 deletions
diff --git a/tests/manual/timelineTestApp/test01.qml b/tests/manual/timelineTestApp/test01.qml
new file mode 100644
index 0000000..95af21d
--- /dev/null
+++ b/tests/manual/timelineTestApp/test01.qml
@@ -0,0 +1,137 @@
+/****************************************************************************
+**
+** Copyright (C) 2017 The Qt Company Ltd
+** All rights reserved.
+** For any questions to The Qt Company, please use contact form at http://www.qt.io/contact-us
+**
+** This file is part of the Qt Enterprise Qt Quick Timeline Add-on.
+**
+** Licensees holding valid Qt Enterprise licenses may use this file in
+** accordance with the Qt Enterprise License Agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and The Qt Company.
+**
+** If you have questions regarding the use of this file, please use
+** contact form at http://www.qt.io/contact-us
+**
+****************************************************************************/
+
+import QtQuick 2.0
+import QtQuick.Timeline 1.0
+
+Item {
+ Rectangle {
+ width: 40
+ height: 40
+ color: "blue"
+ MouseArea {
+ anchors.fill: parent
+ onClicked: mutator.enabled = !mutator.enabled
+ }
+ }
+
+ Rectangle {
+ x: 80
+ width: 40
+ height: 40
+ color: "blue"
+ MouseArea {
+ anchors.fill: parent
+ onClicked: animation.start()
+ }
+ }
+
+ NumberAnimation {
+ id: animation
+ target: mutator
+ property: "currentFrame"
+ easing.type: Easing.InOutQuad
+ duration: 2000
+ from: 0
+ to: 100
+ running: true
+ }
+
+ Item {
+ width: 480
+ height: 480
+
+ KeyframeMutator {
+ id: mutator
+
+ startFrame: 0
+ endFrame: 100
+ currentFrame: 50
+
+ enabled: true
+
+ Keyframes {
+ target: rectangle
+ property: "x"
+
+ Keyframe {
+ frame: 0
+ value: 0
+ }
+
+ Keyframe {
+ frame: 50
+ value: 100
+ }
+
+ Keyframe {
+ frame: 100
+ value: 200
+ }
+ }
+
+ Keyframes {
+ target: rectangle
+ property: "y"
+
+ Keyframe {
+ frame: 0
+ value: 0
+ }
+
+ Keyframe {
+ frame: 50
+ value: 100
+ easing.type: Easing.InBounce
+ }
+
+ Keyframe {
+ frame: 100
+ value: 200
+ }
+ }
+
+ Keyframes {
+ target: rectangle
+ property: "color"
+
+ Keyframe {
+ frame: 0
+ value: "red"
+ }
+
+ Keyframe {
+ frame: 50
+ value: "blue"
+ }
+
+ Keyframe {
+ frame: 100
+ value: "yellow"
+ }
+ }
+ }
+
+ Rectangle {
+ id: rectangle
+ width: 20
+ height: 20
+ color: "red"
+ }
+ }
+}