umbrello  2.32.2
Umbrello UML Modeller is a Unified Modelling Language (UML) diagram program based on KDE Technology
widget_utils.h
Go to the documentation of this file.
1 /***************************************************************************
2  * This program is free software; you can redistribute it and/or modify *
3  * it under the terms of the GNU General Public License as published by *
4  * the Free Software Foundation; either version 2 of the License, or *
5  * (at your option) any later version. *
6  * *
7  * copyright (C) 2004-2020 *
8  * Umbrello UML Modeller Authors <umbrello-devel@kde.org> *
9  ***************************************************************************/
10 
11 #ifndef WIDGET_UTILS_H
12 #define WIDGET_UTILS_H
13 
14 #include "basictypes.h"
15 #include "messagewidgetlist.h"
16 #include "umlwidgetlist.h"
17 #include "widgetbase.h"
18 
19 #include <QBrush>
20 #include <QDomDocument>
21 #include <QPointF>
22 #include <QLineF>
23 #include <QPolygonF>
24 
25 class QGraphicsItem;
26 class QGraphicsRectItem;
27 class QXmlStreamWriter;
28 
33 namespace Widget_Utils
34 {
36  const UMLWidgetList& widgets,
37  const MessageWidgetList* messages = 0);
38 
39  QGraphicsRectItem* decoratePoint(const QPointF& p, QGraphicsItem* parent = 0);
40 
41  void drawCrossInEllipse(QPainter *p, const QRectF& ellipse);
42  void drawTriangledRect(QPainter *painter, const QRectF& rect, const QSizeF& triSize);
43 // void drawArrowHead(QPainter *painter, const QPointF& arrowPos,
44 // const QSizeF& arrowSize, Qt::ArrowType arrowType,
45 // bool solid = false);
46 // void drawRoundedRect(QPainter *painter, const QRectF& rect, qreal xRadius,
47 // qreal yRadius, Uml::Corners corners);
48 
49  QString pointToString(const QPointF& point);
50  QPointF stringToPoint(const QString& str);
51 
52  bool loadPixmapFromXMI(QDomElement &qElement, QPixmap &pixmap);
53  void savePixmapToXMI(QXmlStreamWriter& stream, const QPixmap& pixmap);
54 
55  bool loadGradientFromXMI(QDomElement &qElement, QGradient *&gradient);
56  void saveGradientToXMI(QXmlStreamWriter& stream, const QGradient *gradient);
57 
58  bool loadBrushFromXMI(QDomElement &qElement, QBrush &brush);
59  void saveBrushToXMI(QXmlStreamWriter& stream, const QBrush& brush);
60 
61  bool hasSmallerX(const UMLWidget* widget1, const UMLWidget* widget2);
62  bool hasSmallerY(const UMLWidget* widget1, const UMLWidget* widget2);
63 
64  QLineF closestPoints(const QPolygonF& self, const QPolygonF& other);
65 
67  QString newTitle(WidgetBase::WidgetType type);
68  QString newText(WidgetBase::WidgetType type);
69  QString renameTitle(WidgetBase::WidgetType type);
70  QString renameText(WidgetBase::WidgetType type);
71 }
72 
73 #endif
Widget_Utils::X
@ X
Definition: widget_utils.cpp:643
WidgetBase::wt_Association
@ wt_Association
Definition: widgetbase.h:133
Uml::Region::NorthWest
@ NorthWest
Definition: basictypes.h:367
WidgetBase::wt_Signal
@ wt_Signal
Definition: widgetbase.h:138
WidgetBase::wt_FloatingDashLine
@ wt_FloatingDashLine
Definition: widgetbase.h:137
Widget_Utils::Smallest
@ Smallest
Definition: widget_utils.cpp:648
messagewidgetlist.h
WidgetBase::wt_ObjectNode
@ wt_ObjectNode
Definition: widgetbase.h:140
Widget_Utils::drawTriangledRect
void drawTriangledRect(QPainter *painter, const QRectF &rect, const QSizeF &triSize)
Definition: widget_utils.cpp:139
WidgetBase::toString
static QString toString(WidgetType wt)
Definition: widgetbase.cpp:1226
Widget_Utils::saveGradientToXMI
void saveGradientToXMI(QXmlStreamWriter &stream, const QGradient *gradient)
Definition: widget_utils.cpp:416
WidgetBase::wt_Category
@ wt_Category
Definition: widgetbase.h:142
Widget_Utils::saveBrushToXMI
void saveBrushToXMI(QXmlStreamWriter &stream, const QBrush &brush)
Definition: widget_utils.cpp:520
Uml::Region::SouthEast
@ SouthEast
Definition: basictypes.h:369
Uml::Region::South
@ South
Definition: basictypes.h:366
UMLWidget
The base class for graphical UML objects.
Definition: umlwidget.h:40
WidgetBase::wt_UMLWidget
@ wt_UMLWidget
Definition: widgetbase.h:114
WidgetBase::wt_Precondition
@ wt_Precondition
Definition: widgetbase.h:135
WidgetBase::wt_Package
@ wt_Package
Definition: widgetbase.h:122
WidgetBase::wt_Instance
@ wt_Instance
Definition: widgetbase.h:144
WidgetBase::localID
Uml::ID::Type localID() const
Definition: widgetbase.cpp:250
Widget_Utils::loadGradientFromXMI
bool loadGradientFromXMI(QDomElement &gradientElement, QGradient *&gradient)
Definition: widget_utils.cpp:345
Widget_Utils::loadPixmapFromXMI
bool loadPixmapFromXMI(QDomElement &pixEle, QPixmap &pixmap)
Definition: widget_utils.cpp:283
Widget_Utils::pointToString
QString pointToString(const QPointF &point)
Definition: widget_utils.cpp:254
Widget_Utils
Definition: widget_utils.cpp:33
WidgetBase::wt_Artifact
@ wt_Artifact
Definition: widgetbase.h:131
Uml::Region::East
@ East
Definition: basictypes.h:365
umlwidgetlist.h
Widget_Utils::hasSmallerY
bool hasSmallerY(const UMLWidget *widget1, const UMLWidget *widget2)
Definition: widget_utils.cpp:557
Uml::ID::Type
std::string Type
Definition: basictypes.h:402
WidgetBase::wt_UseCase
@ wt_UseCase
Definition: widgetbase.h:116
WidgetBase::wt_Box
@ wt_Box
Definition: widgetbase.h:125
Widget_Utils::prevPoint
QPointF prevPoint(int index, const QPolygonF &poly)
Definition: widget_utils.cpp:611
Widget_Utils::defaultWidgetName
QString defaultWidgetName(WidgetBase::WidgetType type)
Definition: widget_utils.cpp:842
WidgetBase::wt_Component
@ wt_Component
Definition: widgetbase.h:130
Widget_Utils::nextPoint
QPointF nextPoint(int index, const QPolygonF &poly)
Definition: widget_utils.cpp:624
WidgetBase::wt_ForkJoin
@ wt_ForkJoin
Definition: widgetbase.h:134
WidgetBase::wt_Note
@ wt_Note
Definition: widgetbase.h:124
WidgetBase::isObjectWidget
bool isObjectWidget()
Definition: widgetbase.h:261
WidgetBase::wt_Actor
@ wt_Actor
Definition: widgetbase.h:115
Widget_Utils::drawCrossInEllipse
void drawCrossInEllipse(QPainter *p, const QRectF &r)
Definition: widget_utils.cpp:98
Widget_Utils::renameText
QString renameText(WidgetBase::WidgetType type)
Definition: widget_utils.cpp:1027
WidgetBase::wt_Pin
@ wt_Pin
Definition: widgetbase.h:139
MessageWidgetList
QList< QPointer< MessageWidget > > MessageWidgetList
Definition: messagewidgetlist.h:18
Widget_Utils::renameTitle
QString renameTitle(WidgetBase::WidgetType type)
Definition: widget_utils.cpp:981
Uml::Region::Center
@ Center
Definition: basictypes.h:371
WidgetBase::wt_Port
@ wt_Port
Definition: widgetbase.h:143
objectwidget.h
a
QString a
Definition: petalnode.cpp:18
umlwidget.h
uWarning
#define uWarning()
Definition: debug_utils.h:124
Widget_Utils::middle
qreal middle(qreal a, qreal b)
Definition: widget_utils.cpp:635
Uml::Region::NorthEast
@ NorthEast
Definition: basictypes.h:368
i18n
#define i18n
Definition: main.cpp:39
messagewidget.h
Widget_Utils::loadBrushFromXMI
bool loadBrushFromXMI(QDomElement &qElement, QBrush &brush)
Definition: widget_utils.cpp:466
WidgetBase::wt_Class
@ wt_Class
Definition: widgetbase.h:117
WidgetBase::wt_Text
@ wt_Text
Definition: widgetbase.h:127
Widget_Utils::savePixmapToXMI
void savePixmapToXMI(QXmlStreamWriter &stream, const QPixmap &pixmap)
Definition: widget_utils.cpp:314
basictypes.h
Uml::Region::West
@ West
Definition: basictypes.h:363
Uml::Region::Enum
Enum
Definition: basictypes.h:361
int
int int y int
Definition: cxx11-lambda-functions-and-expressions.h:4
UMLWidgetList
QList< QPointer< UMLWidget > > UMLWidgetList
Definition: umlwidgetlist.h:17
WidgetBase::wt_Region
@ wt_Region
Definition: widgetbase.h:141
Uml::Region::North
@ North
Definition: basictypes.h:364
WidgetBase::wt_CombinedFragment
@ wt_CombinedFragment
Definition: widgetbase.h:136
Widget_Utils::findLine
QLineF findLine(const QPolygonF &poly, Axis_Type axis, Comparison_Type seek, const QRectF &boundingRect)
Definition: widget_utils.cpp:658
Widget_Utils::Largest
@ Largest
Definition: widget_utils.cpp:648
widget_utils.h
Widget_Utils::Comparison_Type
Comparison_Type
Definition: widget_utils.cpp:648
WidgetBase::wt_Message
@ wt_Message
Definition: widgetbase.h:126
Widget_Utils::newTitle
QString newTitle(WidgetBase::WidgetType type)
Definition: widget_utils.cpp:889
Widget_Utils::findWidget
UMLWidget * findWidget(Uml::ID::Type id, const UMLWidgetList &widgets, const MessageWidgetList *messages)
Definition: widget_utils.cpp:52
widgetbase.h
WidgetBase::wt_State
@ wt_State
Definition: widgetbase.h:128
WidgetBase::wt_Interface
@ wt_Interface
Definition: widgetbase.h:118
Widget_Utils::newText
QString newText(WidgetBase::WidgetType type)
Definition: widget_utils.cpp:935
debug_utils.h
WidgetBase::wt_Object
@ wt_Object
Definition: widgetbase.h:123
WidgetBase::wt_Entity
@ wt_Entity
Definition: widgetbase.h:121
WidgetBase::WidgetType
WidgetType
Definition: widgetbase.h:111
WidgetBase::wt_Datatype
@ wt_Datatype
Definition: widgetbase.h:119
Widget_Utils::findRegion
Uml::Region::Enum findRegion(const QRectF &self, const QRectF &other)
Definition: widget_utils.cpp:570
WidgetBase::wt_Activity
@ wt_Activity
Definition: widgetbase.h:129
b
bool b
Definition: cxx11-null-pointer-constant.h:6
Widget_Utils::hasSmallerX
bool hasSmallerX(const UMLWidget *widget1, const UMLWidget *widget2)
Definition: widget_utils.cpp:546
Widget_Utils::closestPoints
QLineF closestPoints(const QPolygonF &self, const QPolygonF &other)
Definition: widget_utils.cpp:698
Uml::Region::SouthWest
@ SouthWest
Definition: basictypes.h:370
Widget_Utils::Axis_Type
Axis_Type
Definition: widget_utils.cpp:643
WidgetBase::wt_Enum
@ wt_Enum
Definition: widgetbase.h:120
Widget_Utils::stringToPoint
QPointF stringToPoint(const QString &str)
Definition: widget_utils.cpp:262
WidgetBase::wt_Node
@ wt_Node
Definition: widgetbase.h:132
WidgetBase::id
Uml::ID::Type id() const
Definition: widgetbase.cpp:226
Widget_Utils::decoratePoint
QGraphicsRectItem * decoratePoint(const QPointF &p, QGraphicsItem *parent)
Definition: widget_utils.cpp:80
Widget_Utils::Y
@ Y
Definition: widget_utils.cpp:643