diff --git a/src/View/Scenarios/GraphWidget.py b/src/View/Scenarios/GraphWidget.py index c5ac6374..405ea596 100644 --- a/src/View/Scenarios/GraphWidget.py +++ b/src/View/Scenarios/GraphWidget.py @@ -66,11 +66,31 @@ class ScenarioItem(QGraphicsTextItem): def type(self): return ScenarioItem.Type + def boundingRect(self): + extra = 6 + return super(ScenarioItem, self)\ + .boundingRect()\ + .normalized()\ + .adjusted( + -extra, -extra, + extra, extra + ) + @timer def paint(self, painter, option, widget): - color = QColor(Qt.white) + extra = 2 + pcolor = QColor(Qt.black) + color = QColor("#aac3d7") + if self.graph.graph.status.scenario is self.scenario: + color = QColor("#eeaba5") + elif self.scenario.id == 0: + color = QColor("#d3c1d8") - painter.setPen(Qt.NoPen) + painter.setPen( + QPen( + pcolor, 2, Qt.SolidLine, Qt.RoundCap, Qt.RoundJoin + ) + ) painter.setBrush(QBrush(color)) painter.drawEllipse(self.boundingRect()) @@ -172,10 +192,11 @@ class EdgeItem(QGraphicsItem): return poly def get_line_item_point(self, item): + item_extra = 6 rect = item.boundingRect() return QPointF( - item.pos().x() + (rect.width() / 2.0), - item.pos().y() + (rect.height() / 2.0) + item.pos().x() + ((rect.width() - item_extra) / 2.0), + item.pos().y() + ((rect.height() - item_extra) / 2.0) )