Skip to content
Snippets Groups Projects
Commit ecbb5481 authored by Kai Koehne's avatar Kai Koehne
Browse files

Deleting/pasting multiple items at once are now one Undo/Redo action

Task-number: BAUHAUS-368
parent df82d679
No related branches found
No related tags found
No related merge requests found
...@@ -531,6 +531,7 @@ void DesignDocumentController::deleteSelected() ...@@ -531,6 +531,7 @@ void DesignDocumentController::deleteSelected()
return; return;
if (m_d->formEditorView) { if (m_d->formEditorView) {
RewriterTransaction transaction(m_d->formEditorView.data());
QList<ModelNode> toDelete = m_d->formEditorView->selectedModelNodes(); QList<ModelNode> toDelete = m_d->formEditorView->selectedModelNodes();
foreach (ModelNode node, toDelete) { foreach (ModelNode node, toDelete) {
if (node.isValid() && !node.isRootNode() && QmlObjectNode(node).isValid()) if (node.isValid() && !node.isRootNode() && QmlObjectNode(node).isValid())
...@@ -649,6 +650,8 @@ void DesignDocumentController::paste() ...@@ -649,6 +650,8 @@ void DesignDocumentController::paste()
QList<ModelNode> pastedNodeList; QList<ModelNode> pastedNodeList;
RewriterTransaction transaction(m_d->formEditorView.data());
foreach (const ModelNode &node, selectedNodes) { foreach (const ModelNode &node, selectedNodes) {
QString defaultProperty(targetNode.metaInfo().defaultProperty()); QString defaultProperty(targetNode.metaInfo().defaultProperty());
ModelNode pastedNode(view.insertModel(node)); ModelNode pastedNode(view.insertModel(node));
...@@ -658,6 +661,8 @@ void DesignDocumentController::paste() ...@@ -658,6 +661,8 @@ void DesignDocumentController::paste()
view.setSelectedModelNodes(pastedNodeList); view.setSelectedModelNodes(pastedNodeList);
} else { } else {
RewriterTransaction transaction(m_d->formEditorView.data());
model->detachView(&view); model->detachView(&view);
m_d->model->attachView(&view); m_d->model->attachView(&view);
ModelNode pastedNode(view.insertModel(rootNode)); ModelNode pastedNode(view.insertModel(rootNode));
......
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