6 namespace display_menu_base {
18 if (this->value_getter_.has_value()) {
19 result = this->value_getter_.value()(
this);
21 if (this->select_var_ !=
nullptr) {
22 result = this->select_var_->state;
32 if (this->select_var_ !=
nullptr) {
33 this->select_var_->make_call().select_next(
true).perform();
43 if (this->select_var_ !=
nullptr) {
44 this->select_var_->make_call().select_previous(
true).perform();
56 if (this->value_getter_.has_value()) {
57 result = this->value_getter_.value()(
this);
60 snprintf(data,
sizeof(data), this->format_.c_str(), get_number_value_());
70 if (this->number_var_ !=
nullptr) {
71 float last = this->number_var_->state;
72 this->number_var_->make_call().number_increment(
false).perform();
74 if (this->number_var_->state != last) {
86 if (this->number_var_ !=
nullptr) {
87 float last = this->number_var_->state;
88 this->number_var_->make_call().number_decrement(
false).perform();
90 if (this->number_var_->state != last) {
102 if (this->number_var_ !=
nullptr) {
103 if (!this->number_var_->has_state() || this->number_var_->state < this->number_var_->traits.get_min_value()) {
104 result = this->number_var_->traits.get_min_value();
105 }
else if (this->number_var_->state > this->number_var_->traits.get_max_value()) {
106 result = this->number_var_->traits.get_max_value();
108 result = this->number_var_->state;
120 if (this->value_getter_.has_value()) {
121 result = this->value_getter_.value()(
this);
123 result = this->get_switch_state_() ? this->switch_on_text_ : this->switch_off_text_;
136 bool changed =
false;
138 if (this->switch_var_ !=
nullptr) {
139 this->switch_var_->toggle();
149 return (this->value_getter_.has_value()) ? this->value_getter_.value()(
this) :
"";
bool select_prev() override
bool select_next() override