forked from qt-creator/qt-creator
QmlDesigner: Create transitions with proper versions
The versions were hard coded which leads to issues. Task-number: QDS-6760 Change-Id: I94c3599348b996bb700da636cd63e74ea4c02be6 Reviewed-by: <github-actions-qt-creator@cristianadam.eu> Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
This commit is contained in:
@@ -251,50 +251,54 @@ ModelNode TransitionEditorView::addNewTransition()
|
|||||||
|
|
||||||
if (!idPropertyList.isEmpty()) {
|
if (!idPropertyList.isEmpty()) {
|
||||||
executeInTransaction(
|
executeInTransaction(
|
||||||
" TransitionEditorView::addNewTransition", [&transition, idPropertyList, root, this]() {
|
" TransitionEditorView::addNewTransition", [&transition, idPropertyList, root, this]() {
|
||||||
transition = createModelNode("QtQuick.Transition",
|
|
||||||
2,
|
|
||||||
0,
|
|
||||||
{{
|
|
||||||
"from",
|
|
||||||
"*",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"to",
|
|
||||||
"*",
|
|
||||||
}});
|
|
||||||
transition.setAuxiliaryData("transitionDuration", 2000);
|
|
||||||
transition.validId();
|
|
||||||
root.nodeListProperty("transitions").reparentHere(transition);
|
|
||||||
|
|
||||||
for (auto it = idPropertyList.cbegin(); it != idPropertyList.cend(); ++it) {
|
const NodeMetaInfo transitionMetaInfo = model()->metaInfo("QtQuick.Transition");
|
||||||
ModelNode parallelAnimation = createModelNode("QtQuick.ParallelAnimation",
|
transition = createModelNode("QtQuick.Transition",
|
||||||
2,
|
transitionMetaInfo.majorVersion(),
|
||||||
12);
|
transitionMetaInfo.minorVersion(),
|
||||||
transition.defaultNodeAbstractProperty().reparentHere(parallelAnimation);
|
{{
|
||||||
for (const QString &property : it.value()) {
|
"from",
|
||||||
ModelNode sequentialAnimation
|
"*",
|
||||||
= createModelNode("QtQuick.SequentialAnimation", 2, 12);
|
},
|
||||||
parallelAnimation.defaultNodeAbstractProperty().reparentHere(
|
{
|
||||||
sequentialAnimation);
|
"to",
|
||||||
|
"*",
|
||||||
|
}});
|
||||||
|
transition.setAuxiliaryData("transitionDuration", 2000);
|
||||||
|
transition.validId();
|
||||||
|
root.nodeListProperty("transitions").reparentHere(transition);
|
||||||
|
|
||||||
ModelNode pauseAnimation = createModelNode("QtQuick.PauseAnimation",
|
for (auto it = idPropertyList.cbegin(); it != idPropertyList.cend(); ++it) {
|
||||||
2,
|
ModelNode parallelAnimation = createModelNode("QtQuick.ParallelAnimation");
|
||||||
12,
|
transition.defaultNodeAbstractProperty().reparentHere(parallelAnimation);
|
||||||
{{"duration", 50}});
|
for (const QString &property : it.value()) {
|
||||||
sequentialAnimation.defaultNodeAbstractProperty().reparentHere(
|
ModelNode sequentialAnimation
|
||||||
pauseAnimation);
|
= createModelNode("QtQuick.SequentialAnimation");
|
||||||
|
parallelAnimation.defaultNodeAbstractProperty().reparentHere(
|
||||||
|
sequentialAnimation);
|
||||||
|
|
||||||
ModelNode propertyAnimation = createModelNode("QtQuick.PropertyAnimation",
|
const NodeMetaInfo pauseMetaInfo = model()->metaInfo("QtQuick.PauseAnimation");
|
||||||
2,
|
|
||||||
12,
|
ModelNode pauseAnimation = createModelNode("QtQuick.PauseAnimation",
|
||||||
{{"property", property},
|
pauseMetaInfo.majorVersion(),
|
||||||
{"duration", 150}});
|
pauseMetaInfo.minorVersion(),
|
||||||
propertyAnimation.bindingProperty("target").setExpression(it.key());
|
{{"duration", 50}});
|
||||||
sequentialAnimation.defaultNodeAbstractProperty().reparentHere(
|
sequentialAnimation.defaultNodeAbstractProperty().reparentHere(
|
||||||
propertyAnimation);
|
pauseAnimation);
|
||||||
}
|
|
||||||
|
const NodeMetaInfo propertyMetaInfo = model()->metaInfo("QtQuick.PauseAnimation");
|
||||||
|
|
||||||
|
ModelNode propertyAnimation = createModelNode("QtQuick.PropertyAnimation",
|
||||||
|
propertyMetaInfo.majorVersion(),
|
||||||
|
propertyMetaInfo.minorVersion(),
|
||||||
|
{{"property", property},
|
||||||
|
{"duration", 150}});
|
||||||
|
propertyAnimation.bindingProperty("target").setExpression(it.key());
|
||||||
|
sequentialAnimation.defaultNodeAbstractProperty().reparentHere(
|
||||||
|
propertyAnimation);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
QString properties;
|
QString properties;
|
||||||
|
Reference in New Issue
Block a user