Bug 403761 - Incorrect display of interface widgets in the component diagram when adding a second connection
Summary: Incorrect display of interface widgets in the component diagram when adding a...
Status: RESOLVED FIXED
Alias: None
Product: umbrello
Classification: Applications
Component: general (show other bugs)
Version: 2.27.1 (KDE Applications 18.12.1)
Platform: Other Linux
: NOR normal
Target Milestone: ---
Assignee: Umbrello Development Group
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2019-01-30 11:10 UTC by Ralf Habacker
Modified: 2019-01-30 18:56 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In: 2.27.2 (KDE Applications 18.12.2)


Attachments
test case (17.81 KB, application/x-uml)
2019-01-30 11:10 UTC, Ralf Habacker
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Ralf Habacker 2019-01-30 11:10:37 UTC
Created attachment 117728 [details]
test case

STEPS TO REPRODUCE
1. start umbrello
2. load appended test case
3. add a dependency from new_component to interface

OBSERVED RESULT
The display of the interface is partially broken

EXPECTED RESULT
The interface should be displayed correctly after adding the dependency

SOFTWARE/OS VERSIONS
Linux/KDE Plasma: openSUSE Leap_42.3 
KDE Frameworks Version: 5.54.0
Qt Version: 5.11

ADDITIONAL INFORMATION
Comment 1 Ralf Habacker 2019-01-30 11:35:29 UTC
Git commit d5cb5adb7fe517ea796f08afa0840ebb6507bd4f by Ralf Habacker.
Committed on 30/01/2019 at 11:35.
Pushed by habacker into branch 'Applications/18.12'.

Fix 'incorrect display of interface widgets in the component diagram when adding a second connection'

With this commit a new class member WidgetBase::m_changesShape is
introduced to track widgets that changes it shape when the number of
connections or their positions are changed.
FIXED-IN:2.27.2 (KDE Applications 18.12.2)

M  +4    -0    umbrello/toolbarstateassociation.cpp
M  +4    -0    umbrello/umlwidgets/associationwidget.cpp
M  +2    -1    umbrello/umlwidgets/classifierwidget.cpp
M  +1    -0    umbrello/umlwidgets/umlwidget.cpp
M  +20   -1    umbrello/umlwidgets/widgetbase.cpp
M  +4    -0    umbrello/umlwidgets/widgetbase.h

https://commits.kde.org/umbrello/d5cb5adb7fe517ea796f08afa0840ebb6507bd4f
Comment 2 Ralf Habacker 2019-01-30 12:07:24 UTC
Git commit c2f15333696a9fd8b66ef546f5d38d677152eaea by Ralf Habacker.
Committed on 30/01/2019 at 12:07.
Pushed by habacker into branch 'Applications/18.12'.

Fixes the problem that the geometry of the interface widget was not updated when the connection was disconnected

M  +5    -0    umbrello/umlwidgets/umlwidget.cpp

https://commits.kde.org/umbrello/c2f15333696a9fd8b66ef546f5d38d677152eaea
Comment 3 Ralf Habacker 2019-01-30 18:56:37 UTC
Git commit a9ce7bc064a0c0910f046427eb26ee0ff99f4154 by Ralf Habacker.
Committed on 30/01/2019 at 18:55.
Pushed by habacker into branch 'Applications/18.12'.

In AssociationWidget::widgetMoved() fix endless loop

The loop has been caused by UMLWidget::updateGeometry() updating related
associations too.

Fixup of commit d5cb5adb7fe517ea796f08afa0840ebb6507bd4f.

M  +4    -4    umbrello/umlwidgets/associationwidget.cpp
M  +5    -2    umbrello/umlwidgets/umlwidget.cpp
M  +1    -1    umbrello/umlwidgets/umlwidget.h

https://commits.kde.org/umbrello/a9ce7bc064a0c0910f046427eb26ee0ff99f4154