https://bugs.kde.org/show_bug.cgi?id=447866
--- Comment #12 from Oliver Kellogg <okell...@users.sourceforge.net> --- Git commit 8bb117e11a887be9704f8711dbb0ac4afa797eb2 by Oliver Kellogg. Committed on 16/02/2022 at 17:21. Pushed by okellogg into branch 'master'. Followup to commit dc485c1 smoothing of associationwidget endpoints: umbrello/umlwidgets/associationwidget.{h,cpp} - Readd #define PIXEL_TOLERANCE but with value 30. Experiments show that this larger tolerance is required. - Add function findIntercept(const QRectF& rect, const QPointF& point, QPointF& result) returning bool true if the line from the center of `rect' to `point' intersects with one of rect's sides, and returning the intersection point in `result'. - Remove functions updateRegionLineCount, doUpdates, getRegionCount. - Re-remove obsoleted members (as previously done in commit f80bd68): findInterceptOnEdge, insertIntoLists, m_positions, m_positions_len, m_ordered. - Static function setStartAndEndPoint factors the point calculation logic from updateAssociations() for reuse in other contexts. - Declare function updateAssociations `static' and change arguments to UMLWidget *pWidget, AssociationWidgetList list. For details see documentation at the implementation. - Readd function linePathEndsAt in symmetry with linePathStartsAt. umbrello/umlwidgets/associationwidget.cpp - In function linePathStartsAt, - document why we are not using widget->contains(lpStart); - remove bool result1 and its calculation. - In function cleanup() remove calls that may lead to crash due to possible call of calculateEndingPoints on the AssociationWidget being removed. - In function moveEvent test of m_role[RoleType::B].changeabilityWidget test movingPoint against pos-1 instead of against 1. - In function calculateEndingPoints, - call setStartAndEndPoint(this, m_role[RoleType::A].umlWidget); - call setStartAndEndPoint(this, m_role[RoleType::B].umlWidget); - define local assocList as shorthand for m_scene->associationList(); - call updateAssociations(m_role[RoleType::A].umlWidget, assocList); - call updateAssociations(m_role[RoleType::B].umlWidget, assocList). - Reduce function updateAssociations to loop over the passed in AssociationWidgetList and call setStartAndEndPoint on each assocwidget. M +214 -761 umbrello/umlwidgets/associationwidget.cpp M +5 -15 umbrello/umlwidgets/associationwidget.h https://invent.kde.org/sdk/umbrello/commit/8bb117e11a887be9704f8711dbb0ac4afa797eb2 -- You are receiving this mail because: You are watching all bug changes.