https://bugs.kde.org/show_bug.cgi?id=403692
--- Comment #3 from Oliver Kellogg <[email protected]> --- Git commit 2d1468b2940032e8eae83fcc7b7a122e184fd28c by Oliver Kellogg. Committed on 08/01/2021 at 21:00. Pushed by okellogg into branch 'master'. Fix misplacement of startpoint on associationline originating at port: umbrello/umlwidgets/umlwidget.{h,cpp} - Add virtual functions getX / getY returning qreal and getPos returning QPointF. Default implementation calls QGraphicsObjectWrapper functions x() / y() / pos(). umbrello/umlwidgets/pinportbase.{h,cpp} - Reimplement virtual functions getX / getY and getPos. They call the respective function of UMLWidget but add the respective component of parentItem() (i.e. x(), y(), pos() resp.) Reason: PinPortBase coordinates are relative to their ComponentWidget. umbrello/toolbarstateassociation.cpp - In function setSecondWidget, after creating the AssociationWidget check whether widgetA is a PortWidget. If it is then - store widgetA->getPos() to local variable lineStart; - set the startpoint of the association line to lineStart. umbrello/umlwidgets/associationwidget.cpp - Use new UMLWidget functions getX / getY / getPos in all code that is related to association line calculation and update: Function calculateEndingPoints, doUpdates, updateRegionLineCount. M +6 -1 umbrello/toolbarstateassociation.cpp M +11 -11 umbrello/umlwidgets/associationwidget.cpp M +16 -1 umbrello/umlwidgets/pinportbase.cpp M +5 -1 umbrello/umlwidgets/pinportbase.h M +34 -1 umbrello/umlwidgets/umlwidget.cpp M +3 -0 umbrello/umlwidgets/umlwidget.h https://invent.kde.org/sdk/umbrello/commit/2d1468b2940032e8eae83fcc7b7a122e184fd28c -- You are receiving this mail because: You are watching all bug changes.
