[umbrello-devel] [umbrello] [Bug 115269] Implement the UML 2.0 standard

Oliver Kellogg okellogg at users.sourceforge.net
Sun Jul 27 08:34:19 UTC 2014


https://bugs.kde.org/show_bug.cgi?id=115269

--- Comment #17 from Oliver Kellogg <okellogg at users.sourceforge.net> ---
Git commit 44157ba7bf291e8860db54c921a605f2fecdb4f1 by Oliver Kellogg.
Committed on 27/07/2014 at 08:34.
Pushed by okellogg into branch 'master'.

Support socket (half circle) notation for interface required by component
or port on a component diagram:

umbrello/widgets/classifierwidget.h
- New constant SOCKET_INCREMENT defines the amount by which the socket
  arc is larger than the interface ball.

umbrello/widgets/classifierwidget.cpp
- In function shape() add SOCKET_INCREMENT to cirleSize if m_Assocs.size()
  is larger than 1.  The logic is that there can be only one interface
  provider, i.e. all further associations are related to interface clients.
  This could perhaps be refined, e.g. to support absence of provider.
- In function drawAsCircle() implement drawing of socket for required
  interface using QPainter::drawArc(). Choose orientation of arc depending
  on the position of the port/component in relation to the interface:
  - If port/component is left of  interface then draw arc at left
  - If port/component is right of interface then draw arc at right
  - If port/component is above    interface then draw arc at top
  - If port/component is below    interface then draw arc at bottom
  - If port/component is close to a diagonal of interface then draw arc
    oriented to the respective diagonal.

M  +65   -3    umbrello/widgets/classifierwidget.cpp
M  +1    -0    umbrello/widgets/classifierwidget.h

http://commits.kde.org/umbrello/44157ba7bf291e8860db54c921a605f2fecdb4f1

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the umbrello-devel mailing list