diff options
author | mae <qt-info@nokia.com> | 2010-08-04 07:27:34 (GMT) |
---|---|---|
committer | Toby Tomkins <toby.tomkins@nokia.com> | 2010-08-06 03:32:45 (GMT) |
commit | e628b0808d874eb798e463f23387d00191d7068e (patch) | |
tree | 18093be70902d9a6a8aaa6f279aefde8cf819473 /tests/auto | |
parent | 828604016ae257281c2e6ee2e4693e6833b478e3 (diff) | |
download | Qt-e628b0808d874eb798e463f23387d00191d7068e.zip Qt-e628b0808d874eb798e463f23387d00191d7068e.tar.gz Qt-e628b0808d874eb798e463f23387d00191d7068e.tar.bz2 |
Make SpringAnimation usable inside a transition
SpringFollow was turned into SpringAnimation so it could be
used inside a Behavior. This patch completes the work and makes
it usable inside a transition.
This is the documented behavior of SpringAnimation, the patch
is essential to make SpringAnimation work consistently.
Reviewed-by: Michael Brasser
Task-number: QTBUG-12141
(cherry picked from commit 33203efb786de9aebc6e05d1b4878d89e86ac456)
Diffstat (limited to 'tests/auto')
-rw-r--r-- | tests/auto/declarative/qdeclarativeanimations/data/propertiesTransition7.qml | 29 | ||||
-rw-r--r-- | tests/auto/declarative/qdeclarativeanimations/tst_qdeclarativeanimations.cpp | 14 |
2 files changed, 43 insertions, 0 deletions
diff --git a/tests/auto/declarative/qdeclarativeanimations/data/propertiesTransition7.qml b/tests/auto/declarative/qdeclarativeanimations/data/propertiesTransition7.qml new file mode 100644 index 0000000..b47b5f2 --- /dev/null +++ b/tests/auto/declarative/qdeclarativeanimations/data/propertiesTransition7.qml @@ -0,0 +1,29 @@ +import Qt 4.7 + +Rectangle { + width: 400 + height: 400 + Rectangle { + id: theRect + objectName: "TheRect" + color: "red" + width: 50; height: 50 + x: 100; y: 100 + } + + states: State { + name: "moved" + PropertyChanges { + target: theRect + x: 200 + } + } + transitions: Transition { + SpringAnimation { targets: theRect; properties: "x"; velocity: 10000 } + } + + MouseArea { + anchors.fill: parent + onClicked: parent.state = "moved" + } +} diff --git a/tests/auto/declarative/qdeclarativeanimations/tst_qdeclarativeanimations.cpp b/tests/auto/declarative/qdeclarativeanimations/tst_qdeclarativeanimations.cpp index 3e80c2c..ec867fe 100644 --- a/tests/auto/declarative/qdeclarativeanimations/tst_qdeclarativeanimations.cpp +++ b/tests/auto/declarative/qdeclarativeanimations/tst_qdeclarativeanimations.cpp @@ -551,6 +551,20 @@ void tst_qdeclarativeanimations::propertiesTransition() QTest::qWait(waitDuration); QTIMED_COMPARE(myRect->x(),qreal(100)); }*/ + + { + QDeclarativeEngine engine; + QDeclarativeComponent c(&engine, QUrl::fromLocalFile(SRCDIR "/data/propertiesTransition7.qml")); + QDeclarativeRectangle *rect = qobject_cast<QDeclarativeRectangle*>(c.create()); + QVERIFY(rect); + + QDeclarativeItemPrivate::get(rect)->setState("moved"); + QDeclarativeRectangle *myRect = rect->findChild<QDeclarativeRectangle*>("TheRect"); + QVERIFY(myRect); + QTest::qWait(waitDuration); + QTIMED_COMPARE(myRect->x(),qreal(200)); + } + } void tst_qdeclarativeanimations::invalidDuration() |