Add virtual event methods to UI_item and override them in derived class
This commit is contained in:
2024-08-20 00:49:49 +02:00
parent 7cf109904e
commit afcbc0f231
4 changed files with 7 additions and 3 deletions
+1 -1
View File
@@ -13,7 +13,7 @@ class UI_button : public UI_item
void from_json(const json& j) override;
json to_json() const override;
void click() const;
void click() const override;
private:
std::function<void(std::string)> p_on_click = nullptr;
};
+1 -1
View File
@@ -14,7 +14,7 @@ class UI_combobox : public UI_x_boxes
UI_combobox(const json& j);
void set_selected(size_t selected);
void set_selected(std::string selected);
void set_selected(std::string selected) override;
size_t selected() const;
std::string selected_text() const;
+4
View File
@@ -34,6 +34,10 @@ class UI_item {
virtual json to_json() const;
virtual void click() const {};
virtual void set_selected(std::string selected) {UNUSED(selected);};
virtual void set_value(double value) {UNUSED(value);};
protected:
std::string p_id;
std::string p_type;
+1 -1
View File
@@ -9,7 +9,7 @@ class UI_slider : public UI_item
UI_slider(std::string id, std::string text, Color fg_color, Color bg_color, double min, double max, double value, std::function<void(std::string, double)> on_change = nullptr);
UI_slider(const json& j);
void set_value(double value);
void set_value(double value) override;
double value() const;
void from_json(const json& j) override;