Nix (Dev) 3.5.10
dev - 3.5.10 - 1af9301
Loading...
Searching...
No Matches
CMenuContextGraphics.hpp
Go to the documentation of this file.
1#ifndef LIBS_GRAPHICSCOMP_CMENUCONTEXTGRAPHICS_HPP_
2#define LIBS_GRAPHICSCOMP_CMENUCONTEXTGRAPHICS_HPP_
3
5
6#include "core/memOps.hpp"
11
12#include <string>
13#include <utility>
14
16
18{
25
26 //TODO: Check if this copy of raw pointers is correct
36
37 SPrvOptionMenuContextGraphics(CDrawText **textOption, uint32_t argbColorBackground, CDrawText **textInitial,
38 std::string nameImageOpt, CCircleGraphics **circleOption,
39 AbstractClickComponentGUI *componentOptionRef)
40 {
42 m_argbColorBackground = argbColorBackground;
44 m_nameImageOpt = std::move(nameImageOpt);
45 m_circleOption = iv::assignPtrNoNull(circleOption);
46 m_componentOptionRef = componentOptionRef;
47 }
48
49 //TODO: Check if no delete raw pointers is correct
51 {
52 // HEAP_DELETE_OBJECT(&m_textOption, CDrawText);
53 // HEAP_DELETE_OBJECT(&m_textInitial, CDrawText);
54 // HEAP_DELETE_OBJECT(&m_circleOption, CCircleGraphics);
55 }
56
57 //TODO: Check if this copy of raw pointers is correct
72
79
83 std::string m_nameImageOpt;
84
87};
88
90{
91public:
92 explicit CMenuContextGraphics(const std::string &titleMenu);
93 ~CMenuContextGraphics() override;
94
95 void addMessageState(const CTxtColor &txtColor);
96 void addOption(const std::string &textOption, uint32_t argbColorBackground, const std::string &nameOptionOpt,
97 AbstractClickComponentGUI *componentOptionRef);
98 void calculatePosGlobal(double xFather, double yFather) override;
99 void calculateSizeMin(IGraphics *graphics, const CTheme *theme, CLibraryImages *libraryImage, double *sizeXComp,
100 double *sizeYComp) override;
101 void distribute(IGraphics *graphics, double sizeXComp, double sizeYComp) override;
102 void drawComponent(IGraphics *graphics, const CTheme *theme) override;
103 void handleEvent(CEventGraphics *event, double xOrg, double yOrg) override;
104 void nextFrameChildren() override;
105 void removeObjectDraw(IGraphics *graphics) override;
106 bool sizeChanged() override;
107 void update(IGraphics *graphics, CLibraryImages *libraryImage) override;
108
109private:
111 std::vector<SPrvOptionMenuContextGraphics> m_optionsMenuContextGraphics;
112 std::vector<CTxtColor> m_msgState;
115};
116
117#endif /* LIBS_GRAPHICSCOMP_CMENUCONTEXTGRAPHICS_HPP_ */
Definition AbstractClickComponentGUI.hpp:10
Definition AbstractComponentGraphics.hpp:21
Definition CCircleGraphics.hpp:8
Definition CDrawText.hpp:11
Definition CEventGraphics.hpp:9
Definition CLibraryImages.hpp:11
Definition CMenuContextGraphics.hpp:90
CRectangleGraphics * m_rectangleTitleOpt
Definition CMenuContextGraphics.hpp:114
void update(IGraphics *graphics, CLibraryImages *libraryImage) override
Definition CMenuContextGraphics.cpp:326
CCircleGraphics * m_circleCentreOpt
Definition CMenuContextGraphics.hpp:110
void drawComponent(IGraphics *graphics, const CTheme *theme) override
Definition CMenuContextGraphics.cpp:187
std::vector< CTxtColor > m_msgState
Definition CMenuContextGraphics.hpp:112
CDrawText * m_titleMenu
Definition CMenuContextGraphics.hpp:113
void nextFrameChildren() override
Definition CMenuContextGraphics.cpp:297
void addOption(const std::string &textOption, uint32_t argbColorBackground, const std::string &nameOptionOpt, AbstractClickComponentGUI *componentOptionRef)
Definition CMenuContextGraphics.cpp:67
void addMessageState(const CTxtColor &txtColor)
Definition CMenuContextGraphics.cpp:57
void calculateSizeMin(IGraphics *graphics, const CTheme *theme, CLibraryImages *libraryImage, double *sizeXComp, double *sizeYComp) override
Definition CMenuContextGraphics.cpp:94
void handleEvent(CEventGraphics *event, double xOrg, double yOrg) override
Definition CMenuContextGraphics.cpp:242
void distribute(IGraphics *graphics, double sizeXComp, double sizeYComp) override
Definition CMenuContextGraphics.cpp:136
std::vector< SPrvOptionMenuContextGraphics > m_optionsMenuContextGraphics
Definition CMenuContextGraphics.hpp:111
void removeObjectDraw(IGraphics *graphics) override
Definition CMenuContextGraphics.cpp:301
bool sizeChanged() override
Definition CMenuContextGraphics.cpp:321
~CMenuContextGraphics() override
Definition CMenuContextGraphics.cpp:39
CMenuContextGraphics(const std::string &titleMenu)
Definition CMenuContextGraphics.cpp:28
void calculatePosGlobal(double xFather, double yFather) override
Definition CMenuContextGraphics.cpp:85
Definition CRectangleGraphics.hpp:10
Definition CTheme.hpp:10
Definition CTxtColor.hpp:10
Definition IGraphics.hpp:20
T * assignPtrNoNull(T **ptr)
Definition memOps.hpp:31
Definition CMenuContextGraphics.hpp:18
uint32_t m_argbColorBackground
Definition CMenuContextGraphics.hpp:81
std::string m_nameImageOpt
Definition CMenuContextGraphics.hpp:83
~SPrvOptionMenuContextGraphics()
Definition CMenuContextGraphics.hpp:50
CDrawText * m_textOption
Definition CMenuContextGraphics.hpp:80
AbstractClickComponentGUI * m_componentOptionRef
Definition CMenuContextGraphics.hpp:86
SPrvOptionMenuContextGraphics()
Definition CMenuContextGraphics.hpp:19
SPrvOptionMenuContextGraphics & operator=(const SPrvOptionMenuContextGraphics &sMenu)
Definition CMenuContextGraphics.hpp:58
SPrvOptionMenuContextGraphics(CDrawText **textOption, uint32_t argbColorBackground, CDrawText **textInitial, std::string nameImageOpt, CCircleGraphics **circleOption, AbstractClickComponentGUI *componentOptionRef)
Definition CMenuContextGraphics.hpp:37
CCircleGraphics * m_circleOption
Definition CMenuContextGraphics.hpp:85
SPrvOptionMenuContextGraphics(const SPrvOptionMenuContextGraphics &sMenu)
Definition CMenuContextGraphics.hpp:27
bool operator==(const SPrvOptionMenuContextGraphics &b) const
Definition CMenuContextGraphics.hpp:73
CDrawText * m_textInitial
Definition CMenuContextGraphics.hpp:82