diff options
Diffstat (limited to 'src/theme_builder/components/conditions')
4 files changed, 25 insertions, 4 deletions
diff --git a/src/theme_builder/components/conditions/CompoundConditionEditor.cpp b/src/theme_builder/components/conditions/CompoundConditionEditor.cpp index b7f54f77..beede667 100644 --- a/src/theme_builder/components/conditions/CompoundConditionEditor.cpp +++ b/src/theme_builder/components/conditions/CompoundConditionEditor.cpp @@ -5,6 +5,9 @@ #include "FocusConditionEditor.h" #include "NoConditionEditor.h" #include "cru/common/ClonablePtr.h" +#include "cru/platform/Color.h" +#include "cru/ui/ThemeManager.h" +#include "cru/ui/controls/FlexLayout.h" #include "cru/ui/style/Condition.h" namespace cru::theme_builder::components::conditions { @@ -14,8 +17,12 @@ CompoundConditionEditorChild::CompoundConditionEditorChild( container_.SetFlexDirection(ui::controls::FlexDirection::Horizontal); container_.AddChild(&remove_button_); + remove_button_.GetStyleRuleSet()->SetParent( + ui::ThemeManager::GetInstance()->GetResourceStyleRuleSet( + u"cru.theme_builder.icon-button.style")); remove_button_.SetChild(&remove_button_text_); - remove_button_text_.SetText(u"-"); + remove_button_text_.SetText(u"x"); + remove_button_text_.SetTextColor(ui::colors::red); container_.AddChild(condition_editor_->GetRootControl()); @@ -29,8 +36,16 @@ CompoundConditionEditor::CompoundConditionEditor() { SetLabel(u"Compound Condition"); GetContainer()->AddChild(&children_container_); - GetContainer()->AddChild(add_child_button_.GetRootControl()); + children_container_.SetItemCrossAlign( + ui::controls::FlexCrossAlignment::Start); + + GetHeadContainer()->AddChild(add_child_button_.GetRootControl()); + + add_child_button_.GetButton()->GetStyleRuleSet()->SetParent( + ui::ThemeManager::GetInstance()->GetResourceStyleRuleSet( + u"cru.theme_builder.icon-button.style")); add_child_button_.SetButtonText(u"+"); + add_child_button_.SetButtonTextColor(ui::colors::green); add_child_button_.SetMenuItems({u"And Condition", u"Or Condition", u"Click State Condition", u"Focus Condition", u"Checked Condition", u"No Condition"}); diff --git a/src/theme_builder/components/conditions/CompoundConditionEditor.h b/src/theme_builder/components/conditions/CompoundConditionEditor.h index 771d694f..471087ae 100644 --- a/src/theme_builder/components/conditions/CompoundConditionEditor.h +++ b/src/theme_builder/components/conditions/CompoundConditionEditor.h @@ -43,8 +43,8 @@ class CompoundConditionEditor : public ConditionEditor { bool trigger_change = true); private: - ui::controls::FlexLayout children_container_; ui::components::PopupMenuTextButton add_child_button_; + ui::controls::FlexLayout children_container_; std::vector<std::unique_ptr<CompoundConditionEditorChild>> children_; }; diff --git a/src/theme_builder/components/conditions/ConditionEditor.cpp b/src/theme_builder/components/conditions/ConditionEditor.cpp index 2840b250..3babe19c 100644 --- a/src/theme_builder/components/conditions/ConditionEditor.cpp +++ b/src/theme_builder/components/conditions/ConditionEditor.cpp @@ -10,7 +10,10 @@ namespace cru::theme_builder::components::conditions { ConditionEditor::ConditionEditor() { container_.SetFlexDirection(ui::controls::FlexDirection::Vertical); - container_.AddChild(&label_); + container_.AddChild(&head_container_); + + head_container_.SetFlexDirection(ui::controls::FlexDirection::Horizontal); + head_container_.AddChild(&label_); } ConditionEditor::~ConditionEditor() {} diff --git a/src/theme_builder/components/conditions/ConditionEditor.h b/src/theme_builder/components/conditions/ConditionEditor.h index 426e6ba8..35bac560 100644 --- a/src/theme_builder/components/conditions/ConditionEditor.h +++ b/src/theme_builder/components/conditions/ConditionEditor.h @@ -16,6 +16,8 @@ class ConditionEditor : public Editor { ui::controls::FlexLayout* GetContainer() { return &container_; } + ui::controls::FlexLayout* GetHeadContainer() { return &head_container_; } + String GetLabel() const { return label_.GetText(); } void SetLabel(String label) { label_.SetText(std::move(label)); } @@ -23,6 +25,7 @@ class ConditionEditor : public Editor { private: ui::controls::FlexLayout container_; + ui::controls::FlexLayout head_container_; ui::controls::TextBlock label_; }; |