aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--assets/cru/theme_builder/ThemeResources.xml2
-rw-r--r--assets/cru/ui/DefaultResources.xml5
-rw-r--r--src/theme_builder/components/StyleRuleEditor.cpp6
-rw-r--r--src/theme_builder/components/StyleRuleEditor.h4
-rw-r--r--src/theme_builder/components/conditions/CompoundConditionEditor.cpp2
-rw-r--r--src/theme_builder/components/conditions/ConditionEditor.cpp4
-rw-r--r--src/theme_builder/components/conditions/ConditionEditor.h4
-rw-r--r--src/theme_builder/components/stylers/CompoundStylerEditor.cpp13
-rw-r--r--src/theme_builder/components/stylers/CompoundStylerEditor.h5
9 files changed, 28 insertions, 17 deletions
diff --git a/assets/cru/theme_builder/ThemeResources.xml b/assets/cru/theme_builder/ThemeResources.xml
index b5a9dc73..30b51a47 100644
--- a/assets/cru/theme_builder/ThemeResources.xml
+++ b/assets/cru/theme_builder/ThemeResources.xml
@@ -1,5 +1,5 @@
<Theme>
- <Resource key="cru.theme_builder.editor.label.font">
+ <Resource key="text.font">
<Font size="16" />
</Resource>
diff --git a/assets/cru/ui/DefaultResources.xml b/assets/cru/ui/DefaultResources.xml
index 795ef1a0..e3e5effc 100644
--- a/assets/cru/ui/DefaultResources.xml
+++ b/assets/cru/ui/DefaultResources.xml
@@ -3,6 +3,9 @@
<Resource key="icon.close">
<String value="M4.646 4.646a.5.5 0 0 1 .708 0L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 0 1 0-.708z" />
</Resource>
+ <Resource key="icon.plus">
+ <String value="M8 4a.5.5 0 0 1 .5.5v3h3a.5.5 0 0 1 0 1h-3v3a.5.5 0 0 1-1 0v-3h-3a.5.5 0 0 1 0-1h3v-3A.5.5 0 0 1 8 4z" />
+ </Resource>
<Resource key="icon.plus-square">
<String value="M14 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h12zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2z M8 4a.5.5 0 0 1 .5.5v3h3a.5.5 0 0 1 0 1h-3v3a.5.5 0 0 1-1 0v-3h-3a.5.5 0 0 1 0-1h3v-3A.5.5 0 0 1 8 4z" />
</Resource>
@@ -195,7 +198,7 @@
<BorderStyler>
<BorderStyle>
<Thickness value="1" />
- <CornerRadius all="5" />
+ <Color name="background" value="#ffffff" />
</BorderStyle>
</BorderStyler>
</StyleRule>
diff --git a/src/theme_builder/components/StyleRuleEditor.cpp b/src/theme_builder/components/StyleRuleEditor.cpp
index 6aef6455..d4556825 100644
--- a/src/theme_builder/components/StyleRuleEditor.cpp
+++ b/src/theme_builder/components/StyleRuleEditor.cpp
@@ -21,9 +21,9 @@ StyleRuleEditor::StyleRuleEditor() {
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"x");
- remove_button_text_.SetTextColor(ui::colors::red);
+ remove_button_.SetIconWithSvgPathDataStringResourceKey(u"icon.close",
+ {0, 0, 16, 16});
+ remove_button_.SetIconFillColor(ui::colors::red);
main_layout_.AddChild(&body_layout_);
body_layout_.SetFlexDirection(ui::controls::FlexDirection::Vertical);
diff --git a/src/theme_builder/components/StyleRuleEditor.h b/src/theme_builder/components/StyleRuleEditor.h
index e819fc98..8e3db3de 100644
--- a/src/theme_builder/components/StyleRuleEditor.h
+++ b/src/theme_builder/components/StyleRuleEditor.h
@@ -4,6 +4,7 @@
#include "cru/ui/controls/Button.h"
#include "cru/ui/controls/Control.h"
#include "cru/ui/controls/FlexLayout.h"
+#include "cru/ui/controls/IconButton.h"
#include "cru/ui/controls/TextBlock.h"
#include "cru/ui/style/StyleRule.h"
#include "stylers/StylerEditor.h"
@@ -33,8 +34,7 @@ class StyleRuleEditor : public ui::components::Component {
ui::controls::FlexLayout main_layout_;
ui::controls::TextBlock label_;
ui::controls::FlexLayout head_layout_;
- ui::controls::Button remove_button_;
- ui::controls::TextBlock remove_button_text_;
+ ui::controls::IconButton remove_button_;
ui::controls::FlexLayout body_layout_;
std::unique_ptr<components::conditions::ConditionEditor> condition_editor_;
std::unique_ptr<components::stylers::StylerEditor> styler_editor_;
diff --git a/src/theme_builder/components/conditions/CompoundConditionEditor.cpp b/src/theme_builder/components/conditions/CompoundConditionEditor.cpp
index 01c5db4c..d0105e70 100644
--- a/src/theme_builder/components/conditions/CompoundConditionEditor.cpp
+++ b/src/theme_builder/components/conditions/CompoundConditionEditor.cpp
@@ -48,7 +48,7 @@ CompoundConditionEditor::CompoundConditionEditor() {
ui::ThemeManager::GetInstance()->GetResourceStyleRuleSet(
u"cru.theme_builder.icon-button.style"));
add_child_button_.GetButton()->SetIconWithSvgPathDataStringResourceKey(
- u"icon.plus-square", {0, 0, 16, 16});
+ u"icon.plus", {0, 0, 16, 16});
add_child_button_.GetButton()->SetPreferredSize({24, 24});
add_child_button_.GetButton()->SetPadding(ui::Thickness(2));
add_child_button_.GetButton()->SetIconFillColor(ui::colors::green);
diff --git a/src/theme_builder/components/conditions/ConditionEditor.cpp b/src/theme_builder/components/conditions/ConditionEditor.cpp
index 3babe19c..a8afa7a7 100644
--- a/src/theme_builder/components/conditions/ConditionEditor.cpp
+++ b/src/theme_builder/components/conditions/ConditionEditor.cpp
@@ -1,4 +1,5 @@
#include "ConditionEditor.h"
+#include "../Common.h"
#include "CheckedConditionEditor.h"
#include "ClickStateConditionEditor.h"
#include "CompoundConditionEditor.h"
@@ -9,6 +10,9 @@
namespace cru::theme_builder::components::conditions {
ConditionEditor::ConditionEditor() {
+ border_.SetChild(&container_);
+ border_.SetBackgroundBrush(CreateRandomEditorBackgroundBrush());
+
container_.SetFlexDirection(ui::controls::FlexDirection::Vertical);
container_.AddChild(&head_container_);
diff --git a/src/theme_builder/components/conditions/ConditionEditor.h b/src/theme_builder/components/conditions/ConditionEditor.h
index 35bac560..eea76972 100644
--- a/src/theme_builder/components/conditions/ConditionEditor.h
+++ b/src/theme_builder/components/conditions/ConditionEditor.h
@@ -1,6 +1,7 @@
#pragma once
#include "../Editor.h"
#include "cru/common/ClonablePtr.h"
+#include "cru/ui/controls/Container.h"
#include "cru/ui/controls/FlexLayout.h"
#include "cru/ui/controls/TextBlock.h"
#include "cru/ui/style/Condition.h"
@@ -12,7 +13,7 @@ class ConditionEditor : public Editor {
~ConditionEditor() override;
public:
- ui::controls::Control* GetRootControl() override { return &container_; }
+ ui::controls::Control* GetRootControl() override { return &border_; }
ui::controls::FlexLayout* GetContainer() { return &container_; }
@@ -24,6 +25,7 @@ class ConditionEditor : public Editor {
virtual ClonablePtr<ui::style::Condition> GetCondition() = 0;
private:
+ ui::controls::Container border_;
ui::controls::FlexLayout container_;
ui::controls::FlexLayout head_container_;
ui::controls::TextBlock label_;
diff --git a/src/theme_builder/components/stylers/CompoundStylerEditor.cpp b/src/theme_builder/components/stylers/CompoundStylerEditor.cpp
index 258eeb26..e5a7f32e 100644
--- a/src/theme_builder/components/stylers/CompoundStylerEditor.cpp
+++ b/src/theme_builder/components/stylers/CompoundStylerEditor.cpp
@@ -15,9 +15,9 @@ CompoundStylerEditorChild::CompoundStylerEditorChild(
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"x");
- remove_button_text_.SetTextColor(ui::colors::red);
+ remove_button_.SetIconWithSvgPathDataStringResourceKey(u"icon.close",
+ {0, 0, 16, 16});
+ remove_button_.SetIconFillColor(ui::colors::red);
container_.AddChild(styler_editor_->GetRootControl());
@@ -35,11 +35,14 @@ CompoundStylerEditor::CompoundStylerEditor() {
ui::controls::FlexCrossAlignment::Start);
GetHeadContainer()->AddChild(add_child_button_.GetRootControl());
- add_child_button_.SetButtonText(u"+");
add_child_button_.GetButton()->GetStyleRuleSet()->SetParent(
ui::ThemeManager::GetInstance()->GetResourceStyleRuleSet(
u"cru.theme_builder.icon-button.style"));
- add_child_button_.SetButtonTextColor(ui::colors::green);
+ add_child_button_.GetButton()->SetIconWithSvgPathDataStringResourceKey(
+ u"icon.plus", {0, 0, 16, 16});
+ add_child_button_.GetButton()->SetPreferredSize({24, 24});
+ add_child_button_.GetButton()->SetPadding(ui::Thickness(2));
+ add_child_button_.GetButton()->SetIconFillColor(ui::colors::green);
add_child_button_.SetMenuItems({
u"Compound Styler",
u"Border Styler",
diff --git a/src/theme_builder/components/stylers/CompoundStylerEditor.h b/src/theme_builder/components/stylers/CompoundStylerEditor.h
index 33a3d7cf..fe9fb47c 100644
--- a/src/theme_builder/components/stylers/CompoundStylerEditor.h
+++ b/src/theme_builder/components/stylers/CompoundStylerEditor.h
@@ -20,8 +20,7 @@ class CompoundStylerEditorChild : public ui::components::Component {
private:
ui::controls::FlexLayout container_;
- ui::controls::Button remove_button_;
- ui::controls::TextBlock remove_button_text_;
+ ui::controls::IconButton remove_button_;
std::unique_ptr<StylerEditor> styler_editor_;
Event<std::nullptr_t> remove_event_;
@@ -45,6 +44,6 @@ class CompoundStylerEditor : public StylerEditor {
private:
ui::controls::FlexLayout children_container_;
std::vector<std::unique_ptr<CompoundStylerEditorChild>> children_;
- ui::components::PopupMenuTextButton add_child_button_;
+ ui::components::PopupMenuIconButton add_child_button_;
};
} // namespace cru::theme_builder::components::stylers