Skip to content
Commit 44157ba7 authored by Oliver Kellogg's avatar Oliver Kellogg
Browse files

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.

CCBUG:115269
parent a23485f3
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment