diff options
author | Michael Brasser <michael.brasser@nokia.com> | 2010-05-18 00:43:25 (GMT) |
---|---|---|
committer | Michael Brasser <michael.brasser@nokia.com> | 2010-05-18 00:47:11 (GMT) |
commit | 273024e58d90bb9b3a5da0161f884f1af22d75df (patch) | |
tree | 92f8348094c45b2f6a1cac38b663cd381d589fb2 /tests/auto/declarative/qmlvisual/animation/parentAnimation2/parentAnimation2.qml | |
parent | 4530e4c8cf1ddb1ac92fc04fa5d25b0b78308534 (diff) | |
download | Qt-273024e58d90bb9b3a5da0161f884f1af22d75df.zip Qt-273024e58d90bb9b3a5da0161f884f1af22d75df.tar.gz Qt-273024e58d90bb9b3a5da0161f884f1af22d75df.tar.bz2 |
Use QDeclarativeScriptString for ParentChange.
So that scope resolution is correct, e.g. "width: parent.width-10;" in
a ParentChange works correctly.
Task-number: QTBUG-10675
Diffstat (limited to 'tests/auto/declarative/qmlvisual/animation/parentAnimation2/parentAnimation2.qml')
-rw-r--r-- | tests/auto/declarative/qmlvisual/animation/parentAnimation2/parentAnimation2.qml | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/tests/auto/declarative/qmlvisual/animation/parentAnimation2/parentAnimation2.qml b/tests/auto/declarative/qmlvisual/animation/parentAnimation2/parentAnimation2.qml new file mode 100644 index 0000000..dfab108 --- /dev/null +++ b/tests/auto/declarative/qmlvisual/animation/parentAnimation2/parentAnimation2.qml @@ -0,0 +1,64 @@ +import Qt 4.7 + +/* +Blue rect fills (with 10px margin) screen, then red, then green, then screen again. +*/ + +Rectangle { + id: whiteRect + width: 640; height: 480; + + Rectangle { + id: redRect + x: 400; y: 50 + width: 100; height: 100 + color: "red" + } + + Rectangle { + id: greenRect + x: 100; y: 150 + width: 200; height: 300 + color: "green" + } + + Rectangle { + id: blueRect + x: 5; y: 5 + width: parent.width-10 + height: parent.height-10 + color: "lightblue" + + //Text { text: "Click me!"; anchors.centerIn: parent } + + MouseArea { + anchors.fill: parent + onClicked: { + switch(blueRect.state) { + case "": blueRect.state = "inRed"; break; + case "inRed": blueRect.state = "inGreen"; break; + case "inGreen": blueRect.state = ""; break; + } + } + } + + states: [ + State { + name: "inRed" + ParentChange { target: blueRect; parent: redRect; x: 5; y: 5; width: parent.width-10; height: parent.height-10 } + PropertyChanges { target: redRect; z: 1 } + }, + State { + name: "inGreen" + ParentChange { target: blueRect; parent: greenRect; x: 5; y: 5; width: parent.width-10; height: parent.height-10 } + PropertyChanges { target: greenRect; z: 1 } + } + ] + + transitions: Transition { + ParentAnimation { target: blueRect; //via: whiteRect; + NumberAnimation { properties: "x, y, width, height"; duration: 500 } + } + } + } +} |