turn node shape to square when the node is a reservoir

adists_release
Theophile Terraz 2024-07-05 15:52:45 +02:00
parent b83494888b
commit 90272fa444
1 changed files with 13 additions and 2 deletions

View File

@ -73,7 +73,10 @@ class NodeItem(QGraphicsItem):
def shape(self): def shape(self):
path = QPainterPath() 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 return path
@timer @timer
@ -95,7 +98,10 @@ class NodeItem(QGraphicsItem):
color = Qt.green color = Qt.green
painter.setBrush(QBrush(color)) 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): def itemChange(self, change, value):
if change == QGraphicsItem.ItemPositionHasChanged: if change == QGraphicsItem.ItemPositionHasChanged:
@ -610,11 +616,15 @@ class GraphWidget(QGraphicsView):
def add_node_reservoir(self, node): def add_node_reservoir(self, node):
self.parent.add_node_reservoir(node) self.parent.add_node_reservoir(node)
self.display_update()
def del_node_reservoir(self, node): def del_node_reservoir(self, node):
self.parent.del_node_reservoir(node) self.parent.del_node_reservoir(node)
self.changeNode.emit(self.sender())
self.display_update()
def edit_node_reservoir(self, node): def edit_node_reservoir(self, node):
self.changeNode.emit(self.sender())
self.parent.edit_node_reservoir(node) self.parent.edit_node_reservoir(node)
def enable_edge(self, edge, prev): def enable_edge(self, edge, prev):
@ -1020,3 +1030,4 @@ class GraphWidget(QGraphicsView):
graph=self.graph, trad=self._trad, parent=self graph=self.graph, trad=self._trad, parent=self
) )
m.run() m.run()
self.clicked = False