diff options
author | Aleks Kissinger <aleks0@gmail.com> | 2019-01-19 18:13:51 +0100 |
---|---|---|
committer | Aleks Kissinger <aleks0@gmail.com> | 2019-01-19 18:13:51 +0100 |
commit | bd208d8b604dd7958152fdf4db188a0bd64146f5 (patch) | |
tree | 54e841b1dfab4a121364632067b461fd057747d5 /src/gui/undocommands.cpp | |
parent | 15d97051f0b5105a2765fc068ae980e36195434c (diff) |
merge nodes
Diffstat (limited to 'src/gui/undocommands.cpp')
-rw-r--r-- | src/gui/undocommands.cpp | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/src/gui/undocommands.cpp b/src/gui/undocommands.cpp index 8ad15d0..c5c26af 100644 --- a/src/gui/undocommands.cpp +++ b/src/gui/undocommands.cpp @@ -128,9 +128,12 @@ void EdgeBendCommand::redo() DeleteCommand::DeleteCommand(TikzScene *scene, QMap<int, Node *> deleteNodes, QMap<int, Edge *> deleteEdges, - QSet<Edge *> selEdges, QUndoCommand *parent) : + QSet<Node *> selNodes, + QSet<Edge *> selEdges, + QUndoCommand *parent) : GraphUpdateCommand(scene, parent), - _deleteNodes(deleteNodes), _deleteEdges(deleteEdges), _selEdges(selEdges) + _deleteNodes(deleteNodes), _deleteEdges(deleteEdges), + _selNodes(selNodes), _selEdges(selEdges) {} void DeleteCommand::undo() @@ -142,7 +145,7 @@ void DeleteCommand::undo() NodeItem *ni = new NodeItem(n); _scene->nodeItems().insert(n, ni); _scene->addItem(ni); - ni->setSelected(true); + if (_selNodes.contains(n)) ni->setSelected(true); } for (auto it = _deleteEdges.begin(); it != _deleteEdges.end(); ++it) { @@ -229,6 +232,7 @@ AddEdgeCommand::AddEdgeCommand(TikzScene *scene, { } + void AddEdgeCommand::undo() { EdgeItem *ei = _scene->edgeItems()[_edge]; |