aboutsummaryrefslogtreecommitdiff
path: root/src/ui
diff options
context:
space:
mode:
authorYuqian Yang <crupest@crupest.life>2025-11-21 22:21:07 +0800
committerYuqian Yang <crupest@crupest.life>2025-11-21 22:21:07 +0800
commitd97c14a922b60e89a9892e519b95b7e793aff543 (patch)
treeb90a31c72496070772b4ee9ed4312b9113093e65 /src/ui
parentfd61739197ec009d47da87a7cc66970a55f12db4 (diff)
downloadcru-d97c14a922b60e89a9892e519b95b7e793aff543.tar.gz
cru-d97c14a922b60e89a9892e519b95b7e793aff543.tar.bz2
cru-d97c14a922b60e89a9892e519b95b7e793aff543.zip
Remove ui Helper.h,cpp
Diffstat (limited to 'src/ui')
-rw-r--r--src/ui/CMakeLists.txt1
-rw-r--r--src/ui/Helper.cpp15
-rw-r--r--src/ui/Helper.h7
-rw-r--r--src/ui/controls/TextHostControlService.cpp12
-rw-r--r--src/ui/mapper/BrushMapper.cpp8
-rw-r--r--src/ui/mapper/CursorMapper.cpp8
-rw-r--r--src/ui/mapper/FontMapper.cpp6
-rw-r--r--src/ui/render/BorderRenderObject.cpp5
-rw-r--r--src/ui/render/ScrollBar.cpp16
-rw-r--r--src/ui/render/TextRenderObject.cpp5
-rw-r--r--src/ui/style/Styler.cpp25
11 files changed, 48 insertions, 60 deletions
diff --git a/src/ui/CMakeLists.txt b/src/ui/CMakeLists.txt
index d2188e0b..0dd5bc32 100644
--- a/src/ui/CMakeLists.txt
+++ b/src/ui/CMakeLists.txt
@@ -1,5 +1,4 @@
add_library(CruUi
- Helper.cpp
ThemeManager.cpp
ThemeResourceDictionary.cpp
components/Component.cpp
diff --git a/src/ui/Helper.cpp b/src/ui/Helper.cpp
deleted file mode 100644
index abfd001b..00000000
--- a/src/ui/Helper.cpp
+++ /dev/null
@@ -1,15 +0,0 @@
-#include "Helper.h"
-
-#include "cru/platform/graphics/Factory.h"
-#include "cru/platform/gui/UiApplication.h"
-
-namespace cru::ui {
-using cru::platform::graphics::IGraphicsFactory;
-using cru::platform::gui::IUiApplication;
-
-IGraphicsFactory* GetGraphicsFactory() {
- return IUiApplication::GetInstance()->GetGraphicsFactory();
-}
-
-IUiApplication* GetUiApplication() { return IUiApplication::GetInstance(); }
-} // namespace cru::ui
diff --git a/src/ui/Helper.h b/src/ui/Helper.h
deleted file mode 100644
index 625ba6e3..00000000
--- a/src/ui/Helper.h
+++ /dev/null
@@ -1,7 +0,0 @@
-#pragma once
-#include <cru/platform/gui/UiApplication.h>
-
-namespace cru::ui {
-cru::platform::graphics::IGraphicsFactory* GetGraphicsFactory();
-cru::platform::gui::IUiApplication* GetUiApplication();
-} // namespace cru::ui
diff --git a/src/ui/controls/TextHostControlService.cpp b/src/ui/controls/TextHostControlService.cpp
index 5780b6d7..39c28393 100644
--- a/src/ui/controls/TextHostControlService.cpp
+++ b/src/ui/controls/TextHostControlService.cpp
@@ -1,12 +1,11 @@
#include "cru/ui/controls/TextHostControlService.h"
-#include <cru/platform/gui/Input.h>
-#include "../Helper.h"
#include "cru/base/Base.h"
#include "cru/base/StringUtil.h"
#include "cru/base/log/Logger.h"
#include "cru/platform/gui/Clipboard.h"
#include "cru/platform/gui/Cursor.h"
+#include "cru/platform/gui/Input.h"
#include "cru/platform/gui/InputMethod.h"
#include "cru/platform/gui/UiApplication.h"
#include "cru/platform/gui/Window.h"
@@ -22,6 +21,7 @@
namespace cru::ui::controls {
using namespace cru::string;
+using platform::gui::IUiApplication;
TextControlMovePattern TextControlMovePattern::kLeft(
"Left", helper::ShortcutKeyBind(platform::gui::KeyCode::Left),
@@ -173,7 +173,7 @@ void TextHostControlService::SetEnabled(bool enable) {
this->SetupCaret();
}
this->control_->SetCursor(
- GetUiApplication()->GetCursorManager()->GetSystemCursor(
+ IUiApplication::GetInstance()->GetCursorManager()->GetSystemCursor(
platform::gui::SystemCursorType::IBeam));
} else {
this->AbortSelection();
@@ -406,19 +406,19 @@ void TextHostControlService::Cut() {
void TextHostControlService::Copy() {
auto selected_text = GetSelectedText();
if (selected_text.size() == 0) return;
- auto clipboard = GetUiApplication()->GetClipboard();
+ auto clipboard = IUiApplication::GetInstance()->GetClipboard();
clipboard->SetText(std::string(selected_text));
}
void TextHostControlService::Paste() {
- auto clipboard = GetUiApplication()->GetClipboard();
+ auto clipboard = IUiApplication::GetInstance()->GetClipboard();
auto text = clipboard->GetText();
if (text.empty()) return;
ReplaceSelectedText(text);
}
void TextHostControlService::SetupCaret() {
- const auto application = GetUiApplication();
+ const auto application = IUiApplication::GetInstance();
this->GetTextRenderObject()->SetDrawCaret(true);
this->caret_timer_canceler_.Reset(application->SetInterval(
std::chrono::milliseconds(this->caret_blink_duration_),
diff --git a/src/ui/mapper/BrushMapper.cpp b/src/ui/mapper/BrushMapper.cpp
index 4f17bd12..6a3d7941 100644
--- a/src/ui/mapper/BrushMapper.cpp
+++ b/src/ui/mapper/BrushMapper.cpp
@@ -1,11 +1,11 @@
#include "cru/ui/mapper/BrushMapper.h"
-#include "../Helper.h"
#include "cru/base/StringUtil.h"
+#include "cru/base/xml/XmlNode.h"
#include "cru/platform/Color.h"
#include "cru/platform/graphics/Brush.h"
#include "cru/platform/graphics/Factory.h"
+#include "cru/platform/gui/UiApplication.h"
#include "cru/ui/mapper/MapperRegistry.h"
-#include "cru/base/xml/XmlNode.h"
#include <memory>
@@ -35,6 +35,8 @@ std::shared_ptr<platform::graphics::IBrush> BrushMapper::DoMapFromXml(
}
}
- return GetGraphicsFactory()->CreateSolidColorBrush(color);
+ return platform::gui::IUiApplication::GetInstance()
+ ->GetGraphicsFactory()
+ ->CreateSolidColorBrush(color);
}
} // namespace cru::ui::mapper
diff --git a/src/ui/mapper/CursorMapper.cpp b/src/ui/mapper/CursorMapper.cpp
index 6a08b788..6dfa942f 100644
--- a/src/ui/mapper/CursorMapper.cpp
+++ b/src/ui/mapper/CursorMapper.cpp
@@ -1,5 +1,4 @@
#include "cru/ui/mapper/CursorMapper.h"
-#include "../Helper.h"
#include "cru/platform/gui/Cursor.h"
#include "cru/platform/gui/UiApplication.h"
@@ -7,14 +6,15 @@ namespace cru::ui::mapper {
using cru::platform::gui::ICursor;
using cru::platform::gui::SystemCursorType;
-bool CursorMapper::XmlElementIsOfThisType(xml::XmlElementNode *node) {
+bool CursorMapper::XmlElementIsOfThisType(xml::XmlElementNode* node) {
return cru::string::CaseInsensitiveCompare(node->GetTag(), "Cursor") == 0;
}
std::shared_ptr<ICursor> CursorMapper::DoMapFromString(std::string str) {
if (str.empty()) return nullptr;
- auto cursor_manager = GetUiApplication()->GetCursorManager();
+ auto cursor_manager =
+ platform::gui::IUiApplication::GetInstance()->GetCursorManager();
if (cru::string::CaseInsensitiveCompare(str, "arrow") == 0) {
return cursor_manager->GetSystemCursor(SystemCursorType::Arrow);
@@ -27,7 +27,7 @@ std::shared_ptr<ICursor> CursorMapper::DoMapFromString(std::string str) {
}
}
-std::shared_ptr<ICursor> CursorMapper::DoMapFromXml(xml::XmlElementNode *node) {
+std::shared_ptr<ICursor> CursorMapper::DoMapFromXml(xml::XmlElementNode* node) {
auto value_attr = node->GetOptionalAttributeValueCaseInsensitive("value");
if (!value_attr) return nullptr;
return DoMapFromString(*value_attr);
diff --git a/src/ui/mapper/FontMapper.cpp b/src/ui/mapper/FontMapper.cpp
index 6ba37964..8f83116d 100644
--- a/src/ui/mapper/FontMapper.cpp
+++ b/src/ui/mapper/FontMapper.cpp
@@ -1,7 +1,7 @@
#include "cru/ui/mapper/FontMapper.h"
-#include "../Helper.h"
#include "cru/base/StringUtil.h"
#include "cru/platform/graphics/Factory.h"
+#include "cru/platform/gui/UiApplication.h"
namespace cru::ui::mapper {
bool FontMapper::XmlElementIsOfThisType(xml::XmlElementNode* node) {
@@ -18,6 +18,8 @@ std::shared_ptr<platform::graphics::IFont> FontMapper::DoMapFromXml(
font_size_attr ? cru::string::ParseToNumber<float>(*font_size_attr).value
: 16.0f;
- return GetGraphicsFactory()->CreateFont(font_family, font_size);
+ return platform::gui::IUiApplication::GetInstance()
+ ->GetGraphicsFactory()
+ ->CreateFont(font_family, font_size);
}
} // namespace cru::ui::mapper
diff --git a/src/ui/render/BorderRenderObject.cpp b/src/ui/render/BorderRenderObject.cpp
index 674f82b1..954bf6c7 100644
--- a/src/ui/render/BorderRenderObject.cpp
+++ b/src/ui/render/BorderRenderObject.cpp
@@ -1,10 +1,10 @@
#include "cru/ui/render/BorderRenderObject.h"
-#include "../Helper.h"
#include "cru/base/log/Logger.h"
#include "cru/platform/graphics/Factory.h"
#include "cru/platform/graphics/Geometry.h"
#include "cru/platform/graphics/Painter.h"
+#include "cru/platform/gui/UiApplication.h"
#include "cru/ui/DebugFlags.h"
#include "cru/ui/render/RenderObject.h"
@@ -224,7 +224,8 @@ void BorderRenderObject::RecreateGeometry() {
const Rect outer_rect{margin.left, margin.top,
size.width - margin.GetHorizontalTotal(),
size.height - margin.GetVerticalTotal()};
- const auto graph_factory = GetGraphicsFactory();
+ const auto graph_factory =
+ platform::gui::IUiApplication::GetInstance()->GetGraphicsFactory();
std::unique_ptr<platform::graphics::IGeometryBuilder> builder{
graph_factory->CreateGeometryBuilder()};
f(builder.get(), outer_rect, outer_radius);
diff --git a/src/ui/render/ScrollBar.cpp b/src/ui/render/ScrollBar.cpp
index 79c2ea42..9e35cd30 100644
--- a/src/ui/render/ScrollBar.cpp
+++ b/src/ui/render/ScrollBar.cpp
@@ -1,11 +1,11 @@
#include "cru/ui/render/ScrollBar.h"
-#include "../Helper.h"
#include "cru/platform/GraphicsBase.h"
#include "cru/platform/graphics/Factory.h"
#include "cru/platform/graphics/Geometry.h"
#include "cru/platform/graphics/Painter.h"
#include "cru/platform/gui/Cursor.h"
+#include "cru/platform/gui/UiApplication.h"
#include "cru/ui/Base.h"
#include "cru/ui/ThemeManager.h"
#include "cru/ui/controls/ControlHost.h"
@@ -71,7 +71,9 @@ std::string GenerateScrollBarThemeColorKey(ScrollBarBrushUsageKind usage,
namespace {
std::unique_ptr<platform::graphics::IGeometry> CreateScrollBarArrowGeometry() {
- auto geometry_builder = GetGraphicsFactory()->CreateGeometryBuilder();
+ auto geometry_builder = platform::gui::IUiApplication::GetInstance()
+ ->GetGraphicsFactory()
+ ->CreateGeometryBuilder();
geometry_builder->MoveTo({-kScrollBarArrowHeight / 2, 0});
geometry_builder->LineTo({kScrollBarArrowHeight / 2, kScrollBarArrowHeight});
geometry_builder->LineTo({kScrollBarArrowHeight / 2, -kScrollBarArrowHeight});
@@ -319,8 +321,9 @@ void ScrollBar::SetCursor() {
if (const auto control = render_object_->GetAttachedControl()) {
if (const auto host = control->GetControlHost()) {
host->SetOverrideCursor(
- GetUiApplication()->GetCursorManager()->GetSystemCursor(
- platform::gui::SystemCursorType::Arrow));
+ platform::gui::IUiApplication::GetInstance()
+ ->GetCursorManager()
+ ->GetSystemCursor(platform::gui::SystemCursorType::Arrow));
cursor_overridden_ = true;
}
}
@@ -339,8 +342,9 @@ void ScrollBar::RestoreCursor() {
void ScrollBar::BeginAutoCollapseTimer() {
if (!auto_collapse_timer_canceler_ && IsExpanded()) {
- auto_collapse_timer_canceler_.Reset(GetUiApplication()->SetTimeout(
- kScrollBarAutoCollapseDelay, [this] { this->SetExpanded(false); }));
+ auto_collapse_timer_canceler_.Reset(
+ platform::gui::IUiApplication::GetInstance()->SetTimeout(
+ kScrollBarAutoCollapseDelay, [this] { this->SetExpanded(false); }));
}
}
diff --git a/src/ui/render/TextRenderObject.cpp b/src/ui/render/TextRenderObject.cpp
index 217029b2..3af08e49 100644
--- a/src/ui/render/TextRenderObject.cpp
+++ b/src/ui/render/TextRenderObject.cpp
@@ -1,10 +1,10 @@
#include "cru/ui/render/TextRenderObject.h"
-#include "../Helper.h"
#include "cru/base/log/Logger.h"
#include "cru/platform/graphics/Factory.h"
#include "cru/platform/graphics/Painter.h"
#include "cru/platform/graphics/TextLayout.h"
+#include "cru/platform/gui/UiApplication.h"
#include "cru/ui/DebugFlags.h"
#include "cru/ui/render/RenderObject.h"
@@ -28,7 +28,8 @@ TextRenderObject::TextRenderObject(
selection_brush.swap(selection_brush_);
caret_brush.swap(caret_brush_);
- const auto graph_factory = GetGraphicsFactory();
+ const auto graph_factory =
+ platform::gui::IUiApplication::GetInstance()->GetGraphicsFactory();
text_layout_ = graph_factory->CreateTextLayout(font_, "");
}
diff --git a/src/ui/style/Styler.cpp b/src/ui/style/Styler.cpp
index 8b4405cd..251d403c 100644
--- a/src/ui/style/Styler.cpp
+++ b/src/ui/style/Styler.cpp
@@ -1,6 +1,5 @@
#include "cru/ui/style/Styler.h"
-#include "../Helper.h"
#include "cru/base/ClonePtr.h"
#include "cru/platform/gui/Cursor.h"
#include "cru/platform/gui/UiApplication.h"
@@ -14,42 +13,44 @@ namespace cru::ui::style {
BorderStyler::BorderStyler(ApplyBorderStyleInfo style)
: style_(std::move(style)) {}
-void BorderStyler::Apply(controls::Control *control) const {
- if (auto border_control = dynamic_cast<controls::IBorderControl *>(control)) {
+void BorderStyler::Apply(controls::Control* control) const {
+ if (auto border_control = dynamic_cast<controls::IBorderControl*>(control)) {
border_control->ApplyBorderStyle(style_);
}
}
ClonePtr<CursorStyler> CursorStyler::Create(
platform::gui::SystemCursorType type) {
- return Create(GetUiApplication()->GetCursorManager()->GetSystemCursor(type));
+ return Create(platform::gui::IUiApplication::GetInstance()
+ ->GetCursorManager()
+ ->GetSystemCursor(type));
}
-void CursorStyler::Apply(controls::Control *control) const {
+void CursorStyler::Apply(controls::Control* control) const {
control->SetCursor(cursor_);
}
-void PreferredSizeStyler::Apply(controls::Control *control) const {
+void PreferredSizeStyler::Apply(controls::Control* control) const {
control->SetPreferredSize(size_);
}
-void MarginStyler::Apply(controls::Control *control) const {
+void MarginStyler::Apply(controls::Control* control) const {
control->SetMargin(margin_);
}
-void PaddingStyler::Apply(controls::Control *control) const {
+void PaddingStyler::Apply(controls::Control* control) const {
control->SetPadding(padding_);
}
-void ContentBrushStyler::Apply(controls::Control *control) const {
+void ContentBrushStyler::Apply(controls::Control* control) const {
if (auto content_brush_control =
- dynamic_cast<controls::IContentBrushControl *>(control)) {
+ dynamic_cast<controls::IContentBrushControl*>(control)) {
content_brush_control->SetContentBrush(brush_);
}
}
-void FontStyler::Apply(controls::Control *control) const {
- if (auto font_control = dynamic_cast<controls::IFontControl *>(control)) {
+void FontStyler::Apply(controls::Control* control) const {
+ if (auto font_control = dynamic_cast<controls::IFontControl*>(control)) {
font_control->SetFont(font_);
}
}