Nix (Dev) 3.5.10
dev - 3.5.10 - 1af9301
Loading...
Searching...
No Matches
IIndicator.hpp
Go to the documentation of this file.
1#ifndef LIBS_GUI_IINDICATOR_HPP_
2#define LIBS_GUI_IINDICATOR_HPP_
3
5
6#include <optional>
7#include <string>
8
10{
11public:
12 enum class EDialogPosition
13 {
16 };
17
19 {
20 IconLarge, // Large icon that occupies the entire width of the indicator
21 IconWithBadge,// Large icon with a badge in the top left corner
22 IconWithText // Left text and right icon that occupies half the width of the indicator
23 };
24
25 IIndicator() = default;
26 virtual ~IIndicator() = default;
27
28 virtual void updateIndicator() = 0;
29
31
32 [[nodiscard]] virtual IIndicator::EDialogPosition getPosition() const = 0;
33 [[nodiscard]] virtual eIndicatorRepresentationType representationType() const = 0;
34
35 virtual std::optional<std::string> processIndicatorIcon() = 0;
36 virtual std::optional<std::string> processIndicatorText() = 0;
37 virtual std::optional<iv::types::color> processIndicatorTextColor() = 0;
38 virtual std::optional<iv::types::color> processIndicatorBackground() = 0;
39
40 [[nodiscard]] virtual bool isVisible() const = 0; // If it's visible
41 [[nodiscard]] virtual bool isClickable() const = 0;// If it's clickable
42
43 // If the panel should be displayed without selecting the indicator
44 [[nodiscard]] virtual bool displayPanelDynamic() const = 0;
45};
46
47#endif /* LIBS_GUI_IINDICATOR_HPP_ */
Definition AbstractComponentGUI.hpp:30
Definition IIndicator.hpp:10
virtual std::optional< std::string > processIndicatorIcon()=0
virtual bool isClickable() const =0
virtual bool isVisible() const =0
virtual std::optional< iv::types::color > processIndicatorTextColor()=0
IIndicator()=default
eIndicatorRepresentationType
Definition IIndicator.hpp:19
virtual ~IIndicator()=default
virtual std::optional< iv::types::color > processIndicatorBackground()=0
virtual void updateIndicator()=0
virtual bool displayPanelDynamic() const =0
virtual std::optional< std::string > processIndicatorText()=0
virtual IIndicator::EDialogPosition getPosition() const =0
EDialogPosition
Definition IIndicator.hpp:13
virtual AbstractComponentGUI * panel()=0
virtual eIndicatorRepresentationType representationType() const =0