From cec8eac4326752968558acb9f1672e6443b1c678 Mon Sep 17 00:00:00 2001 From: Pierre-Antoine Rouby <pierre-antoine.rouby@inrae.fr> Date: Fri, 24 Mar 2023 08:42:45 +0100 Subject: [PATCH] network: Fix edge bounding rect. --- src/view/network/GraphWidget.py | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/src/view/network/GraphWidget.py b/src/view/network/GraphWidget.py index b796abc8..86b40fa0 100644 --- a/src/view/network/GraphWidget.py +++ b/src/view/network/GraphWidget.py @@ -132,9 +132,6 @@ class EdgeItem(QGraphicsItem): self.graph = graph_widget - self.src_pos = src_node_item.pos() - self.dest_pos = dest_node_item.pos() - self.setAcceptedMouseButtons(Qt.NoButton) self.adjust() @@ -169,15 +166,20 @@ class EdgeItem(QGraphicsItem): extra = (pen_width + 5) / 2.0 return QRectF( - self.src_pos, + self.src_node.pos(), QSizeF( - self.dest_pos.x() - self.src_pos.x(), - self.dest_pos.y() - self.src_pos.y() + self.dest_node.pos().x() - self.src_node.pos().x(), + self.dest_node.pos().y() - self.src_node.pos().y() ) ).normalized().adjusted(-extra, -extra, extra, extra) def paint(self, painter, option, widget): - # Draw the line itself. + color = QColor(Qt.white) + color.setAlpha(128) + + painter.setBrush(color) + painter.drawRect(self.boundingRect()) + line = QLineF(self.src_node.pos(), self.dest_node.pos()) if line.length() == 0.0: -- GitLab