umbrello
2.34.3
Umbrello UML Modeller is a Unified Modelling Language (UML) diagram program based on KDE Technology
|
Go to the documentation of this file.
6 #ifndef ASSOCIATIONLINE_H
7 #define ASSOCIATIONLINE_H
11 #include <QGraphicsObject>
21 class QXmlStreamWriter;
53 virtual void paint(QPainter *painter,
const QStyleOptionGraphicsItem *option, QWidget *widget);
56 virtual QPainterPath
shape()
const;
58 void alignTo(
const QLineF& line);
110 QPointF
point(
int index)
const;
133 bool setEndPoints(
const QPointF &start,
const QPointF &end);
138 void saveToXMI(QXmlStreamWriter& writer);
140 QBrush
brush()
const;
145 virtual void paint(QPainter* painter,
const QStyleOptionGraphicsItem* option, QWidget* widget);
147 QPainterPath
path()
const;
150 QPainterPath
shape()
const;
@ Circle
Definition: associationline.h:43
AssociationLine(AssociationWidget *association)
Definition: associationline.cpp:37
static QPainterPath createBezierCurve(QVector< QPointF > points)
Definition: associationline.cpp:935
void hoverEnterEvent(QGraphicsSceneHoverEvent *event)
Definition: associationline.cpp:1231
void removeCollaborationLine()
Definition: associationline.cpp:687
void setPen(const QPen &pen)
Definition: associationline.cpp:441
SymbolType symbolType() const
Definition: associationline.cpp:1423
A structure to hold a table of values for all symbols.
Definition: associationline.h:73
void setPen(const QPen &pen)
Definition: associationline.cpp:1519
qreal m_c2dx
Definition: associationline.h:196
@ CrowFeet
Definition: associationline.h:40
QPair< QPointF, QPointF > SymbolEndPoints
Definition: associationline.h:30
void setBrush(const QBrush &brush)
Definition: associationline.cpp:1537
int x
Definition: cxx11-lambda-functions-and-expressions.h:4
bool setPoint(int index, const QPointF &point)
Definition: associationline.cpp:84
Enum
Definition: basictypes.h:130
void createCollaborationLine()
Definition: associationline.cpp:665
virtual QPainterPath shape() const
Definition: associationline.cpp:1470
QPen pen() const
Definition: associationline.cpp:433
@ Containment
Definition: basictypes.h:102
@ Activity
Definition: basictypes.h:108
static Tracer * instance()
Definition: debug_utils.cpp:107
int closestSegmentIndex(const QPointF &point, qreal delta=Delta) const
Definition: associationline.cpp:228
int count() const
Definition: associationline.cpp:150
void updatePenStyle()
Definition: associationline.cpp:467
static QPainterPath createOrthogonalPath(QVector< QPointF > points)
Definition: associationline.cpp:971
qreal toDoubleFromAnyLocale(const QString &s)
Definition: basictypes.cpp:1341
static const qreal SelectedPointDiameter
radius of circles drawn to show "selection"
Definition: associationline.h:198
@ Subset
Definition: associationline.h:42
#define DEBUG_REGISTER_DISABLED(src)
Definition: debug_utils.h:135
void createSplinePoints()
Definition: associationline.cpp:868
#define DEBUG()
Definition: debug_utils.h:127
@ State
Definition: basictypes.h:107
void removePoint(int index)
Definition: associationline.cpp:136
QRectF boundingRect() const
Definition: associationline.cpp:797
#define logError0(s)
Definition: uml.h:537
bool isEndPointIndex(int index) const
Definition: associationline.cpp:252
qreal dpiScale() const
Definition: umldoc.cpp:2055
QPointF endPoint() const
Definition: associationline.cpp:111
QRectF boundRect
Definition: associationline.h:74
virtual void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget)
Definition: associationline.cpp:1015
void mouseMoveEvent(QGraphicsSceneMouseEvent *event)
Definition: associationline.cpp:1159
void insertPoint(int index, const QPointF &point)
Definition: associationline.cpp:125
bool loadFromXMI(QDomElement &qElement)
Definition: associationline.cpp:328
virtual void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget)
Definition: associationline.cpp:1441
Symbol * m_startSymbol
symbol drawn at the end of "first" line segment
Definition: associationline.h:185
@ UniAssociation
Definition: basictypes.h:105
@ Relationship
Definition: basictypes.h:112
qreal m_c2dy
Definition: associationline.h:196
QPainterPath path() const
Definition: associationline.cpp:763
QBrush m_brush
brush used to fill Symbol
Definition: associationline.h:69
qreal m_c1dx
Definition: associationline.h:196
QVector< QPointF > m_points
points representing the association line
Definition: associationline.h:182
static Uml::LayoutType::Enum fromString(const QString &layout)
Definition: associationline.cpp:828
QPainterPath shape
Definition: associationline.h:75
UMLWidget * widgetAt(const QPointF &p)
Definition: umlscene.cpp:1086
void calculateInitialEndPoints()
Definition: associationline.cpp:484
QGraphicsLineItem * m_collaborationLineItem
parallel arrow line drawn in case of collaboration message
Definition: associationline.h:188
@ Anchor
Definition: basictypes.h:106
OptionState & optionState()
Definition: optionstate.cpp:357
void alignSymbols()
Definition: associationline.cpp:701
virtual ~AssociationLine()
Definition: associationline.cpp:59
@ Child2Category
Definition: basictypes.h:111
@ Aggregation
Definition: basictypes.h:94
void optimizeLinePoints()
Definition: associationline.cpp:174
QPen m_pen
pen used to draw Symbol
Definition: associationline.h:68
qreal snappedX(qreal x)
Definition: umlscene.cpp:3627
bool enableAutoLayout()
Definition: associationline.cpp:277
QPointF point(int index) const
Definition: associationline.cpp:71
@ Spline
Definition: basictypes.h:135
static void setupSymbolTable()
Definition: associationline.cpp:1326
bool isEndSegmentIndex(int index) const
Definition: associationline.cpp:263
qreal fixX() const
Definition: umlscene.cpp:4613
@ Polyline
Definition: basictypes.h:134
bool isAutoLayouted() const
Definition: associationline.cpp:272
it is up to the author donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License If the distribution and or use of the Library is restricted in certain countries either by patents or by copyrighted the original copyright holder who places the Library under this License may add an geographical distribution limitation excluding those so that distribution is permitted only in or among countries not thus excluded In such this License incorporates the limitation as if written in the body of this License The Free Software Foundation may publish revised and or new versions of the Library General Public License from time to time Such new versions will be similar in spirit to the present but may differ in detail to address new problems or concerns Each version is given a distinguishing version number If the Library specifies a version number of this License which applies to it and any later you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation If the Library does not specify a license version number
Definition: LGPL-2.0-only.txt:368
Symbol * m_subsetSymbol
subset symbol
Definition: associationline.h:187
@ ClosedArrow
Definition: associationline.h:39
QString a
Definition: petalnode.cpp:13
@ Direct
Definition: basictypes.h:132
Symbol * m_collaborationLineHead
arrow head drawn at end of m_collaborationLineItem
Definition: associationline.h:189
QBrush brush() const
Definition: associationline.cpp:415
virtual QRectF boundingRect() const
Definition: associationline.cpp:1460
Definition: associationline.h:100
@ Count
Definition: associationline.h:44
SymbolEndPoints symbolEndPoints() const
Definition: associationline.cpp:1503
static SymbolProperty symbolTable[Symbol::Count]
a table which stores all symbol properties
Definition: associationline.h:80
void reconstructSymbols()
Definition: associationline.cpp:526
virtual ~Symbol()
Definition: associationline.cpp:1416
void cleanup()
Definition: associationline.cpp:158
QPen m_pen
pen used to draw an association line
Definition: associationline.h:191
@ OpenArrow
Definition: associationline.h:38
@ B
Definition: basictypes.h:238
Symbol(SymbolType symbolType, QGraphicsItem *parent=0)
Definition: associationline.cpp:1405
void removeSubsetSymbol()
Definition: associationline.cpp:656
Enum
Definition: basictypes.h:92
@ Generalization
Definition: basictypes.h:93
void hoverLeaveEvent(QGraphicsSceneHoverEvent *event)
Definition: associationline.cpp:1277
void setStartSymbol(Symbol::SymbolType symbolType)
Definition: associationline.cpp:599
static UMLApp * app()
Definition: uml.cpp:276
void setLayout(Uml::LayoutType::Enum layout)
Definition: associationline.cpp:852
@ Coll_Mesg_Async
Definition: basictypes.h:98
QPointF startPoint() const
Definition: associationline.cpp:103
int m_activeSegmentIndex
index of active segment
Definition: associationline.h:184
SymbolEndPoints endPoints
Definition: associationline.h:77
SymbolType m_symbolType
current symbol being represented by this item
Definition: associationline.h:70
void alignTo(const QLineF &line)
Definition: associationline.cpp:1486
void setSymbolType(SymbolType symbolType)
Definition: associationline.cpp:1431
void mousePressEvent(QGraphicsSceneMouseEvent *event)
Definition: associationline.cpp:1139
bool m_autoLayoutSpline
Definition: associationline.h:192
int closestPointIndex(const QPointF &point, qreal delta=Delta) const
Definition: associationline.cpp:200
static QString toString(Uml::LayoutType::Enum layout)
Definition: associationline.cpp:820
AssociationWidget * m_associationWidget
association widget which this line represents
Definition: associationline.h:181
Definition: codeviewerstate.cpp:10
Uml::LayoutType::Enum m_layout
Definition: associationline.h:190
void setEndSymbol(Symbol::SymbolType symbolType)
Definition: associationline.cpp:623
void mouseReleaseEvent(QGraphicsSceneMouseEvent *event)
Definition: associationline.cpp:1219
@ Coll_Mesg_Self
Definition: basictypes.h:100
QPen pen() const
Definition: associationline.cpp:1511
qreal snappedY(qreal y)
Definition: umlscene.cpp:3645
int m_activePointIndex
index of active point which can be dragged to modify association line
Definition: associationline.h:183
Definition: umlscene.h:64
Symbol * m_endSymbol
symbol drawn at the end of "last" line segment
Definition: associationline.h:186
bool setEndPoints(const QPointF &start, const QPointF &end)
Definition: associationline.cpp:291
void createSubsetSymbol()
Definition: associationline.cpp:645
void dumpPoints()
Definition: associationline.cpp:317
@ Composition
Definition: basictypes.h:103
void addPoint(const QPointF &point)
Definition: associationline.cpp:116
QLineF axisLine
Definition: associationline.h:76
@ Orthogonal
Definition: basictypes.h:133
Enum fromString(const QString &item)
Definition: basictypes.cpp:493
bool b
Definition: cxx11-null-pointer-constant.h:6
@ Coll_Mesg_Sync
Definition: basictypes.h:113
qreal m_c1dy
Definition: associationline.h:196
void saveToXMI(QXmlStreamWriter &writer)
Definition: associationline.cpp:383
QBrush brush() const
Definition: associationline.cpp:1529
@ Dependency
Definition: basictypes.h:95
static const qreal Delta
default delta for fuzzy recognition of points closer to point
Definition: associationline.h:197
QString toString(Enum item)
Definition: basictypes.cpp:473
Uml::LayoutType::Enum layout() const
Definition: associationline.cpp:843
#define logWarn2(s, a, b)
Definition: uml.h:548
qreal fixY() const
Definition: umlscene.cpp:4621
static const qreal SelfAssociationMinimumHeight
minimum height for self association's loop
Definition: associationline.h:199
Definition: associationline.h:27
QPainterPath shape() const
Definition: associationline.cpp:809
@ Diamond
Definition: associationline.h:41
UMLDoc * document() const
Definition: uml.cpp:1063
@ Realization
Definition: basictypes.h:104
void hoverMoveEvent(QGraphicsSceneHoverEvent *event)
Definition: associationline.cpp:1255
@ Exception
Definition: basictypes.h:109
@ None
Definition: associationline.h:37
SymbolType
Definition: associationline.h:36