Network: Fix edge delete whene there are multiple edge between two node.

This commit is contained in:
Pierre-Antoine Rouby committed 2024-04-16 15:15:30 +02:00
1 parent 9c5ea0bdd9
commit 0c0d7f3481
5 files changed
+22 -28

No files matched your search

+4
View File
@@ -457,9 +457,13 @@ class GraphWidget(QGraphicsView):
self.m_origin_y = 0.0
self.clicked = False
self.setup_scene(min_size, max_size, size)
def setup_scene(self, min_size, max_size, size):
scene = QGraphicsScene(self)
scene.setItemIndexMethod(QGraphicsScene.NoIndex)
scene.setSceneRect(0, 0, 2000, 2000)
self.setScene(scene)
self.setCacheMode(QGraphicsView.CacheBackground)
self.setViewportUpdateMode(QGraphicsView.BoundingRectViewportUpdate)
+5 -5
View File
@@ -40,7 +40,7 @@ class AddNodeCommand(QUndoCommand):
self._node = node
def undo(self):
self._graph.remove_node(self._node.name)
self._graph.remove_node(self._node)
def redo(self):
self._graph.insert_node(self._node)
@@ -85,9 +85,9 @@ class DelNodeCommand(QUndoCommand):
)
for edge in self._edges:
self._graph.remove_edge(edge.name)
self._graph.remove_edge(edge)
self._graph.remove_node(self._node.name)
self._graph.remove_node(self._node)
class AddEdgeCommand(QUndoCommand):
@@ -98,7 +98,7 @@ class AddEdgeCommand(QUndoCommand):
self._edge = edge
def undo(self):
self._graph.remove_edge(self._edge.name)
self._graph.remove_edge(self._edge)
def redo(self):
self._graph.insert_edge(self._edge)
@@ -115,7 +115,7 @@ class DelEdgeCommand(QUndoCommand):
self._graph.insert_edge(self._edge)
def redo(self):
self._graph.remove_edge(self._edge.name)
self._graph.remove_edge(self._edge)
class SetCommand(QUndoCommand):