Skip to content
Snippets Groups Projects
Commit a57279d8 authored by Thomas Hartmann's avatar Thomas Hartmann
Browse files

QmlDesigner: Fix sliding in NavigatorView


We have to rebuild the complete tree and update
the item selection.

Change-Id: I91057ca3c518d9027724a7b15de686248df7a0e6
Reviewed-by: default avatarTim Jenssen <tim.jenssen@qt.io>
parent 6508956d
No related branches found
No related tags found
No related merge requests found
...@@ -266,19 +266,22 @@ void NavigatorView::instanceErrorChanged(const QVector<ModelNode> &errorNodeList ...@@ -266,19 +266,22 @@ void NavigatorView::instanceErrorChanged(const QVector<ModelNode> &errorNodeList
m_treeModel->updateItemRow(currentModelNode); m_treeModel->updateItemRow(currentModelNode);
} }
void NavigatorView::nodeOrderChanged(const NodeListProperty &listProperty, const ModelNode &node, int /*oldIndex*/) void NavigatorView::nodeOrderChanged(const NodeListProperty & /*listProperty*/, const ModelNode &node, int /*oldIndex*/)
{ {
if (m_treeModel->isInTree(node)) { bool blocked = blockSelectionChangedSignal(true);
m_treeModel->removeSubTree(listProperty.parentModelNode());
if (node.isInHierarchy()) if (m_treeModel->isInTree(node)) {
m_treeModel->addSubTree(listProperty.parentModelNode()); m_treeModel->removeSubTree(rootModelNode());
m_treeModel->addSubTree(rootModelNode());
if (listProperty.parentModelNode().isValid()) { QModelIndex index = m_treeModel->indexForNode(rootModelNode());
QModelIndex index = m_treeModel->indexForNode(listProperty.parentModelNode()); treeWidget()->expand(index);
treeWidget()->expand(index);
}
} }
// make sure selection is in sync again
updateItemSelection();
blockSelectionChangedSignal(blocked);
} }
void NavigatorView::changeToComponent(const QModelIndex &index) void NavigatorView::changeToComponent(const QModelIndex &index)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment