OpenTwin 0.1
OpenTwin
 
Loading...
Searching...
No Matches
GraphicsTriangleItem.h
Go to the documentation of this file.
1
4// ###########################################################################################################################################################################################################################################################################################################################
5
6#pragma once
7
8// OpenTwin header
12
13// Qt header
14#include <QtGui/qpen.h>
15#include <QtGui/qbrush.h>
16
17namespace ot {
18
21 public:
23 virtual ~GraphicsTriangleItem();
24
25 // ###########################################################################################################################################################################################################################################################################################################################
26
27 // Base class functions: ot::GraphicsItem
28
29 virtual bool setupFromConfig(const GraphicsItemCfg* _cfg) override;
30
31 // ###########################################################################################################################################################################################################################################################################################################################
32
33 // Base class functions: ot::CustomGraphicsItem
34
35 virtual QSizeF getPreferredGraphicsItemSize(void) const override;
36
37 protected:
38
40 virtual void paintCustomItem(QPainter* _painter, const QStyleOptionGraphicsItem* _opt, QWidget* _widget, const QRectF& _rect) override;
41
42 private:
43 void paintTriangle(QPainter* _painter, const QStyleOptionGraphicsItem* _opt, QWidget* _widget, const QRectF& _rect, const GraphicsTriangleItemCfg* _triangleConfig);
44 void paintKite(QPainter* _painter, const QStyleOptionGraphicsItem* _opt, QWidget* _widget, const QRectF& _rect, const GraphicsTriangleItemCfg* _triangleConfig);
45 void paintIceCone(QPainter* _painter, const QStyleOptionGraphicsItem* _opt, QWidget* _widget, const QRectF& _rect, const GraphicsTriangleItemCfg* _triangleConfig);
46
47 // ###########################################################################################################################################################################################################################################################################################################################
48
49 // Setter / Getter
50
51 public:
52
53 void setTriangleSize(const Size2DD& _size);
54 void setTriangleSize(const QSizeF& _size);
55 const Size2DD& getTriangleSize(void) const;
56
59 void setBackgroundPainter(ot::Painter2D* _painter);
60 const ot::Painter2D* getBackgroundPainter(void) const;
61
62 void setOutline(const OutlineF& _outline);
63 const OutlineF& getOutline(void) const;
64
65 void setTriangleShape(ot::GraphicsTriangleItemCfg::TriangleShape _shape);
66 ot::GraphicsTriangleItemCfg::TriangleShape getTriangleShape(void) const;
67
68 void setTriangleDirection(ot::GraphicsTriangleItemCfg::TriangleDirection _direction);
69 ot::GraphicsTriangleItemCfg::TriangleDirection getTrianlgeDirection(void) const;
70
71 };
72
73
74}
This file contains defines that may be used simplyfy class creation.
#define OT_DECL_NOCOPY(___class)
Removes the default copy constructor and assignment operator.
Definition OTClassHelper.h:14
#define OT_WIDGETS_API_EXPORT
Definition OTWidgetsAPIExport.h:12
Definition CustomGraphicsItem.h:17
The GraphicsItemCfg is the base class for all graphics item configurations.
Definition GraphicsItemCfg.h:33
Definition GraphicsTriangleItemCfg.h:20
TriangleShape
Definition GraphicsTriangleItemCfg.h:30
TriangleDirection
Definition GraphicsTriangleItemCfg.h:23
Definition GraphicsTriangleItem.h:19
The OutlineF class is used to describe how a outline should look like.
Definition Outline.h:161
Definition Painter2D.h:17
2D Size with double values
Definition Size2D.h:115
Definition Connector.h:8