ESPHome 2026.5.0-dev
Loading...
Searching...
No Matches
lvgl_text.h
Go to the documentation of this file.
1#pragma once
2
6
7namespace esphome {
8namespace lvgl {
9
10class LVGLText : public text::Text {
11 public:
12 void set_control_lambda(const std::function<void(std::string)> &control_lambda) {
13 this->control_lambda_ = control_lambda;
14 if (this->initial_state_.has_value()) {
15 this->control_lambda_(this->initial_state_.value());
16 this->initial_state_.reset();
17 }
18 }
19
20 protected:
21 void control(const std::string &value) override {
22 if (this->control_lambda_ != nullptr) {
23 this->control_lambda_(value);
24 } else {
25 this->initial_state_ = value;
26 }
27 }
28 std::function<void(std::string)> control_lambda_{};
29 optional<std::string> initial_state_{};
30};
31
32} // namespace lvgl
33} // namespace esphome
void control(const std::string &value) override
Definition lvgl_text.h:21
std::function< void(std::string)> control_lambda_
Definition lvgl_text.h:28
optional< std::string > initial_state_
Definition lvgl_text.h:29
void set_control_lambda(const std::function< void(std::string)> &control_lambda)
Definition lvgl_text.h:12
Base-class for all text inputs.
Definition text.h:21
Providing packet encoding functions for exchanging data with a remote host.
Definition a01nyub.cpp:7