umbrello 2.39.0
Umbrello UML Modeller is a Unified Modelling Language (UML) diagram program based on KDE Technology
|
This class represents an association inside a diagram. Bugs and comments to umbre.nosp@m.llo-.nosp@m.devel.nosp@m.@kde.nosp@m..org or https://bugs.kde.org. More...
#include <associationwidget.h>
Public Slots | |
virtual void | slotMenuSelection (QAction *action) |
void | slotClassifierListItemRemoved (UMLClassifierListItem *obj) |
void | slotAttributeChanged () |
void | syncToModel () |
![]() | |
virtual void | slotMenuSelection (QAction *trigger) |
Static Public Member Functions | |
static AssociationWidget * | create (UMLScene *scene) |
static AssociationWidget * | create (UMLScene *scene, UMLWidget *WidgetA, Uml::AssociationType::Enum assocType, UMLWidget *WidgetB, UMLObject *umlobject=nullptr) |
![]() | |
static QString | toString (WidgetType wt) |
static QString | toI18nString (WidgetType wt) |
static Icon_Utils::IconType | toIcon (WidgetType wt) |
static bool | widgetHasUMLObject (WidgetBase::WidgetType type) |
Protected Member Functions | |
virtual void | contextMenuEvent (QGraphicsSceneContextMenuEvent *event) |
virtual void | hoverEnterEvent (QGraphicsSceneHoverEvent *event) |
virtual void | hoverLeaveEvent (QGraphicsSceneHoverEvent *event) |
virtual void | hoverMoveEvent (QGraphicsSceneHoverEvent *event) |
![]() | |
QVariant | itemChange (GraphicsItemChange change, const QVariant &value) |
Static Private Member Functions | |
static Uml::Region::Enum | findPointRegion (const QRectF &rect, const QPointF &pos) |
static bool | findIntercept (const QRectF &rect, const QPointF &point, QPointF &result) |
static QLineF::IntersectType | intersect (const QRectF &rect, const QLineF &line, QPointF *intersectionPoint) |
static QPointF | swapXY (const QPointF &p) |
static QPointF | midPoint (const QPointF &p0, const QPointF &p1) |
static bool | setStartAndEndPoint (AssociationWidget *assocwidget, UMLWidget *pWidget) |
static void | updateAssociations (UMLWidget *pWidget, AssociationWidgetList list) |
Private Attributes | |
bool | m_activated |
flag which is true if the activate method has been called for this class instance | |
int | m_unNameLineSegment |
QPointF | m_oldNamePoint |
Position of name floatingtext saved by saveIdealTextPositions() | |
QPointF | m_oldMultiAPoint |
Position of role A multiplicity floatingtext saved by saveIdealTextPositions() | |
QPointF | m_oldMultiBPoint |
Position of role B multiplicity floatingtext saved by saveIdealTextPositions() | |
QPointF | m_oldChangeAPoint |
Position of role A changeability floatingtext saved by saveIdealTextPositions() | |
QPointF | m_oldChangeBPoint |
Position of role B changeability floatingtext saved by saveIdealTextPositions() | |
QPointF | m_oldRoleAPoint |
Position of role A name floatingtext saved by saveIdealTextPositions() | |
QPointF | m_oldRoleBPoint |
Position of role B name floatingtext saved by saveIdealTextPositions() | |
int | m_nLinePathSegmentIndex |
anchor for m_pAssocClassLine | |
QGraphicsLineItem * | m_pAssocClassLine |
used for connecting assoc. class | |
QGraphicsRectItem * | m_pAssocClassLineSel0 |
selection decoration for the start point of the assoc. class line | |
QGraphicsRectItem * | m_pAssocClassLineSel1 |
selection decoration for the end point of the assoc. class line | |
AssociationLine | m_associationLine |
the definition points for the association line | |
ClassifierWidget * | m_associationClass |
used if we have an assoc. class | |
Uml::AssociationType::Enum | m_associationType |
is only used if m_pObject is not set | |
AssociationWidgetRole | m_role [2] |
FloatingTextWidget * | m_nameWidget |
displays the name of this association | |
QPointF | m_eventScenePos |
holds scene pos of contextMenuEvent() | |
Additional Inherited Members | |
![]() | |
enum | WidgetType { wt_Min = 299 , wt_UMLWidget , wt_Actor , wt_UseCase , wt_Class , wt_Interface , wt_Datatype , wt_Enum , wt_Entity , wt_Package , wt_Object , wt_Note , wt_Box , wt_Message , wt_Text , wt_State , wt_Activity , wt_Component , wt_Artifact , wt_Node , wt_Association , wt_ForkJoin , wt_Precondition , wt_CombinedFragment , wt_FloatingDashLine , wt_Signal , wt_Pin , wt_ObjectNode , wt_Region , wt_Category , wt_Port , wt_Instance , wt_Max } |
![]() | |
UMLScene * | m_scene |
QPointer< UMLObject > | m_umlObject |
QString | m_Doc |
Only used if m_umlObject is not set. | |
QString | m_Text |
QRectF | m_rect |
Widget size. In this rectangle, the x and y coordinates are always 0. | |
Uml::ID::Type | m_nId |
Uml::ID::Type | m_nLocalID |
QColor | m_textColor |
Color of the text of the widget. Is saved to XMI. | |
QColor | m_lineColor |
Color of the lines of the widget. Is saved to XMI. | |
QColor | m_fillColor |
color of the background of the widget | |
QBrush | m_brush |
QFont | m_font |
uint | m_lineWidth |
Width of the lines of the widget. Is saved to XMI. | |
bool | m_useFillColor |
flag indicates if the UMLWidget uses the Diagram FillColour | |
bool | m_usesDiagramFillColor |
bool | m_usesDiagramLineColor |
bool | m_usesDiagramLineWidth |
bool | m_usesDiagramTextColor |
bool | m_usesDiagramUseFillColor |
bool | m_autoResize |
bool | m_changesShape |
The widget changes its shape when the number of connections or their positions are changed. | |
![]() | |
bool | m_calledFromItemChange {false} |
![]() | |
QString | m_SequenceNumber |
This class represents an association inside a diagram. Bugs and comments to umbre.nosp@m.llo-.nosp@m.devel.nosp@m.@kde.nosp@m..org or https://bugs.kde.org.
This class represents an association inside a diagram.
Constructor is made non accessible: Users shall use the static create() methods for constructing AssociationWidgets.
Associations exist not only between UML objects. For example, when a Note is attached to a UML object, the Note itself is not a UML object. This class supports both kinds of associations. An association where one or both roles are not a UML object is called a "pure widget association".
An AssociationWidget where both roles are UML objects has a corresponding UMLAssociation. The UMLAssociation can be retrieved using the getAssociation method. A pure widget association does not have a corresponding UMLAssociation. The getAssociation method returns nullptr in this case.
|
virtual |
Destructor.
|
private |
Constructor is private because the static create() methods shall be used for constructing AssociationWidgets.
scene | The parent view of this widget. |
|
virtual |
Activates the AssociationWidget after a load.
Reimplemented from WidgetBase.
UMLAssociation * AssociationWidget::association | ( | ) | const |
Returns the UMLAssociation representation of this object.
AssociationLine & AssociationWidget::associationLine | ( | ) |
Returns a writable reference to the association widget's line path.
const AssociationLine & AssociationWidget::associationLine | ( | ) | const |
Returns a const reference to the association widget's line path.
Uml::AssociationType::Enum AssociationWidget::associationType | ( | ) | const |
Gets the association's type.
UMLAttribute * AssociationWidget::attribute | ( | ) | const |
Returns the UMLAttribute representation of this object.
|
virtual |
Returns the bounding rectangle of all segments of the association.
Reimplemented from WidgetBase.
void AssociationWidget::calculateEndingPoints | ( | ) |
This function acts as delegator to the static method updateAssociations() but additionally handles object bound special cases (self association, exception association, associationline insufficient points, association class connecting line).
|
virtual |
Calculates the m_unNameLineSegment index according to m_nameWidget middle point PT. It iterates through all AssociationLine's segments and for each one calculates the sum of PT's distance to the start point + PT's distance to the end point. The segment with the smallest sum will be the RoleTextSegment (if this segment moves then the RoleText will move with it). It sets m_unNameLineSegment to the start point of the chosen segment.
Overrides operation from LinkWidget (i.e. this method is also required by FloatingTextWidget.)
Reimplemented from LinkWidget.
|
private |
This function calculates which role should be set for the m_nameWidget FloatingTextWidget.
|
private |
Calculates the position of the text widget depending on the role that widget is playing. Returns the point at which to put the widget.
Uml::Changeability::Enum AssociationWidget::changeability | ( | Uml::RoleType::Enum | role | ) | const |
Gets the changeability on the given end of the Association.
FloatingTextWidget * AssociationWidget::changeabilityWidget | ( | Uml::RoleType::Enum | role | ) | const |
Return the given role's changeability FloatingTextWidget widget.
|
private |
|
private |
|
private |
Remove point close to the given point and redraw the association.
scenePos | point which should be removed |
void AssociationWidget::cleanup | ( | ) |
Cleans up all the association's data in the related widgets.
void AssociationWidget::clipSize | ( | ) |
void AssociationWidget::computeAssocClassLine | ( | ) |
Compute the end points of m_pAssocClassLine in case this association has an attached association class. TODO: Bring decoration points to life (https://bugs.kde.org/show_bug.cgi?id=447866)
|
virtual |
Constrains the FloatingTextWidget X and Y values supplied. Implements the abstract operation from LinkWidget.
textX | Candidate X value (may be modified by the constraint.) |
textY | Candidate Y value (may be modified by the constraint.) |
textWidth | Width of the text. |
textHeight | Height of the text. |
tr | Uml::Text_Role of the text. |
Implements LinkWidget.
bool AssociationWidget::containsAsEndpoint | ( | UMLWidget * | widget | ) |
Returns true if the Widget is either at the starting or ending side of the association.
|
protectedvirtual |
Event handler for context menu events, called from the line segments.
Reimplemented from WidgetBase.
|
static |
This constructor is only for loading from XMI, otherwise it should not be used as it creates an incomplete associationwidget.
scene | The parent view of this widget. |
|
static |
Preferred constructor (static factory method.)
scene | The parent view of this widget. |
pWidgetA | Pointer to the role A widget for the association. |
assocType | The AssociationType::Enum for this association. |
pWidgetB | Pointer to the role B widget for the association. |
umlobject | Pointer to the underlying UMLObject (if applicable.) |
void AssociationWidget::createAssocClassLine | ( | ) |
Creates the association class connecting line.
void AssociationWidget::createAssocClassLine | ( | ClassifierWidget * | classifier, |
int | linePathSegmentIndex ) |
Creates the association class connecting line using the specified ClassifierWidget.
classifier | The ClassifierWidget to use. |
linePathSegmentIndex | The index of the segment where the association class is created. |
|
private |
Creates the points of the association exception. Method called when a widget end points are calculated by calculateEndingPoints().
|
private |
Creates the points of the self association. Method called when widget end points are calculated by calculateEndingPoints().
|
virtual |
Overrides operation from LinkWidget. Required by FloatingTextWidget.
Implements LinkWidget.
|
staticprivate |
Given a rectangle and a point, compute the connecting line between the middle point of the rectangle and the point, and return the intersection point of this line with one of the sides of the rectangle.
rect | rolewidget's rectangle with scene x and y values |
point | ending point of the line that starts at rect's center |
result | return value: intersection point with one of rect's sides |
|
staticprivate |
Finds out which region of rectangle 'rect' contains the point 'pos' and returns the region number: 1 = Region 1 (West) 2 = Region 2 (North) 3 = Region 3 (East) 4 = Region 4 (South) 5 = On diagonal 2 between Region 1 and 2 (NorthWest) 6 = On diagonal 1 between Region 2 and 3 (NorthEast) 7 = On diagonal 2 between Region 3 and 4 (SouthEast) 8 = On diagonal 1 between Region 4 and 1 (SouthWest) 9 = On diagonal 1 and on diagonal 2 (Center)
|
virtual |
Return the first font found being used by any child widget. (They could be different fonts, so this is a slightly misleading method.)
Reimplemented from WidgetBase.
|
protectedvirtual |
Reimplemented event handler for hover enter events.
|
protectedvirtual |
Reimplemented event handler for hover leave events.
|
protectedvirtual |
Reimplemented event handler for hover move events.
|
staticprivate |
Returns the Region the widget to line intersection is for the given widget in this Association. If the given widget is not in the Association then Region::Error is returned. Used by calculateEndingPoints to work these positions out for another Association - since the number of Associations on the same region for the same widget will mean the lines will need to be spread out across the region.
Find the border point of the given rect when a line is drawn from the given point to the rect.
rect | rect of a classifier |
line | a line to the rect |
intersectionPoint | the intercept point on the border of the rect |
bool AssociationWidget::isActivated | ( | ) | const |
Read property of bool m_activated.
bool AssociationWidget::isAutoLayouted | ( | ) |
bool AssociationWidget::isCollaboration | ( | ) | const |
Returns true if this AssociationWidget represents a collaboration message.
bool AssociationWidget::isLayoutChangeable | ( | ) |
if layout of this widget can be changed
bool AssociationWidget::isPointAddable | ( | ) |
Return state if the association line point in the vicinity of the last context menu event position is addable or not. A point is addable if the association is not an Exception and there is no point nearby.
bool AssociationWidget::isPointRemovable | ( | ) |
Return state if the association line point in the vicinity of the last context menu event position is removable or not. A point is removable if the association is not an Exception and is not the start or end point.
bool AssociationWidget::isSelf | ( | ) | const |
Returns true if this AssociationWidget represents a self message.
|
private |
Returns true if the line path ends at the given widget.
|
private |
Returns true if the line path starts at the given widget.
|
virtual |
Queries the UMLView for resolving the role A and role B widgets. ....
Reimplemented from WidgetBase.
bool AssociationWidget::loadFromXMI | ( | QDomElement & | qElement, |
const UMLWidgetList & | widgets, | ||
const MessageWidgetList * | messages ) |
Uses the supplied widgetList for resolving the role A and role B widgets. (The other loadFromXMI() queries the UMLScene for these widgets.) Required for clipboard operations.
|
virtual |
Overrides operation from LinkWidget. Required by FloatingTextWidget.
Implements LinkWidget.
|
virtual |
Overrides operation from LinkWidget. Required by FloatingTextWidget.
Implements LinkWidget.
|
virtual |
Set all 'owned' child widgets to this font.
Implements LinkWidget.
|
private |
Merges/syncs the association widget data into UML object representation. This will synchronize UMLAssociation w/ this new Widget CHECK: Can we get rid of this.
|
staticprivate |
Return the mid point between p0 and p1
|
virtual |
Adds a break point (if left mouse button).
|
virtual |
Moves the break point being dragged.
|
virtual |
Sets the association to be selected.
|
virtual |
Displays the right mouse buttom menu if right button is pressed.
void AssociationWidget::moveEntireAssoc | ( | qreal | x, |
qreal | y ) |
Moves the entire association by the given offset.
|
private |
Overrides moveEvent.
void AssociationWidget::moveMidPointsBy | ( | qreal | x, |
qreal | y ) |
Moves all the mid points (all except start /end) by the given amount.
QString AssociationWidget::multiplicity | ( | Uml::RoleType::Enum | role | ) | const |
Return the given role's multiplicity text.
FloatingTextWidget * AssociationWidget::multiplicityWidget | ( | Uml::RoleType::Enum | role | ) | const |
Return the multiplicity FloatingTextWidget widget of the given role.
QString AssociationWidget::name | ( | ) | const |
Returns the m_nameWidget's text.
FloatingTextWidget * AssociationWidget::nameWidget | ( | ) | const |
Read property of FloatingTextWidget* m_nameWidget.
bool AssociationWidget::onAssocClassLine | ( | const QPointF & | point | ) |
Returns true if the given point is on the connecting line to the association class. Returns false if there is no association class attached, or if the given point is not on the connecting line.
bool AssociationWidget::onAssociation | ( | const QPointF & | point | ) |
Returns true if the given point is on the association line. A circle (rectangle) around the point is used to obtain more tolerance.
point | the point to check |
|
virtual |
Reimplement method from WidgetBase in order to check owned floating texts.
p | Point to be checked. |
Reimplemented from WidgetBase.
|
virtual |
Implements operation from LinkWidget. Motivated by FloatingTextWidget.
Implements LinkWidget.
|
virtual |
Overrides operation from LinkWidget. Required by FloatingTextWidget.
Reimplemented from LinkWidget.
bool AssociationWidget::operator!= | ( | AssociationWidget & | other | ) | const |
Overrides the != operator.
bool AssociationWidget::operator== | ( | const AssociationWidget & | other | ) | const |
Overrides the equality test operator.
void AssociationWidget::removeAssocClassLine | ( | ) |
Remove dashed connecting line for association class.
|
virtual |
Calls setTextPosition on all the labels. Overrides operation from LinkWidget.
Reimplemented from LinkWidget.
QString AssociationWidget::roleDocumentation | ( | Uml::RoleType::Enum | role | ) | const |
Returns the given role's documentation.
QString AssociationWidget::roleName | ( | Uml::RoleType::Enum | role | ) | const |
Return the given role's FloatingTextWidget widget text.
FloatingTextWidget * AssociationWidget::roleWidget | ( | Uml::RoleType::Enum | role | ) | const |
Return the given role's FloatingTextWidget object.
void AssociationWidget::saveIdealTextPositions | ( | ) |
Auxiliary method for widgetMoved(): Saves all ideally computed floatingtext positions before doing any kind of change. This is necessary because a single invocation of calculateEndingPoints() modifies the AssociationLine ending points on ALL AssociationWidgets. This means that if we don't save the old ideal positions then they are irretrievably lost as soon as calculateEndingPoints() is invoked.
|
virtual |
Saves this widget to the "assocwidget" XMI element.
Reimplemented from WidgetBase.
void AssociationWidget::selectAssocClassLine | ( | bool | sel = true | ) |
Renders the association class connecting line selected.
void AssociationWidget::setActivated | ( | bool | active | ) |
Set the m_activated flag of a widget but does not perform the Activate method.
void AssociationWidget::setAssociationType | ( | Uml::AssociationType::Enum | type | ) |
Sets the association's type.
type | The AssociationType::Enum to set. |
void AssociationWidget::setChangeability | ( | Uml::Changeability::Enum | value, |
Uml::RoleType::Enum | role ) |
Sets the changeability on the given end of the Association.
|
private |
For internal purposes only. Other classes/users should use setChangeability() instead.
|
virtual |
Overrides operation from LinkWidget. Required by FloatingTextWidget.
Implements LinkWidget.
|
private |
Change, create, or delete the FloatingTextWidget indicated by the given TextRole::Enum.
role | TextRole::Enum of the FloatingTextWidget to change or create. |
text | Text string that controls the action: If empty and ft is NULL then setFloatingText() is a no-op. If empty and ft is non-NULL then the existing ft is deleted. If non-empty and ft is NULL then a new FloatingTextWidget is created and returned in ft with the text set. If non-empty and ft is non-NULL then the existing ft text is modified. |
ft | Reference to the pointer to FloatingTextWidget to change or create. On creation/deletion, the pointer value will be changed. |
|
virtual |
Sets the line color
color | The new line color |
Reimplemented from WidgetBase.
|
virtual |
Sets the line width
width | The new line width |
Reimplemented from WidgetBase.
|
virtual |
Overrides operation from LinkWidget. Required by FloatingTextWidget.
ft | The text widget which to update. |
Implements LinkWidget.
void AssociationWidget::setMultiplicity | ( | const QString & | text, |
Uml::RoleType::Enum | role ) |
Sets the text in the FloatingTextWidget representing the multiplicity at the given side of the association.
|
virtual |
Sets the text in the FloatingTextWidget widget representing the Name of this association.
Reimplemented from WidgetBase.
|
virtual |
Implements operation from LinkWidget. Motivated by FloatingTextWidget.
Implements LinkWidget.
|
virtual |
Overrides operation from LinkWidget. Required by FloatingTextWidget.
op | The new operation string to set. |
Implements LinkWidget.
void AssociationWidget::setRoleDocumentation | ( | const QString & | doc, |
Uml::RoleType::Enum | role ) |
Set the documentation on the given role.
void AssociationWidget::setRoleName | ( | const QString & | strRole, |
Uml::RoleType::Enum | role ) |
Sets the text to the FloatingTextWidget that display the Role text of this association. For this function to work properly, the associated widget should already be set.
|
virtual |
Sets the state of whether the widget is selected.
_select | The state of whether the widget is selected. |
Reimplemented from WidgetBase.
|
staticprivate |
void AssociationWidget::setStereotype | ( | const QString & | stereo | ) |
|
virtual |
Sets the text of the given FloatingTextWidget. Overrides operation from LinkWidget. Required by FloatingTextWidget.
Implements LinkWidget.
|
virtual |
Set all 'owned' child widgets to this text color.
Reimplemented from WidgetBase.
|
private |
Puts the text widget with the given role at a recalculated position. This method calls calculateTextPosition to get the needed position. I.e. the line segment it is on has moved and its position should move the same amount as the line.
|
private |
Moves the text widget with the given role by the difference between the two points.
|
private |
Set our internal umlAssociation.
|
virtual |
Overriding the method from WidgetBase because we need to do something extra in case this AssociationWidget represents an attribute of a classifier.
Reimplemented from WidgetBase.
void AssociationWidget::setVisibility | ( | Uml::Visibility::Enum | value, |
Uml::RoleType::Enum | role ) |
Sets the visibility on the given role of the association.
void AssociationWidget::setWidgetForRole | ( | UMLWidget * | widget, |
Uml::RoleType::Enum | role ) |
Set the widget of the given role. Add this AssociationWidget at the widget. If this AssociationWidget has an underlying UMLAssociation then set the widget's underlying UMLObject at the UMLAssociation's role object.
widget | Pointer to the UMLWidget. |
role | Role for which to set the widget. |
void AssociationWidget::setXEntireAssoc | ( | qreal | x | ) |
Set all association points to x coordinate.
void AssociationWidget::setYEntireAssoc | ( | qreal | y | ) |
Set all association points to y coordinate.
|
virtual |
Returns the shape of all segments of the association.
|
virtual |
Shows the association properties dialog and updates the corresponding texts if its execution is successful.
Reimplemented from WidgetBase.
|
slot |
Connected to UMLObject::modified() in case this AssociationWidget is linked to a classifer's attribute type.
|
slot |
Connected to UMLClassifier::attributeRemoved() or UMLEntity::constraintRemoved() in case this AssociationWidget is linked to a classifier list item (an attribute or a foreign key constraint)
obj | The UMLClassifierListItem removed. |
|
virtualslot |
Handles the selection from the popup menu.
|
staticprivate |
Returns a point with interchanged X and Y coordinates.
|
slot |
FloatingTextWidget * AssociationWidget::textWidgetByRole | ( | Uml::TextRole::Enum | tr | ) | const |
Return the FloatingTextWidget object indicated by the given TextRole::Enum.
QString AssociationWidget::toString | ( | ) | const |
Returns a QString Object representing this AssociationWidget.
|
staticprivate |
Used by calculateEndingPoints. For all association widgets of the scene, if one of the assocwidget's role widgets is the passed in widget then
pWidget | Pointer to the widget to seek as the role A or B widget in all association widgets of the scene. |
list | The association widgets to analyze/update |
|
private |
Adjusts the points of the association exception. Method called when a widget was moved by widgetMoved(widget, x, y).
|
private |
Adjusts the points of the self association. Method called when a widget was moved by widgetMoved(widget, x, y).
Visibility::Enum AssociationWidget::visibility | ( | Uml::RoleType::Enum | role | ) | const |
Gets the visibility on the given role of the association.
UMLWidget * AssociationWidget::widgetForRole | ( | Uml::RoleType::Enum | role | ) | const |
Gets the given role widget.
Uml::ID::Type AssociationWidget::widgetIDForRole | ( | Uml::RoleType::Enum | role | ) | const |
Gets the ID of the given role widget.
Uml::ID::Type AssociationWidget::widgetLocalIDForRole | ( | Uml::RoleType::Enum | role | ) | const |
Gets the local ID of the given role widget.
void AssociationWidget::widgetMoved | ( | UMLWidget * | widget, |
qreal | dx, | ||
qreal | dy ) |
Adjusts the ending point of the association that connects to Widget.
|
private |
flag which is true if the activate method has been called for this class instance
|
private |
used if we have an assoc. class
|
private |
the definition points for the association line
|
private |
is only used if m_pObject is not set
|
private |
holds scene pos of contextMenuEvent()
|
private |
displays the name of this association
|
private |
anchor for m_pAssocClassLine
|
private |
Position of role A changeability floatingtext saved by saveIdealTextPositions()
|
private |
Position of role B changeability floatingtext saved by saveIdealTextPositions()
|
private |
Position of role A multiplicity floatingtext saved by saveIdealTextPositions()
|
private |
Position of role B multiplicity floatingtext saved by saveIdealTextPositions()
|
private |
Position of name floatingtext saved by saveIdealTextPositions()
|
private |
Position of role A name floatingtext saved by saveIdealTextPositions()
|
private |
Position of role B name floatingtext saved by saveIdealTextPositions()
|
private |
used for connecting assoc. class
|
private |
selection decoration for the start point of the assoc. class line
|
private |
selection decoration for the end point of the assoc. class line
|
private |
|
private |
When the association has a Role Floating Text this text should move when the AssociationLine moves but only if the closest segment to the role text moves. This segment is: m_associationLine[m_unNameLineSegment] – m_associationLine[m_unNameLineSegment+1]