OpenTwin 0.1
OpenTwin
 
Loading...
Searching...
No Matches
GraphicsLayoutItem.h
Go to the documentation of this file.
1
4// ###########################################################################################################################################################################################################################################################################################################################
5
6#pragma once
7
8// OpenTwin header
11
12class QGraphicsLayout;
13
14namespace ot {
15
16 class GraphicsLayoutItemWrapper;
17
20 public:
21 GraphicsLayoutItem(GraphicsItemCfg* _configuration);
22 virtual ~GraphicsLayoutItem();
23
24 virtual bool setupFromConfig(const GraphicsItemCfg* _cfg) override;
25
26 virtual void setGraphicsItemName(const std::string& _name) override;
27
28 virtual void removeAllConnections(void) override;
29
30 virtual void prepareGraphicsItemGeometryChange(void) override;
31
32 virtual void setParentGraphicsItem(GraphicsItem* _itm) override;
33
34 virtual void setGraphicsScene(GraphicsScene* _scene) override;
35
36 virtual void getAllItems(std::list<QGraphicsLayoutItem*>& _items) const = 0;
37
38 virtual void callPaint(QPainter* _painter, const QStyleOptionGraphicsItem* _opt, QWidget* _widget) override;
39
40 virtual void graphicsItemFlagsChanged(const GraphicsItemCfg::GraphicsItemFlags& _flags) override;
41
42 virtual void graphicsItemConfigurationChanged(const GraphicsItemCfg* _config) override;
43
44 virtual QGraphicsLayoutItem* getQGraphicsLayoutItem(void) override;
45 virtual QGraphicsItem* getQGraphicsItem(void) override;
46 virtual const QGraphicsItem* getQGraphicsItem(void) const override;
47
48 virtual ot::GraphicsItem* findItem(const std::string& _itemName) override;
49
50 virtual void finalizeGraphicsItem(void) override;
51
52 virtual void setGraphicsItemRequestedSize(const QSizeF& _size) override;
53
55 virtual double getMaxAdditionalTriggerDistance(void) const override;
56
57 virtual std::list<GraphicsElement*> getAllGraphicsElements(void) override;
58
59 virtual std::list<GraphicsElement*> getAllDirectChildElements(void) override;
60
61 GraphicsLayoutItemWrapper* getLayoutWrapper(void) const { return m_layoutWrap; };
62
63 // ###########################################################################################################################################################################################################################################################################################################################
64
65 // Protected
66
67 protected:
68 virtual void graphicsElementStateChanged(const GraphicsElementStateFlags& _state) override;
69
70 virtual void notifyChildsAboutTransformChange(const QTransform& _newTransform) override;
71
73 void createLayoutWrapper(QGraphicsLayout* _layout);
74
75 private:
76 GraphicsLayoutItemWrapper* m_layoutWrap;
77 };
78
79}
#define OT_DECL_NODEFAULT(___class)
Removes the default copy constructor and assignment operator.
Definition OTClassHelper.h:22
#define OT_WIDGETS_API_EXPORT
Definition OTWidgetsAPIExport.h:12
The GraphicsItemCfg is the base class for all graphics item configurations.
Definition GraphicsItemCfg.h:33
Base class for all OpenTwin GraphicsItems GraphicsItems should be created by the GraphicsFactory and ...
Definition GraphicsItem.h:35
Definition GraphicsLayoutItem.h:18
GraphicsLayoutItemWrapper * getLayoutWrapper(void) const
Definition GraphicsLayoutItem.h:61
virtual void getAllItems(std::list< QGraphicsLayoutItem * > &_items) const =0
Definition GraphicsLayoutItemWrapper.h:18
Graphics Scene for ot::GraphicsItem Adding QGraphicsItems to the scene that do not inherit ot::Graphi...
Definition GraphicsScene.h:31
Definition Connector.h:8