positioners-transitions.qml Example File
positioners/positioners-transitions.qml
import QtQuick 2.0
Rectangle {
id: page
width: 320; height: 480
property real effectiveOpacity: 1.0
Timer {
interval: 2000
running: true
repeat: true
onTriggered: effectiveOpacity = (effectiveOpacity == 1.0 ? 0.0 : 1.0);
}
Column {
y: 0
populate: Transition {
NumberAnimation { properties: "x,y"; from: 200; duration: 1500; easing.type: Easing.OutBounce }
}
add: Transition {
NumberAnimation { properties: "y"; easing.type: Easing.OutQuad }
}
move: Transition {
NumberAnimation { properties: "y"; easing.type: Easing.OutBounce }
}
Rectangle { color: "red"; width: 100; height: 50; border.color: "black"; radius: 15 }
Rectangle {
id: blueV1
visible: opacity != 0
width: 100; height: 50
color: "lightsteelblue"
border.color: "black"
radius: 15
Behavior on opacity { NumberAnimation {} }
opacity: effectiveOpacity
}
Rectangle { color: "green"; width: 100; height: 50; border.color: "black"; radius: 15 }
Rectangle {
id: blueV2
visible: opacity != 0
width: 100; height: 50
color: "lightsteelblue"
border.color: "black"
radius: 15
Behavior on opacity { NumberAnimation {} }
opacity: effectiveOpacity
}
Rectangle { color: "orange"; width: 100; height: 50; border.color: "black"; radius: 15 }
Rectangle { color: "red"; width: 100; height: 50; border.color: "black"; radius: 15 }
}
Row {
y: 320
populate: Transition {
NumberAnimation { properties: "x,y"; from: 200; duration: 1500; easing.type: Easing.OutBounce }
}
add: Transition {
NumberAnimation { properties: "x"; easing.type: Easing.OutQuad }
}
move: Transition {
NumberAnimation { properties: "x"; easing.type: Easing.OutBounce }
}
Rectangle { color: "red"; width: 50; height: 100; border.color: "black"; radius: 15 }
Rectangle {
id: blueH1
visible: opacity != 0
width: 50; height: 100
color: "lightsteelblue"
border.color: "black"
radius: 15
Behavior on opacity { NumberAnimation {} }
opacity: effectiveOpacity
}
Rectangle { color: "green"; width: 50; height: 100; border.color: "black"; radius: 15 }
Rectangle {
id: blueH2
visible: opacity != 0
width: 50; height: 100
color: "lightsteelblue"
border.color: "black"
radius: 15
Behavior on opacity { NumberAnimation {} }
opacity: effectiveOpacity
}
Rectangle { color: "orange"; width: 50; height: 100; border.color: "black"; radius: 15 }
Rectangle { color: "red"; width: 50; height: 100; border.color: "black"; radius: 15 }
}
Grid {
x: 120; y: 0
columns: 3
populate: Transition {
NumberAnimation { properties: "x,y"; from: 200; duration: 1500; easing.type: Easing.OutBounce }
}
add: Transition {
NumberAnimation { properties: "x,y"; easing.type: Easing.OutBounce }
}
move: Transition {
NumberAnimation { properties: "x,y"; easing.type: Easing.OutBounce }
}
Rectangle { color: "red"; width: 50; height: 50; border.color: "black"; radius: 15 }
Rectangle {
id: blueG1
visible: opacity != 0
width: 50; height: 50
color: "lightsteelblue"
border.color: "black"
radius: 15
Behavior on opacity { NumberAnimation {} }
opacity: effectiveOpacity
}
Rectangle { color: "green"; width: 50; height: 50; border.color: "black"; radius: 15 }
Rectangle {
id: blueG2
visible: opacity != 0
width: 50; height: 50
color: "lightsteelblue"
border.color: "black"
radius: 15
Behavior on opacity { NumberAnimation {} }
opacity: effectiveOpacity
}
Rectangle { color: "orange"; width: 50; height: 50; border.color: "black"; radius: 15 }
Rectangle {
id: blueG3
visible: opacity != 0
width: 50; height: 50
color: "lightsteelblue"
border.color: "black"
radius: 15
Behavior on opacity { NumberAnimation {} }
opacity: effectiveOpacity
}
Rectangle { color: "red"; width: 50; height: 50; border.color: "black"; radius: 15 }
Rectangle { color: "green"; width: 50; height: 50; border.color: "black"; radius: 15 }
Rectangle { color: "orange"; width: 50; height: 50; border.color: "black"; radius: 15 }
}
Flow {
x: 120; y: 160; width: 150
move: Transition {
NumberAnimation { properties: "x,y"; easing.type: Easing.OutBounce }
}
add: Transition {
NumberAnimation { properties: "x,y"; easing.type: Easing.OutBounce }
}
populate: Transition {
NumberAnimation { properties: "x,y"; from: 200; duration: 1500; easing.type: Easing.OutBounce }
}
Rectangle { color: "red"; width: 50; height: 50; border.color: "black"; radius: 15 }
Rectangle {
id: blueF1
visible: opacity != 0
width: 60; height: 50
color: "lightsteelblue"
border.color: "black"
radius: 15
Behavior on opacity { NumberAnimation {} }
opacity: effectiveOpacity
}
Rectangle { color: "green"; width: 30; height: 50; border.color: "black"; radius: 15 }
Rectangle {
id: blueF2
visible: opacity != 0
width: 60; height: 50
color: "lightsteelblue"
border.color: "black"
radius: 15
Behavior on opacity { NumberAnimation {} }
opacity: effectiveOpacity
}
Rectangle { color: "orange"; width: 50; height: 50; border.color: "black"; radius: 15 }
Rectangle {
id: blueF3
visible: opacity != 0
width: 40; height: 50
color: "lightsteelblue"
border.color: "black"
radius: 15
Behavior on opacity { NumberAnimation {} }
opacity: effectiveOpacity
}
Rectangle { color: "red"; width: 80; height: 50; border.color: "black"; radius: 15 }
}
}