From 9fa5b4c09507d4f1bc860bb93c077ab3c90cc373 Mon Sep 17 00:00:00 2001 From: crupest Date: Thu, 10 Mar 2022 18:23:42 +0800 Subject: ... --- .../stylers/ContentBrushStylerEditor.cpp | 31 ++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 src/theme_builder/components/stylers/ContentBrushStylerEditor.cpp (limited to 'src/theme_builder/components/stylers/ContentBrushStylerEditor.cpp') diff --git a/src/theme_builder/components/stylers/ContentBrushStylerEditor.cpp b/src/theme_builder/components/stylers/ContentBrushStylerEditor.cpp new file mode 100644 index 00000000..bd649c67 --- /dev/null +++ b/src/theme_builder/components/stylers/ContentBrushStylerEditor.cpp @@ -0,0 +1,31 @@ +#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 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( + value->GetBrush()) + ->GetColor(), + trigger_change); +} +} // namespace cru::theme_builder::components::stylers -- cgit v1.2.3