diff options
Diffstat (limited to 'src/ThemeBuilder/components/conditions/FocusConditionEditor.cpp')
-rw-r--r-- | src/ThemeBuilder/components/conditions/FocusConditionEditor.cpp | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/src/ThemeBuilder/components/conditions/FocusConditionEditor.cpp b/src/ThemeBuilder/components/conditions/FocusConditionEditor.cpp new file mode 100644 index 00000000..1fb99d64 --- /dev/null +++ b/src/ThemeBuilder/components/conditions/FocusConditionEditor.cpp @@ -0,0 +1,25 @@ +#include "FocusConditionEditor.h" +#include "cru/common/ClonablePtr.h" +#include "cru/ui/style/Condition.h" + +namespace cru::theme_builder::components::conditions { +FocusConditionEditor::FocusConditionEditor() { + SetLabel(u"Focus Condition"); + GetContainer()->AddChild(focus_check_box_.GetRootControl()); + + focus_check_box_.SetLabel(u"Focus"); + + ConnectChangeEvent(focus_check_box_); +} + +FocusConditionEditor::~FocusConditionEditor() {} + +ClonablePtr<ui::style::FocusCondition> FocusConditionEditor::GetValue() const { + return ui::style::FocusCondition::Create(focus_check_box_.GetValue()); +} + +void FocusConditionEditor::SetValue(ui::style::FocusCondition* value, + bool trigger_change) { + focus_check_box_.SetValue(value->IsHasFocus(), trigger_change); +} +} // namespace cru::theme_builder::components::conditions |