diff options
Diffstat (limited to 'src/theme_builder/components/stylers')
18 files changed, 0 insertions, 707 deletions
diff --git a/src/theme_builder/components/stylers/BorderStylerEditor.cpp b/src/theme_builder/components/stylers/BorderStylerEditor.cpp deleted file mode 100644 index 81eb66d3..00000000 --- a/src/theme_builder/components/stylers/BorderStylerEditor.cpp +++ /dev/null @@ -1,100 +0,0 @@ -#include "BorderStylerEditor.h" -#include "cru/common/ClonablePtr.h" -#include "cru/platform/graphics/Brush.h" -#include "cru/platform/graphics/Factory.h" -#include "cru/platform/gui/UiApplication.h" -#include "cru/ui/style/ApplyBorderStyleInfo.h" -#include "cru/ui/style/Styler.h" - -namespace cru::theme_builder::components::stylers { -BorderStylerEditor::BorderStylerEditor() { - SetLabel(u"Border Styler"); - GetContainer()->AddChild(corner_radius_editor_.GetRootControl()); - GetContainer()->AddChild(thickness_editor_.GetRootControl()); - GetContainer()->AddChild(brush_editor_.GetRootControl()); - GetContainer()->AddChild(foreground_brush_editor_.GetRootControl()); - GetContainer()->AddChild(background_brush_editor_.GetRootControl()); - - thickness_editor_.GetEditor()->SetLabel(u"Thickness"); - brush_editor_.GetEditor()->SetLabel(u"Border"); - foreground_brush_editor_.GetEditor()->SetLabel(u"Foreground"); - background_brush_editor_.GetEditor()->SetLabel(u"Background"); - - ConnectChangeEvent(corner_radius_editor_); - ConnectChangeEvent(thickness_editor_); - ConnectChangeEvent(brush_editor_); - ConnectChangeEvent(foreground_brush_editor_); - ConnectChangeEvent(background_brush_editor_); -} - -BorderStylerEditor::~BorderStylerEditor() {} - -ClonablePtr<ui::style::BorderStyler> BorderStylerEditor::GetValue() { - auto graphics_factory = - platform::gui::IUiApplication::GetInstance()->GetGraphicsFactory(); - - ui::style::ApplyBorderStyleInfo border_style; - border_style.border_radius = corner_radius_editor_.GetValue(); - border_style.border_thickness = thickness_editor_.GetValue(); - - if (brush_editor_.IsEnabled()) { - border_style.border_brush = graphics_factory->CreateSolidColorBrush( - brush_editor_.GetEditor()->GetValue()); - } - - if (foreground_brush_editor_.IsEnabled()) { - border_style.foreground_brush = graphics_factory->CreateSolidColorBrush( - foreground_brush_editor_.GetEditor()->GetValue()); - } - - if (background_brush_editor_.IsEnabled()) { - border_style.background_brush = graphics_factory->CreateSolidColorBrush( - background_brush_editor_.GetEditor()->GetValue()); - } - - return ui::style::BorderStyler::Create(border_style); -} - -void BorderStylerEditor::SetValue(ui::style::BorderStyler* styler, - bool trigger_change) { - Expects(styler); - - auto border_style = styler->GetBorderStyle(); - corner_radius_editor_.SetValue(border_style.border_radius, false); - thickness_editor_.SetValue(border_style.border_thickness, false); - - brush_editor_.SetEnabled(border_style.border_brush.has_value(), false); - if (border_style.border_brush.has_value()) { - brush_editor_.GetEditor()->SetValue( - std::dynamic_pointer_cast<platform::graphics::ISolidColorBrush>( - border_style.border_brush.value()) - ->GetColor(), - false); - } - - foreground_brush_editor_.SetEnabled(border_style.foreground_brush.has_value(), - false); - if (border_style.foreground_brush.has_value()) { - foreground_brush_editor_.GetEditor()->SetValue( - std::dynamic_pointer_cast<platform::graphics::ISolidColorBrush>( - border_style.foreground_brush.value()) - ->GetColor(), - false); - } - - background_brush_editor_.SetEnabled(border_style.background_brush.has_value(), - false); - if (border_style.background_brush.has_value()) { - background_brush_editor_.GetEditor()->SetValue( - std::dynamic_pointer_cast<platform::graphics::ISolidColorBrush>( - border_style.background_brush.value()) - ->GetColor(), - false); - } - - if (trigger_change) { - RaiseChangeEvent(); - } -} - -} // namespace cru::theme_builder::components::stylers diff --git a/src/theme_builder/components/stylers/BorderStylerEditor.h b/src/theme_builder/components/stylers/BorderStylerEditor.h deleted file mode 100644 index 539262d6..00000000 --- a/src/theme_builder/components/stylers/BorderStylerEditor.h +++ /dev/null @@ -1,36 +0,0 @@ -#pragma once -#include "../properties/ColorPropertyEditor.h" -#include "../properties/CornerRadiusPropertyEditor.h" -#include "../properties/OptionalPropertyEditor.h" -#include "../properties/ThicknessPropertyEditor.h" -#include "StylerEditor.h" -#include "cru/common/ClonablePtr.h" - -namespace cru::theme_builder::components::stylers { -class BorderStylerEditor : public StylerEditor { - public: - BorderStylerEditor(); - ~BorderStylerEditor() override; - - ClonablePtr<ui::style::BorderStyler> GetValue(); - void SetValue(ui::style::BorderStyler* styler, bool trigger_change = true); - void SetValue(const ClonablePtr<ui::style::BorderStyler>& styler, - bool trigger_change = true) { - SetValue(styler.get(), trigger_change); - } - - ClonablePtr<ui::style::Styler> GetStyler() override { return GetValue(); } - - private: - properties::OptionalPropertyEditor<properties::CornerRadiusPropertyEditor> - corner_radius_editor_; - properties::OptionalPropertyEditor<properties::ThicknessPropertyEditor> - thickness_editor_; - properties::OptionalPropertyEditor<properties::ColorPropertyEditor> - brush_editor_; - properties::OptionalPropertyEditor<properties::ColorPropertyEditor> - foreground_brush_editor_; - properties::OptionalPropertyEditor<properties::ColorPropertyEditor> - background_brush_editor_; -}; -} // namespace cru::theme_builder::components::stylers diff --git a/src/theme_builder/components/stylers/CompoundStylerEditor.cpp b/src/theme_builder/components/stylers/CompoundStylerEditor.cpp deleted file mode 100644 index 6b8a5033..00000000 --- a/src/theme_builder/components/stylers/CompoundStylerEditor.cpp +++ /dev/null @@ -1,105 +0,0 @@ -#include "CompoundStylerEditor.h" -#include "BorderStylerEditor.h" -#include "ContentBrushStylerEditor.h" -#include "CursorStylerEditor.h" -#include "FontStylerEditor.h" -#include "MarginStylerEditor.h" -#include "PaddingStylerEditor.h" -#include "PreferredSizeStylerEditor.h" -#include "cru/common/ClonablePtr.h" -#include "cru/ui/ThemeManager.h" -#include "cru/ui/style/Styler.h" - -namespace cru::theme_builder::components::stylers { -CompoundStylerEditor::CompoundStylerEditor() { - SetLabel(u"Compound Styler"); - GetContainer()->AddChild(&children_container_); - children_container_.SetFlexDirection(ui::controls::FlexDirection::Vertical); - 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_.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", - u"Cursor Styler", u"Content Brush Styler", - u"Font Styler", u"Margin Styler", - u"Padding Styler", u"Preferred Size Styler"}); - add_child_button_.MenuItemSelectedEvent()->AddHandler([this](Index index) { - std::unique_ptr<StylerEditor> editor; - switch (index) { - case 0: - editor = std::make_unique<CompoundStylerEditor>(); - break; - case 1: - editor = std::make_unique<BorderStylerEditor>(); - break; - case 2: - editor = std::make_unique<CursorStylerEditor>(); - break; - case 3: - editor = std::make_unique<ContentBrushStylerEditor>(); - break; - case 4: - editor = std::make_unique<FontStylerEditor>(); - break; - case 5: - editor = std::make_unique<MarginStylerEditor>(); - break; - case 6: - editor = std::make_unique<PaddingStylerEditor>(); - break; - case 7: - editor = std::make_unique<PreferredSizeStylerEditor>(); - break; - default: - break; - } - if (editor) { - ConnectChangeEvent(editor.get()); - editor->RemoveEvent()->AddSpyOnlyHandler([this, c = editor.get()] { - auto index = this->children_container_.IndexOf(c->GetRootControl()); - this->children_.erase(this->children_.begin() + index); - this->children_container_.RemoveChildAt(index); - RaiseChangeEvent(); - }); - children_.push_back(std::move(editor)); - children_container_.AddChild(editor->GetRootControl()); - RaiseChangeEvent(); - } - }); -} - -CompoundStylerEditor::~CompoundStylerEditor() {} - -ClonablePtr<ui::style::CompoundStyler> CompoundStylerEditor::GetValue() { - std::vector<ClonablePtr<ui::style::Styler>> children_styler; - for (auto& child : children_) { - children_styler.push_back(child->GetStyler()); - } - return ui::style::CompoundStyler::Create(std::move(children_styler)); -} - -void CompoundStylerEditor::SetValue(ui::style::CompoundStyler* value, - bool trigger_change) { - children_.clear(); - for (const auto& styler : value->GetChildren()) { - auto editor = CreateStylerEditor(styler.get()); - ConnectChangeEvent(editor.get()); - editor->RemoveEvent()->AddSpyOnlyHandler([this, c = editor.get()] { - auto index = this->children_container_.IndexOf(c->GetRootControl()); - this->children_.erase(this->children_.begin() + index); - this->children_container_.RemoveChildAt(index); - RaiseChangeEvent(); - }); - children_.push_back(std::move(editor)); - children_container_.AddChild(children_.back()->GetRootControl()); - } -} -} // namespace cru::theme_builder::components::stylers diff --git a/src/theme_builder/components/stylers/CompoundStylerEditor.h b/src/theme_builder/components/stylers/CompoundStylerEditor.h deleted file mode 100644 index 57150e83..00000000 --- a/src/theme_builder/components/stylers/CompoundStylerEditor.h +++ /dev/null @@ -1,30 +0,0 @@ -#pragma once -#include "StylerEditor.h" -#include "cru/common/ClonablePtr.h" -#include "cru/ui/DeleteLater.h" -#include "cru/ui/components/PopupButton.h" -#include "cru/ui/controls/FlexLayout.h" -#include "cru/ui/style/Styler.h" - -namespace cru::theme_builder::components::stylers { -class CompoundStylerEditor : public StylerEditor { - public: - CompoundStylerEditor(); - ~CompoundStylerEditor() override; - - public: - ClonablePtr<ui::style::CompoundStyler> GetValue(); - void SetValue(ui::style::CompoundStyler* styler, bool trigger_change = true); - void SetValue(const ClonablePtr<ui::style::CompoundStyler>& styler, - bool trigger_change = true) { - SetValue(styler.get(), trigger_change); - } - - ClonablePtr<ui::style::Styler> GetStyler() override { return GetValue(); } - - private: - ui::controls::FlexLayout children_container_; - std::vector<ui::DeleteLaterPtr<StylerEditor>> children_; - ui::components::PopupMenuIconButton add_child_button_; -}; -} // namespace cru::theme_builder::components::stylers diff --git a/src/theme_builder/components/stylers/ContentBrushStylerEditor.cpp b/src/theme_builder/components/stylers/ContentBrushStylerEditor.cpp deleted file mode 100644 index bd649c67..00000000 --- a/src/theme_builder/components/stylers/ContentBrushStylerEditor.cpp +++ /dev/null @@ -1,31 +0,0 @@ -#include "ContentBrushStylerEditor.h" -#include "cru/platform/graphics/Factory.h" -#include "cru/platform/gui/UiApplication.h" -#include "cru/ui/style/Styler.h" - -namespace cru::theme_builder::components::stylers { -ContentBrushStylerEditor::ContentBrushStylerEditor() { - GetContainer()->AddChild(color_editor_.GetRootControl()); - - ConnectChangeEvent(color_editor_); -} - -ContentBrushStylerEditor::~ContentBrushStylerEditor() {} - -ClonablePtr<ui::style::ContentBrushStyler> ContentBrushStylerEditor::GetValue() - const { - return ui::style::ContentBrushStyler::Create( - platform::gui::IUiApplication::GetInstance() - ->GetGraphicsFactory() - ->CreateSolidColorBrush(color_editor_.GetValue())); -} - -void ContentBrushStylerEditor::SetValue(ui::style::ContentBrushStyler* value, - bool trigger_change) { - color_editor_.SetValue( - std::dynamic_pointer_cast<platform::graphics::ISolidColorBrush>( - value->GetBrush()) - ->GetColor(), - trigger_change); -} -} // namespace cru::theme_builder::components::stylers diff --git a/src/theme_builder/components/stylers/ContentBrushStylerEditor.h b/src/theme_builder/components/stylers/ContentBrushStylerEditor.h deleted file mode 100644 index 8385b7c3..00000000 --- a/src/theme_builder/components/stylers/ContentBrushStylerEditor.h +++ /dev/null @@ -1,24 +0,0 @@ -#pragma once -#include "../Editor.h" -#include "../properties/ColorPropertyEditor.h" -#include "StylerEditor.h" -#include "cru/common/ClonablePtr.h" -#include "cru/ui/style/Styler.h" - -namespace cru::theme_builder::components::stylers { -class ContentBrushStylerEditor : public StylerEditor { - public: - ContentBrushStylerEditor(); - ~ContentBrushStylerEditor(); - - public: - ClonablePtr<ui::style::ContentBrushStyler> GetValue() const; - void SetValue(ui::style::ContentBrushStyler* value, - bool trigger_change = true); - - ClonablePtr<ui::style::Styler> GetStyler() override { return GetValue(); } - - private: - properties::ColorPropertyEditor color_editor_; -}; -} // namespace cru::theme_builder::components::stylers diff --git a/src/theme_builder/components/stylers/CursorStylerEditor.cpp b/src/theme_builder/components/stylers/CursorStylerEditor.cpp deleted file mode 100644 index 9984d81a..00000000 --- a/src/theme_builder/components/stylers/CursorStylerEditor.cpp +++ /dev/null @@ -1,65 +0,0 @@ -#include "CursorStylerEditor.h" -#include "cru/platform/gui/Cursor.h" -#include "cru/platform/gui/UiApplication.h" - -namespace cru::theme_builder::components::stylers { -CursorStylerEditor::CursorStylerEditor() { - SetLabel(u"Cursor Styler"); - GetContainer()->AddChild(cursor_select_.GetRootControl()); - - cursor_select_.SetLabel(u"Cursor"); - cursor_select_.SetItems({u"arrow", u"hand", u"ibeam"}); - cursor_select_.SetSelectedIndex(0); - - ConnectChangeEvent(cursor_select_); -} - -CursorStylerEditor::~CursorStylerEditor() {} - -ClonablePtr<ui::style::CursorStyler> CursorStylerEditor::GetValue() { - auto cursor_manager = - platform::gui::IUiApplication::GetInstance()->GetCursorManager(); - - std::shared_ptr<platform::gui::ICursor> cursor; - - switch (cursor_select_.GetSelectedIndex()) { - case 0: - cursor = cursor_manager->GetSystemCursor( - platform::gui::SystemCursorType::Arrow); - break; - case 1: - cursor = cursor_manager->GetSystemCursor( - platform::gui::SystemCursorType::Hand); - break; - case 2: - cursor = cursor_manager->GetSystemCursor( - platform::gui::SystemCursorType::IBeam); - break; - } - - return ui::style::CursorStyler::Create(cursor); -} - -void CursorStylerEditor::SetValue(ui::style::CursorStyler* styler, - bool trigger_change) { - auto cursor_manager = - platform::gui::IUiApplication::GetInstance()->GetCursorManager(); - - auto cursor = styler->GetCursor(); - - if (cursor == - cursor_manager->GetSystemCursor(platform::gui::SystemCursorType::Arrow)) { - cursor_select_.SetSelectedIndex(0); - } else if (cursor == cursor_manager->GetSystemCursor( - platform::gui::SystemCursorType::Hand)) { - cursor_select_.SetSelectedIndex(1); - } else if (cursor == cursor_manager->GetSystemCursor( - platform::gui::SystemCursorType::IBeam)) { - cursor_select_.SetSelectedIndex(2); - } - - if (trigger_change) { - RaiseChangeEvent(); - } -} -} // namespace cru::theme_builder::components::stylers diff --git a/src/theme_builder/components/stylers/CursorStylerEditor.h b/src/theme_builder/components/stylers/CursorStylerEditor.h deleted file mode 100644 index 552619a0..00000000 --- a/src/theme_builder/components/stylers/CursorStylerEditor.h +++ /dev/null @@ -1,24 +0,0 @@ -#pragma once -#include "../properties/SelectPropertyEditor.h" -#include "StylerEditor.h" - -namespace cru::theme_builder::components::stylers { -class CursorStylerEditor : public StylerEditor { - public: - CursorStylerEditor(); - ~CursorStylerEditor() override; - - public: - ClonablePtr<ui::style::CursorStyler> GetValue(); - void SetValue(ui::style::CursorStyler* styler, bool trigger_change = true); - void SetValue(const ClonablePtr<ui::style::CursorStyler>& styler, - bool trigger_change = true) { - SetValue(styler.get(), trigger_change); - } - - ClonablePtr<ui::style::Styler> GetStyler() override { return GetValue(); } - - private: - properties::SelectPropertyEditor cursor_select_; -}; -} // namespace cru::theme_builder::components::stylers diff --git a/src/theme_builder/components/stylers/FontStylerEditor.cpp b/src/theme_builder/components/stylers/FontStylerEditor.cpp deleted file mode 100644 index 9787a4fd..00000000 --- a/src/theme_builder/components/stylers/FontStylerEditor.cpp +++ /dev/null @@ -1,23 +0,0 @@ -#include "FontStylerEditor.h" -#include "cru/platform/graphics/Factory.h" -#include "cru/platform/gui/UiApplication.h" -#include "cru/ui/style/Styler.h" - -namespace cru::theme_builder::components::stylers { -FontStylerEditor::FontStylerEditor() { - GetContainer()->AddChild(font_editor_.GetRootControl()); - - ConnectChangeEvent(font_editor_); -} - -FontStylerEditor::~FontStylerEditor() {} - -ClonablePtr<ui::style::FontStyler> FontStylerEditor::GetValue() const { - return ui::style::FontStyler::Create(font_editor_.GetValue()); -} - -void FontStylerEditor::SetValue(ui::style::FontStyler* value, - bool trigger_change) { - font_editor_.SetValue(value->GetFont(), trigger_change); -} -} // namespace cru::theme_builder::components::stylers diff --git a/src/theme_builder/components/stylers/FontStylerEditor.h b/src/theme_builder/components/stylers/FontStylerEditor.h deleted file mode 100644 index ccd12113..00000000 --- a/src/theme_builder/components/stylers/FontStylerEditor.h +++ /dev/null @@ -1,23 +0,0 @@ -#pragma once -#include "../Editor.h" -#include "../properties/FontPropertyEditor.h" -#include "StylerEditor.h" -#include "cru/common/ClonablePtr.h" -#include "cru/ui/style/Styler.h" - -namespace cru::theme_builder::components::stylers { -class FontStylerEditor : public StylerEditor { - public: - FontStylerEditor(); - ~FontStylerEditor(); - - public: - ClonablePtr<ui::style::FontStyler> GetValue() const; - void SetValue(ui::style::FontStyler* value, bool trigger_change = true); - - ClonablePtr<ui::style::Styler> GetStyler() override { return GetValue(); } - - private: - properties::FontPropertyEditor font_editor_; -}; -} // namespace cru::theme_builder::components::stylers diff --git a/src/theme_builder/components/stylers/MarginStylerEditor.cpp b/src/theme_builder/components/stylers/MarginStylerEditor.cpp deleted file mode 100644 index d7d89acb..00000000 --- a/src/theme_builder/components/stylers/MarginStylerEditor.cpp +++ /dev/null @@ -1,28 +0,0 @@ -#include "MarginStylerEditor.h" -#include "cru/ui/style/Styler.h" - -namespace cru::theme_builder::components::stylers { -MarginStylerEditor::MarginStylerEditor() { - SetLabel(u"Margin Styler"); - GetContainer()->AddChild(thickness_editor_.GetRootControl()); - - thickness_editor_.SetLabel(u"Thickness"); - - ConnectChangeEvent(thickness_editor_); -} - -MarginStylerEditor::~MarginStylerEditor() {} - -ClonablePtr<ui::style::MarginStyler> MarginStylerEditor::GetValue() { - return ui::style::MarginStyler::Create(thickness_editor_.GetValue()); -} - -void MarginStylerEditor::SetValue(ui::style::MarginStyler* styler, - bool trigger_change) { - thickness_editor_.SetValue(styler->GetMargin(), false); - - if (trigger_change) { - RaiseChangeEvent(); - } -} -} // namespace cru::theme_builder::components::stylers diff --git a/src/theme_builder/components/stylers/MarginStylerEditor.h b/src/theme_builder/components/stylers/MarginStylerEditor.h deleted file mode 100644 index 9de6f1a2..00000000 --- a/src/theme_builder/components/stylers/MarginStylerEditor.h +++ /dev/null @@ -1,25 +0,0 @@ -#pragma once -#include "../properties/ThicknessPropertyEditor.h" -#include "StylerEditor.h" -#include "cru/common/ClonablePtr.h" -#include "cru/ui/style/Styler.h" - -namespace cru::theme_builder::components::stylers { -class MarginStylerEditor : public StylerEditor { - public: - MarginStylerEditor(); - ~MarginStylerEditor() override; - - ClonablePtr<ui::style::MarginStyler> GetValue(); - void SetValue(ui::style::MarginStyler* styler, bool trigger_change = true); - void SetValue(const ClonablePtr<ui::style::MarginStyler>& styler, - bool trigger_change = true) { - SetValue(styler.get(), trigger_change); - } - - ClonablePtr<ui::style::Styler> GetStyler() override { return GetValue(); } - - private: - properties::ThicknessPropertyEditor thickness_editor_; -}; -} // namespace cru::theme_builder::components::stylers diff --git a/src/theme_builder/components/stylers/PaddingStylerEditor.cpp b/src/theme_builder/components/stylers/PaddingStylerEditor.cpp deleted file mode 100644 index 476d21f1..00000000 --- a/src/theme_builder/components/stylers/PaddingStylerEditor.cpp +++ /dev/null @@ -1,28 +0,0 @@ -#include "PaddingStylerEditor.h" -#include "cru/ui/style/Styler.h" - -namespace cru::theme_builder::components::stylers { -PaddingStylerEditor::PaddingStylerEditor() { - SetLabel(u"Padding Styler"); - GetContainer()->AddChild(thickness_editor_.GetRootControl()); - - thickness_editor_.SetLabel(u"Thickness"); - - ConnectChangeEvent(thickness_editor_); -} - -PaddingStylerEditor::~PaddingStylerEditor() {} - -ClonablePtr<ui::style::PaddingStyler> PaddingStylerEditor::GetValue() { - return ui::style::PaddingStyler::Create(thickness_editor_.GetValue()); -} - -void PaddingStylerEditor::SetValue(ui::style::PaddingStyler* styler, - bool trigger_change) { - thickness_editor_.SetValue(styler->GetPadding(), false); - - if (trigger_change) { - RaiseChangeEvent(); - } -} -} // namespace cru::theme_builder::components::stylers diff --git a/src/theme_builder/components/stylers/PaddingStylerEditor.h b/src/theme_builder/components/stylers/PaddingStylerEditor.h deleted file mode 100644 index b78d310b..00000000 --- a/src/theme_builder/components/stylers/PaddingStylerEditor.h +++ /dev/null @@ -1,25 +0,0 @@ -#pragma once -#include "../properties/ThicknessPropertyEditor.h" -#include "StylerEditor.h" -#include "cru/common/ClonablePtr.h" -#include "cru/ui/style/Styler.h" - -namespace cru::theme_builder::components::stylers { -class PaddingStylerEditor : public StylerEditor { - public: - PaddingStylerEditor(); - ~PaddingStylerEditor() override; - - ClonablePtr<ui::style::PaddingStyler> GetValue(); - void SetValue(ui::style::PaddingStyler* styler, bool trigger_change = true); - void SetValue(const ClonablePtr<ui::style::PaddingStyler>& styler, - bool trigger_change = true) { - SetValue(styler.get(), trigger_change); - } - - ClonablePtr<ui::style::Styler> GetStyler() override { return GetValue(); } - - private: - properties::ThicknessPropertyEditor thickness_editor_; -}; -} // namespace cru::theme_builder::components::stylers diff --git a/src/theme_builder/components/stylers/PreferredSizeStylerEditor.cpp b/src/theme_builder/components/stylers/PreferredSizeStylerEditor.cpp deleted file mode 100644 index fb713c8c..00000000 --- a/src/theme_builder/components/stylers/PreferredSizeStylerEditor.cpp +++ /dev/null @@ -1,34 +0,0 @@ -#include "PreferredSizeStylerEditor.h" -#include "cru/ui/style/Styler.h" - -namespace cru::theme_builder::components::stylers { -PreferredSizeStylerEditor::PreferredSizeStylerEditor() { - SetLabel(u"Preferred Size Styler"); - GetContainer()->AddChild(width_editor_.GetRootControl()); - GetContainer()->AddChild(height_editor_.GetRootControl()); - - width_editor_.SetLabel(u"Width"); - height_editor_.SetLabel(u"Height"); - - ConnectChangeEvent(width_editor_); - ConnectChangeEvent(height_editor_); -} - -PreferredSizeStylerEditor::~PreferredSizeStylerEditor() {} - -ClonablePtr<ui::style::PreferredSizeStyler> -PreferredSizeStylerEditor::GetValue() { - return ui::style::PreferredSizeStyler::Create(ui::render::MeasureSize{ - width_editor_.GetValue(), height_editor_.GetValue()}); -} - -void PreferredSizeStylerEditor::SetValue(ui::style::PreferredSizeStyler* styler, - bool trigger_change) { - width_editor_.SetValue(styler->GetPreferredSize().width, false); - height_editor_.SetValue(styler->GetPreferredSize().height, false); - - if (trigger_change) { - RaiseChangeEvent(); - } -} -} // namespace cru::theme_builder::components::stylers diff --git a/src/theme_builder/components/stylers/PreferredSizeStylerEditor.h b/src/theme_builder/components/stylers/PreferredSizeStylerEditor.h deleted file mode 100644 index 4a64da10..00000000 --- a/src/theme_builder/components/stylers/PreferredSizeStylerEditor.h +++ /dev/null @@ -1,27 +0,0 @@ -#pragma once -#include "../properties/MeasureLengthPropertyEditor.h" -#include "StylerEditor.h" -#include "cru/common/ClonablePtr.h" -#include "cru/ui/style/Styler.h" - -namespace cru::theme_builder::components::stylers { -class PreferredSizeStylerEditor : public StylerEditor { - public: - PreferredSizeStylerEditor(); - ~PreferredSizeStylerEditor() override; - - ClonablePtr<ui::style::PreferredSizeStyler> GetValue(); - void SetValue(ui::style::PreferredSizeStyler* styler, - bool trigger_change = true); - void SetValue(const ClonablePtr<ui::style::PreferredSizeStyler>& styler, - bool trigger_change = true) { - SetValue(styler.get(), trigger_change); - } - - ClonablePtr<ui::style::Styler> GetStyler() override { return GetValue(); } - - private: - properties::MeasureLengthPropertyEditor width_editor_; - properties::MeasureLengthPropertyEditor height_editor_; -}; -} // namespace cru::theme_builder::components::stylers diff --git a/src/theme_builder/components/stylers/StylerEditor.cpp b/src/theme_builder/components/stylers/StylerEditor.cpp deleted file mode 100644 index 0348adbd..00000000 --- a/src/theme_builder/components/stylers/StylerEditor.cpp +++ /dev/null @@ -1,63 +0,0 @@ -#include "StylerEditor.h" -#include "../Common.h" -#include "BorderStylerEditor.h" -#include "CompoundStylerEditor.h" -#include "ContentBrushStylerEditor.h" -#include "CursorStylerEditor.h" -#include "FontStylerEditor.h" -#include "MarginStylerEditor.h" -#include "PaddingStylerEditor.h" -#include "PreferredSizeStylerEditor.h" -#include "cru/ui/controls/FlexLayout.h" -#include "cru/ui/render/FlexLayoutRenderObject.h" -#include "cru/ui/style/Styler.h" - -namespace cru::theme_builder::components::stylers { -StylerEditor::StylerEditor() {} - -StylerEditor::~StylerEditor() {} - -std::unique_ptr<StylerEditor> CreateStylerEditor(ui::style::Styler* styler) { - if (auto compound_styler = dynamic_cast<ui::style::CompoundStyler*>(styler)) { - auto result = std::make_unique<CompoundStylerEditor>(); - result->SetValue(compound_styler); - return result; - } else if (auto border_styler = - dynamic_cast<ui::style::BorderStyler*>(styler)) { - auto editor = std::make_unique<BorderStylerEditor>(); - editor->SetValue(border_styler); - return editor; - } else if (auto cursor_styler = - dynamic_cast<ui::style::CursorStyler*>(styler)) { - auto editor = std::make_unique<CursorStylerEditor>(); - editor->SetValue(cursor_styler); - return editor; - } else if (auto preferred_size_styler = - dynamic_cast<ui::style::PreferredSizeStyler*>(styler)) { - auto editor = std::make_unique<PreferredSizeStylerEditor>(); - editor->SetValue(preferred_size_styler); - return editor; - } else if (auto margin_styler = - dynamic_cast<ui::style::MarginStyler*>(styler)) { - auto editor = std::make_unique<MarginStylerEditor>(); - editor->SetValue(margin_styler); - return editor; - } else if (auto padding_styler = - dynamic_cast<ui::style::PaddingStyler*>(styler)) { - auto editor = std::make_unique<PaddingStylerEditor>(); - editor->SetValue(padding_styler); - return editor; - } else if (auto content_brush_styler = - dynamic_cast<ui::style::ContentBrushStyler*>(styler)) { - auto editor = std::make_unique<ContentBrushStylerEditor>(); - editor->SetValue(content_brush_styler); - return editor; - } else if (auto font_styler = dynamic_cast<ui::style::FontStyler*>(styler)) { - auto editor = std::make_unique<FontStylerEditor>(); - editor->SetValue(font_styler); - return editor; - } else { - throw Exception(u"Unknown styler type"); - } -} -} // namespace cru::theme_builder::components::stylers diff --git a/src/theme_builder/components/stylers/StylerEditor.h b/src/theme_builder/components/stylers/StylerEditor.h deleted file mode 100644 index 8aa52bda..00000000 --- a/src/theme_builder/components/stylers/StylerEditor.h +++ /dev/null @@ -1,16 +0,0 @@ -#pragma once -#include "../HeadBodyEditor.h" -#include "cru/ui/style/Styler.h" - -namespace cru::theme_builder::components::stylers { -class StylerEditor : public HeadBodyEditor { - public: - StylerEditor(); - ~StylerEditor() override; - - public: - virtual ClonablePtr<ui::style::Styler> GetStyler() = 0; -}; - -std::unique_ptr<StylerEditor> CreateStylerEditor(ui::style::Styler* styler); -} // namespace cru::theme_builder::components::stylers |