umbrello  2.39.2
Umbrello UML Modeller is a Unified Modelling Language (UML) diagram program based on KDE Technology
forkjoinwidget.h
Go to the documentation of this file.
1 /*
2  SPDX-License-Identifier: GPL-2.0-or-later
3  SPDX-FileCopyrightText: 2005-2021 Umbrello UML Modeller Authors <umbrello-devel@kde.org>
4 */
5 
6 #ifndef FORKJOINWIDGET_H
7 #define FORKJOINWIDGET_H
8 
9 //app includes
10 #include "boxwidget.h"
11 
20 class ForkJoinWidget : public BoxWidget
21 {
22  Q_OBJECT
23  Q_PROPERTY(Qt::Orientation orientation READ orientation WRITE setOrientation)
24 public:
25  explicit ForkJoinWidget(UMLScene * scene, Qt::Orientation ori = Qt::Horizontal, Uml::ID::Type id = Uml::ID::None);
26  virtual ~ForkJoinWidget();
27 
28  Qt::Orientation orientation() const;
29  void setOrientation(Qt::Orientation ori);
30 
31  virtual void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget = 0);
32 
33  virtual bool loadFromXMI(QDomElement & qElement);
34  virtual void saveToXMI(QXmlStreamWriter& writer);
35 
36  virtual bool showPropertiesDialog();
37 
38 public Q_SLOTS:
39  virtual void slotMenuSelection(QAction* action);
40 
41 protected:
42  QSizeF minimumSize() const;
43 
44  virtual void paintSelected(QPainter * p, int offsetX = 0, int offsetY = 0);
45 
46  void constrain(qreal& width, qreal& height);
47 
48 private:
49  Qt::Orientation m_orientation;
50 };
51 
52 #endif
Displays a box.
Definition: boxwidget.h:23
Displays a fork/join plate in a state diagram.
Definition: forkjoinwidget.h:21
ForkJoinWidget(UMLScene *scene, Qt::Orientation ori=Qt::Horizontal, Uml::ID::Type id=Uml::ID::None)
Definition: forkjoinwidget.cpp:28
virtual void saveToXMI(QXmlStreamWriter &writer)
Definition: forkjoinwidget.cpp:105
virtual void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget=0)
Definition: forkjoinwidget.cpp:69
Qt::Orientation m_orientation
whether to draw the plate horizontally or vertically
Definition: forkjoinwidget.h:49
virtual void slotMenuSelection(QAction *action)
Definition: forkjoinwidget.cpp:137
void setOrientation(Qt::Orientation ori)
Definition: forkjoinwidget.cpp:58
virtual bool loadFromXMI(QDomElement &qElement)
Definition: forkjoinwidget.cpp:83
void constrain(qreal &width, qreal &height)
Definition: forkjoinwidget.cpp:182
virtual void paintSelected(QPainter *p, int offsetX=0, int offsetY=0)
Definition: forkjoinwidget.cpp:172
virtual bool showPropertiesDialog()
Definition: forkjoinwidget.cpp:120
Qt::Orientation orientation
Definition: forkjoinwidget.h:23
virtual ~ForkJoinWidget()
Definition: forkjoinwidget.cpp:43
QSizeF minimumSize() const
Definition: forkjoinwidget.cpp:158
Definition: umlscene.h:65
qreal width() const
Definition: umlwidget.h:119
qreal height() const
Definition: umlwidget.h:112
const Type None
special value for uninitialized ID
Definition: basictypes.h:373
std::string Type
Definition: basictypes.h:371