diff --git a/src/View/Network/GraphWidget.py b/src/View/Network/GraphWidget.py index 08e76335033a455666609c6560e6b725386d60d1..dd9ff531efc677b4587b135a41511ed2efdf8d15 100644 --- a/src/View/Network/GraphWidget.py +++ b/src/View/Network/GraphWidget.py @@ -73,7 +73,10 @@ class NodeItem(QGraphicsItem): def shape(self): path = QPainterPath() - path.addEllipse(-10, -10, 20, 20) + if self.graph.parent._reservoir.get_assoc_to_node(self.node) is None: + path.addEllipse(-10, -10, 20, 20) + else: + path.addRect(-10, -10, 20, 20) return path @timer @@ -95,7 +98,10 @@ class NodeItem(QGraphicsItem): color = Qt.green painter.setBrush(QBrush(color)) - painter.drawEllipse(-10, -10, 20, 20) + if self.graph.graph._reservoir.get_assoc_to_node(self.node) is None: + painter.drawEllipse(-10, -10, 20, 20) + else: + painter.drawRect(-10, -10, 20, 20) def itemChange(self, change, value): if change == QGraphicsItem.ItemPositionHasChanged: @@ -610,11 +616,15 @@ class GraphWidget(QGraphicsView): def add_node_reservoir(self, node): self.parent.add_node_reservoir(node) + self.display_update() def del_node_reservoir(self, node): self.parent.del_node_reservoir(node) + self.changeNode.emit(self.sender()) + self.display_update() def edit_node_reservoir(self, node): + self.changeNode.emit(self.sender()) self.parent.edit_node_reservoir(node) def enable_edge(self, edge, prev): @@ -1020,3 +1030,4 @@ class GraphWidget(QGraphicsView): graph=self.graph, trad=self._trad, parent=self ) m.run() + self.clicked = False