Nix (Dev) 3.5.10
dev - 3.5.10 - 1af9301
Loading...
Searching...
No Matches
Display.hpp
Go to the documentation of this file.
1#ifndef IV_SRC_MIMICS_INDICATORS_DISPLAY_HPP_
2#define IV_SRC_MIMICS_INDICATORS_DISPLAY_HPP_
3
7
9{
10
12{
13public:
14 Display();
15 ~Display() override = default;
16
17 bool load(const iv::file::xml::node &nodeControlMimic) override;
18 bool save(iv::file::xml::node &nodeControlMimic) const override;
19
20 //controller
21 void getChannels(const std::shared_ptr<std::vector<std::weak_ptr<iv::channels::AbstractChannel>>>
22 &channelsInControl) const override;
23 void mapChannels(const std::function<void(std::weak_ptr<iv::channels::AbstractChannel> &)> &mapFunction) override;
24 [[nodiscard]] std::shared_ptr<iv::mimics::AbstractMimicElement> clone() const override;
25
26 [[nodiscard]] std::optional<iv::mimics::eAlarmState> getAlarmState() const override;
27 [[nodiscard]] std::optional<iv::types::color> getColorWorkingState() const override;
28 [[nodiscard]] std::optional<std::string> getStringWorkingState() const override;
29 void executeCommand(const std::string &strAction) const override;
30
31 [[nodiscard]] iv::types::height getHeight() const;
32 [[nodiscard]] iv::types::width getWidth() const;
33
34 // View
35 void drawSpecific(IGraphics *graphics, std::optional<iv::types::color> colorWorkingState,
36 std::optional<iv::types::color> colorControlState, iv::eLanguage drawingLanguage) override;
37
38 // UI
40
41private:
42 Display(const Display &other);
43
45
50
51 // Draw
52 std::pair<iv::types::width, iv::types::height> prvGetMinSizeAnalogic(double sizeXUnit, double sizeYUnit,
53 const std::string &strValue,
54 IGraphics *graphics,
55 const std::string &strUnit) const;
56
57 std::unique_ptr<CDrawText> m_txtChannelValue {nullptr};
58 std::unique_ptr<CDrawText> m_txtMeasureUnit {nullptr};
59 std::unique_ptr<CRectangleGraphics> m_rectangleOpt {nullptr};
60
61 struct Keys
62 {
63 static constexpr std::string_view heightText {"HeightText"};
64 static constexpr std::string_view textColor {"TextColor"};
65 static constexpr std::string_view showMeasureUnit {"ShowMeasureUnit"};
66 static constexpr std::string_view numCharactersDisplay {"NumCharactersDisplay"};
67 };
69 {
70 static constexpr std::string string {};
71 static constexpr iv::types::height heightText {16};
73 static constexpr bool showMeasureUnit {true};
74 static constexpr uint8_t numCharactersDisplay {10};
75 };
76 struct Sections
77 {
78 static constexpr std::string_view displayIndicator {"DisplayIndicator"};
79 static constexpr std::string_view channel {"Channel"};
80 };
81};
82
83}// namespace iv::mimics::elements
84
85#endif//IV_SRC_MIMICS_INDICATORS_DISPLAY_HPP_
Definition AbstractComponentGUI.hpp:30
Definition IGraphics.hpp:20
Definition xmlFile.hpp:15
Definition AbstractMimicElement.hpp:21
Definition Channel.hpp:12
Definition Display.hpp:12
AbstractComponentGUI * panelEditControl() override
UI methods ///.
Definition Display.cpp:269
iv::types::width getWidth() const
Definition Display.cpp:353
void mapChannels(const std::function< void(std::weak_ptr< iv::channels::AbstractChannel > &)> &mapFunction) override
Processed gets ///.
Definition Display.cpp:83
std::optional< std::string > getStringWorkingState() const override
Definition Display.cpp:123
void executeCommand(const std::string &strAction) const override
Run actions ///.
Definition Display.cpp:133
~Display() override=default
std::pair< iv::types::width, iv::types::height > prvGetMinSizeAnalogic(double sizeXUnit, double sizeYUnit, const std::string &strValue, IGraphics *graphics, const std::string &strUnit) const
Definition Display.cpp:248
std::unique_ptr< CDrawText > m_txtChannelValue
Definition Display.hpp:57
bool m_showMeasureUnit
Definition Display.hpp:48
void getChannels(const std::shared_ptr< std::vector< std::weak_ptr< iv::channels::AbstractChannel > > > &channelsInControl) const override
AƱade los canales que el MimicElement tiene enlazado.
Definition Display.cpp:76
std::unique_ptr< CRectangleGraphics > m_rectangleOpt
Definition Display.hpp:59
iv::types::color m_textColor
Definition Display.hpp:47
std::unique_ptr< CDrawText > m_txtMeasureUnit
Definition Display.hpp:58
std::shared_ptr< iv::mimics::AbstractMimicElement > clone() const override
Definition Display.cpp:88
bool save(iv::file::xml::node &nodeControlMimic) const override
Definition Display.cpp:60
uint8_t m_numCharactersDisplay
Definition Display.hpp:49
void drawSpecific(IGraphics *graphics, std::optional< iv::types::color > colorWorkingState, std::optional< iv::types::color > colorControlState, iv::eLanguage drawingLanguage) override
Draws the specific abstract element shape.
Definition Display.cpp:138
iv::types::height m_heightText
Definition Display.hpp:46
iv::mimics::Channel m_channel
Definition Display.hpp:44
bool load(const iv::file::xml::node &nodeControlMimic) override
Definition Display.cpp:43
std::optional< iv::types::color > getColorWorkingState() const override
Retrieves the color representing the current working state of the element.
Definition Display.cpp:109
std::optional< iv::mimics::eAlarmState > getAlarmState() const override
Definition Display.cpp:93
Display()
Definition Display.cpp:26
iv::types::height getHeight() const
Get the Height object.
Definition Display.cpp:339
constexpr iv::types::color White
Definition color.hpp:222
Definition enums.hpp:95
double height
Definition types.hpp:14
double width
Definition types.hpp:23
uint32_t color
Definition types.hpp:12
eLanguage
Definition enums.hpp:37
static constexpr uint8_t numCharactersDisplay
Definition Display.hpp:74
static constexpr iv::types::color textColor
Definition Display.hpp:72
static constexpr iv::types::height heightText
Definition Display.hpp:71
static constexpr bool showMeasureUnit
Definition Display.hpp:73
Definition Display.hpp:62
static constexpr std::string_view heightText
Definition Display.hpp:63
static constexpr std::string_view showMeasureUnit
Definition Display.hpp:65
static constexpr std::string_view numCharactersDisplay
Definition Display.hpp:66
static constexpr std::string_view textColor
Definition Display.hpp:64
static constexpr std::string_view displayIndicator
Definition Display.hpp:78
static constexpr std::string_view channel
Definition Display.hpp:79