From 34a64e6ffefaab007578932ddbab931a25f1d56e Mon Sep 17 00:00:00 2001 From: crupest Date: Sun, 15 May 2022 14:15:31 +0800 Subject: ... --- .../components/properties/CheckBoxPropertyEditor.cpp | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 src/ThemeBuilder/components/properties/CheckBoxPropertyEditor.cpp (limited to 'src/ThemeBuilder/components/properties/CheckBoxPropertyEditor.cpp') diff --git a/src/ThemeBuilder/components/properties/CheckBoxPropertyEditor.cpp b/src/ThemeBuilder/components/properties/CheckBoxPropertyEditor.cpp new file mode 100644 index 00000000..fb6f4705 --- /dev/null +++ b/src/ThemeBuilder/components/properties/CheckBoxPropertyEditor.cpp @@ -0,0 +1,19 @@ +#include "CheckBoxPropertyEditor.h" + +namespace cru::theme_builder::components::properties { +CheckBoxPropertyEditor::CheckBoxPropertyEditor() { + container_.SetFlexDirection(ui::controls::FlexDirection::Horizontal); + container_.AddChild(&label_); + container_.AddChild(&check_box_); + + check_box_.CheckedChangeEvent()->AddSpyOnlyHandler( + [this] { RaiseChangeEvent(); }); +} + +CheckBoxPropertyEditor::~CheckBoxPropertyEditor() {} + +void CheckBoxPropertyEditor::SetValue(bool value, bool trigger_change) { + if (!trigger_change) SuppressNextChangeEvent(); + check_box_.SetChecked(value); +} +} // namespace cru::theme_builder::components::properties -- cgit v1.2.3