umbrello  2.39.2
Umbrello UML Modeller is a Unified Modelling Language (UML) diagram program based on KDE Technology
childwidgetplacement.h
Go to the documentation of this file.
1 /*
2  SPDX-License-Identifier: GPL-2.0-or-later
3  SPDX-FileCopyrightText: 2016-2020 Umbrello UML Modeller Authors <umbrello-devel@kde.org>
4 */
5 
6 #ifndef CHILDWIDGETPLACEMENT_H
7 #define CHILDWIDGETPLACEMENT_H
8 
9 class PinPortBase;
10 class UMLWidget;
11 
12 #include <QPointF>
13 #include <QtGlobal>
14 
22 {
23 public:
25  virtual ~ChildWidgetPlacement() {}
26 
27  virtual void detectConnectedSide() = 0;
28  virtual void setInitialPosition(const QPointF &scenePos = QPointF()) = 0;
29  virtual void setNewPositionWhenMoved(qreal diffX, qreal diffY) = 0;
30  virtual void setNewPositionOnParentResize() = 0;
31 
32 protected:
35  Top,
43  };
44 
45  void setPos(const QPointF& pos);
46  void setPos(qreal x, qreal y);
47  void setX(qreal x);
48  void setY(qreal y);
49  qreal x() const;
50  qreal y() const;
51  qreal width() const;
52  qreal height() const;
53  UMLWidget* ownerWidget() const;
54 
57 };
58 
59 #endif /* ! CHILDWIDGETPLACEMENT_H */
60 
Base class for child widget placement.
Definition: childwidgetplacement.h:22
ConnectedSide m_connectedSide
Definition: childwidgetplacement.h:56
qreal x() const
Definition: childwidgetplacement.cpp:35
virtual void setInitialPosition(const QPointF &scenePos=QPointF())=0
qreal height() const
Definition: childwidgetplacement.cpp:50
qreal width() const
Definition: childwidgetplacement.cpp:45
PinPortBase *const m_widget
Definition: childwidgetplacement.h:55
ConnectedSide
Definition: childwidgetplacement.h:33
@ Bottom
Definition: childwidgetplacement.h:37
@ Left
Definition: childwidgetplacement.h:38
@ Right
Definition: childwidgetplacement.h:36
@ BottomLeft
Definition: childwidgetplacement.h:42
@ Undefined
Definition: childwidgetplacement.h:34
@ TopRight
Definition: childwidgetplacement.h:40
@ Top
Definition: childwidgetplacement.h:35
@ TopLeft
Definition: childwidgetplacement.h:39
@ BottomRight
Definition: childwidgetplacement.h:41
void setY(qreal y)
Definition: childwidgetplacement.cpp:30
virtual ~ChildWidgetPlacement()
Definition: childwidgetplacement.h:25
ChildWidgetPlacement(PinPortBase *widget)
Definition: childwidgetplacement.cpp:10
virtual void setNewPositionOnParentResize()=0
void setPos(const QPointF &pos)
Definition: childwidgetplacement.cpp:15
virtual void detectConnectedSide()=0
virtual void setNewPositionWhenMoved(qreal diffX, qreal diffY)=0
void setX(qreal x)
Definition: childwidgetplacement.cpp:25
UMLWidget * ownerWidget() const
Definition: childwidgetplacement.cpp:55
qreal y() const
Definition: childwidgetplacement.cpp:40
Abstract base class for PinWidget and PortWidget.
Definition: pinportbase.h:23
The base class for graphical UML objects.
Definition: umlwidget.h:36