diff options
author | Thomas Hartmann <thomas.hartmann@qt.io> | 2017-11-27 10:17:41 +0100 |
---|---|---|
committer | Thomas Hartmann <thomas.hartmann@qt.io> | 2017-11-29 13:48:22 +0000 |
commit | fe7e09d8ccf6daaf50a8152329960a6bd0157bc8 (patch) | |
tree | 05a6a8671c9d1c97f4c9e81b9405a9d6a58615dc /tests/manual/timelineTestApp/test01.qml | |
parent | 575402ef399d949ce14ae0235ce126edebfbe29f (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.qml | 137 |
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" + } + } +} |