Nix (Dev) 3.5.10
dev - 3.5.10 - 1af9301
Loading...
Searching...
No Matches
PmsPriorities.hpp
Go to the documentation of this file.
1#ifndef IV_SRC_MIMICS_MODEL_ELEMENTS_PMSPRIORITIES_HPP_
2#define IV_SRC_MIMICS_MODEL_ELEMENTS_PMSPRIORITIES_HPP_
3
5#include "mimics/structs.hpp"
7
9{
10
12{
13public:
15 ~PmsPriorities() 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 void updateEnabledLanguages(const std::set<iv::eLanguage> &enabledLanguages) override;
21
22 //controller
23 void getChannels(const std::shared_ptr<std::vector<std::weak_ptr<iv::channels::AbstractChannel>>>
24 &channelsInControl) const override;
25 void mapChannels(const std::function<void(std::weak_ptr<iv::channels::AbstractChannel> &)> &mapFunction) override;
26 void executeCommand(const std::string &strAction) const override;
27 [[nodiscard]] std::shared_ptr<iv::mimics::AbstractMimicElement> clone() const override;
28 [[nodiscard]] bool hasAlternativeAction() const override;
29 void runAlternativeAction(CDialog *dlgFatherRef) override;
30
31 // View
32 void drawSpecific(IGraphics *graphics, std::optional<iv::types::color> colorWorkingState,
33 std::optional<iv::types::color> colorControlState, iv::eLanguage drawingLanguage) override;
34
35 // UI
37 [[nodiscard]] bool canShowCircularMenu() const override;
38
39 // TODO RAG: Mover al src/Mimic/Model/Structs, pero de momentos no se puede pq ya existe un src/Model/Structs
40 // y se confunden los includes.
42 {
43 std::string name;
44 std::weak_ptr<iv::channels::AbstractChannel> channelPriority;
45 std::weak_ptr<iv::channels::AbstractChannel> channelPriorityFeedback;
46 };
47
48private:
49 PmsPriorities(const PmsPriorities &other);
50
51 std::shared_ptr<std::vector<PriorityData>> m_priorities;
54
55 // View
57 std::unique_ptr<CRectangleGraphics> m_rectangleOpt {nullptr};
58 std::unique_ptr<CDrawText> m_drawText {nullptr};
59
60 struct Keys
61 {
62 static constexpr std::string_view textHeight {"TextHeight"};
63 static constexpr std::string_view hasPassword {"HasPassword"};
64 static constexpr std::string_view name {"Name"};
65 static constexpr std::string_view channelPriority {"ChannelPriority"};
66 static constexpr std::string_view channelPriorityFeedback {"ChannelPriorityFeedback"};
67 };
69 {
70 static constexpr std::string string {};
71 static constexpr iv::types::height textHeight {20};
72 static constexpr bool hasPassword {false};
73 };
74 struct Sections
75 {
76 static constexpr std::string_view pmsPriorities {"PmsPriorities"};
77 static constexpr std::string_view priorities {"Priorities"};
78 static constexpr std::string_view priority {"Priority"};
79 static constexpr std::string_view texts {"Texts"};
80 static constexpr std::string_view text {"Text"};
81 };
82 struct Constants
83 {
84 struct Colors
85 {
87 };
88 };
89};
90
91}// namespace iv::mimics::elements
92
93#endif//IV_SRC_MIMICS_MODEL_ELEMENTS_PMSPRIORITIES_HPP_
Definition AbstractComponentGUI.hpp:30
Definition CDialog.hpp:21
Definition IGraphics.hpp:20
Definition xmlFile.hpp:15
Definition AbstractMimicElement.hpp:21
Definition PmsPriorities.hpp:12
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 PmsPriorities.cpp:171
void runAlternativeAction(CDialog *dlgFatherRef) override
Ejecuta código específico del control.
Definition PmsPriorities.cpp:250
PmsPriorities()
Definition PmsPriorities.cpp:18
iv::types::height m_textHeight
Definition PmsPriorities.hpp:56
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 PmsPriorities.cpp:200
std::unique_ptr< CRectangleGraphics > m_rectangleOpt
Definition PmsPriorities.hpp:57
bool m_hasPassword
Definition PmsPriorities.hpp:52
bool canShowCircularMenu() const override
Behaviours gets ///.
Definition PmsPriorities.cpp:240
bool hasAlternativeAction() const override
Definition PmsPriorities.cpp:245
void updateEnabledLanguages(const std::set< iv::eLanguage > &enabledLanguages) override
Definition PmsPriorities.cpp:151
AbstractComponentGUI * panelEditControl() override
UI methods ///.
Definition PmsPriorities.cpp:33
void mapChannels(const std::function< void(std::weak_ptr< iv::channels::AbstractChannel > &)> &mapFunction) override
Processed gets ///.
Definition PmsPriorities.cpp:181
void executeCommand(const std::string &strAction) const override
Run actions ///.
Definition PmsPriorities.cpp:190
iv::model::LocalizedText m_text
Definition PmsPriorities.hpp:53
bool save(iv::file::xml::node &nodeControlMimic) const override
Definition PmsPriorities.cpp:124
std::shared_ptr< iv::mimics::AbstractMimicElement > clone() const override
Definition PmsPriorities.cpp:195
bool load(const iv::file::xml::node &nodeControlMimic) override
Definition PmsPriorities.cpp:90
std::shared_ptr< std::vector< PriorityData > > m_priorities
Definition PmsPriorities.hpp:51
std::unique_ptr< CDrawText > m_drawText
Definition PmsPriorities.hpp:58
constexpr iv::types::color Black
Definition color.hpp:21
Definition enums.hpp:95
double height
Definition types.hpp:14
uint32_t color
Definition types.hpp:12
eLanguage
Definition enums.hpp:37
static constexpr iv::types::color text
Definition PmsPriorities.hpp:86
Definition PmsPriorities.hpp:83
static constexpr bool hasPassword
Definition PmsPriorities.hpp:72
static constexpr iv::types::height textHeight
Definition PmsPriorities.hpp:71
Definition PmsPriorities.hpp:61
static constexpr std::string_view hasPassword
Definition PmsPriorities.hpp:63
static constexpr std::string_view channelPriorityFeedback
Definition PmsPriorities.hpp:66
static constexpr std::string_view textHeight
Definition PmsPriorities.hpp:62
static constexpr std::string_view name
Definition PmsPriorities.hpp:64
static constexpr std::string_view channelPriority
Definition PmsPriorities.hpp:65
std::weak_ptr< iv::channels::AbstractChannel > channelPriority
Definition PmsPriorities.hpp:44
std::weak_ptr< iv::channels::AbstractChannel > channelPriorityFeedback
Definition PmsPriorities.hpp:45
std::string name
Definition PmsPriorities.hpp:43
Definition PmsPriorities.hpp:75
static constexpr std::string_view text
Definition PmsPriorities.hpp:80
static constexpr std::string_view priorities
Definition PmsPriorities.hpp:77
static constexpr std::string_view pmsPriorities
Definition PmsPriorities.hpp:76
static constexpr std::string_view texts
Definition PmsPriorities.hpp:79
static constexpr std::string_view priority
Definition PmsPriorities.hpp:78
Definition structs.hpp:29