From 7393305b31b657bcd0f11ae4a584373f8fd8ec87 Mon Sep 17 00:00:00 2001 From: Thomas Hartmann Date: Mon, 19 Aug 2019 15:47:30 +0200 Subject: QmlDesigner: Do not use z-order for toFront/toBack Task-number: QDS-370 Change-Id: I1cfff1b0f87e6dacb1f08c01a7b04d06eadb78e1 Reviewed-by: Tim Jenssen --- .../components/componentcore/modelnodeoperations.cpp | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) (limited to 'src') diff --git a/src/plugins/qmldesigner/components/componentcore/modelnodeoperations.cpp b/src/plugins/qmldesigner/components/componentcore/modelnodeoperations.cpp index 9f880c453b5..d1fec2cd4af 100644 --- a/src/plugins/qmldesigner/components/componentcore/modelnodeoperations.cpp +++ b/src/plugins/qmldesigner/components/componentcore/modelnodeoperations.cpp @@ -198,9 +198,13 @@ void toFront(const SelectionContext &selectionState) try { QmlItemNode node = selectionState.firstSelectedModelNode(); if (node.isValid()) { - signed int maximumZ = getMaxZValue(siblingsForNode(node)); - maximumZ++; - node.setVariantProperty("z", maximumZ); + ModelNode modelNode = selectionState.currentSingleSelectedNode(); + NodeListProperty parentProperty = modelNode.parentProperty().toNodeListProperty(); + const int index = parentProperty.indexOf(modelNode); + const int lastIndex = parentProperty.count() - 1; + + if (index != lastIndex) + parentProperty.slide(index, lastIndex); } } catch (const RewritingException &e) { //better save then sorry e.showException(); @@ -215,9 +219,12 @@ void toBack(const SelectionContext &selectionState) try { QmlItemNode node = selectionState.firstSelectedModelNode(); if (node.isValid()) { - signed int minimumZ = getMinZValue(siblingsForNode(node)); - minimumZ--; - node.setVariantProperty("z", minimumZ); + ModelNode modelNode = selectionState.currentSingleSelectedNode(); + NodeListProperty parentProperty = modelNode.parentProperty().toNodeListProperty(); + const int index = parentProperty.indexOf(modelNode); + + if (index != 0) + parentProperty.slide(index, 0); } } catch (const RewritingException &e) { //better save then sorry -- cgit v1.2.3