diff options
| author | Yuqian Yang <crupest@crupest.life> | 2025-11-04 21:59:42 +0800 |
|---|---|---|
| committer | Yuqian Yang <crupest@crupest.life> | 2025-11-04 21:59:42 +0800 |
| commit | 1a6111e3f02b0a9cff0f81fb524b4dfb7d69854b (patch) | |
| tree | 3a92e1bf61fc165c2148f38ca6602f5066011f06 /include | |
| parent | f48505c96a70e2f1d1982fea30f3015e42fcd49d (diff) | |
| download | cru-1a6111e3f02b0a9cff0f81fb524b4dfb7d69854b.tar.gz cru-1a6111e3f02b0a9cff0f81fb524b4dfb7d69854b.tar.bz2 cru-1a6111e3f02b0a9cff0f81fb524b4dfb7d69854b.zip | |
Move xml to base.
Diffstat (limited to 'include')
| -rw-r--r-- | include/cru/base/xml/XmlNode.h (renamed from include/cru/xml/XmlNode.h) | 42 | ||||
| -rw-r--r-- | include/cru/base/xml/XmlParser.h (renamed from include/cru/xml/XmlParser.h) | 7 | ||||
| -rw-r--r-- | include/cru/ui/ThemeResourceDictionary.h | 2 | ||||
| -rw-r--r-- | include/cru/ui/mapper/BorderStyleMapper.h | 2 | ||||
| -rw-r--r-- | include/cru/ui/mapper/BrushMapper.h | 2 | ||||
| -rw-r--r-- | include/cru/ui/mapper/ColorMapper.h | 2 | ||||
| -rw-r--r-- | include/cru/ui/mapper/CursorMapper.h | 2 | ||||
| -rw-r--r-- | include/cru/ui/mapper/Mapper.h | 2 | ||||
| -rw-r--r-- | include/cru/ui/mapper/ThicknessMapper.h | 2 | ||||
| -rw-r--r-- | include/cru/ui/mapper/style/BorderStylerMapper.h | 2 | ||||
| -rw-r--r-- | include/cru/ui/mapper/style/IConditionMapper.h | 2 | ||||
| -rw-r--r-- | include/cru/ui/mapper/style/IStylerMapper.h | 2 | ||||
| -rw-r--r-- | include/cru/ui/mapper/style/NoConditionMapper.h | 2 | ||||
| -rw-r--r-- | include/cru/ui/mapper/style/StyleRuleMapper.h | 2 | ||||
| -rw-r--r-- | include/cru/xml/Base.h | 11 |
15 files changed, 26 insertions, 58 deletions
diff --git a/include/cru/xml/XmlNode.h b/include/cru/base/xml/XmlNode.h index 1574f6fa..e9090b40 100644 --- a/include/cru/xml/XmlNode.h +++ b/include/cru/base/xml/XmlNode.h @@ -1,18 +1,14 @@ #pragma once -#include "Base.h" - -#include <cru/base/Base.h> -#include <cru/base/StringUtil.h> -#include <optional> -#include <vector> +#include "../Base.h" +#include "../StringUtil.h" namespace cru::xml { class XmlElementNode; class XmlTextNode; class XmlCommentNode; -class CRU_XML_API XmlNode { +class CRU_BASE_API XmlNode : public Object { friend XmlElementNode; public: @@ -22,11 +18,6 @@ class CRU_XML_API XmlNode { explicit XmlNode(Type type) : type_(type) {} public: - CRU_DELETE_COPY(XmlNode) - CRU_DELETE_MOVE(XmlNode) - - virtual ~XmlNode() = default; - Type GetType() const { return type_; } XmlElementNode* GetParent() const { return parent_; } @@ -48,17 +39,12 @@ class CRU_XML_API XmlNode { XmlElementNode* parent_ = nullptr; }; -class CRU_XML_API XmlTextNode : public XmlNode { +class CRU_BASE_API XmlTextNode : public XmlNode { public: XmlTextNode() : XmlNode(Type::Text) {} explicit XmlTextNode(std::string text) : XmlNode(Type::Text), text_(std::move(text)) {} - CRU_DELETE_COPY(XmlTextNode) - CRU_DELETE_MOVE(XmlTextNode) - - ~XmlTextNode() override = default; - public: std::string GetText() const { return text_; } void SetText(std::string text) { text_ = std::move(text); } @@ -69,18 +55,16 @@ class CRU_XML_API XmlTextNode : public XmlNode { std::string text_; }; -class CRU_XML_API XmlElementNode : public XmlNode { +class CRU_BASE_API XmlElementNode : public XmlNode { public: XmlElementNode() : XmlNode(Type::Element) {} - explicit XmlElementNode(std::string tag, - std::unordered_map<std::string, std::string> attributes = {}) + explicit XmlElementNode( + std::string tag, + std::unordered_map<std::string, std::string> attributes = {}) : XmlNode(Type::Element), tag_(std::move(tag)), attributes_(std::move(attributes)) {} - CRU_DELETE_COPY(XmlElementNode) - CRU_DELETE_MOVE(XmlElementNode) - ~XmlElementNode() override; public: @@ -101,7 +85,8 @@ class CRU_XML_API XmlElementNode : public XmlNode { std::string GetAttributeValueCaseInsensitive(const std::string& key) const { return *GetOptionalAttributeValueCaseInsensitive(key); } - std::optional<std::string> GetOptionalAttributeValue(const std::string& key) const { + std::optional<std::string> GetOptionalAttributeValue( + const std::string& key) const { auto it = attributes_.find(key); if (it == attributes_.end()) { return std::nullopt; @@ -136,17 +121,12 @@ class CRU_XML_API XmlElementNode : public XmlNode { std::vector<XmlNode*> children_; }; -class CRU_XML_API XmlCommentNode : public XmlNode { +class CRU_BASE_API XmlCommentNode : public XmlNode { public: XmlCommentNode() : XmlNode(Type::Comment) {} explicit XmlCommentNode(std::string text) : XmlNode(Type::Comment), text_(std::move(text)) {} - CRU_DELETE_COPY(XmlCommentNode) - CRU_DELETE_MOVE(XmlCommentNode) - - ~XmlCommentNode() override; - std::string GetText() const { return text_; } void SetText(std::string text) { text_ = std::move(text); } diff --git a/include/cru/xml/XmlParser.h b/include/cru/base/xml/XmlParser.h index b6589f1b..22b529d7 100644 --- a/include/cru/xml/XmlParser.h +++ b/include/cru/base/xml/XmlParser.h @@ -1,16 +1,15 @@ #pragma once +#include "../Exception.h" #include "XmlNode.h" -#include "cru/base/Exception.h" - namespace cru::xml { -class CRU_XML_API XmlParsingException : public Exception { +class CRU_BASE_API XmlParsingException : public Exception { public: using Exception::Exception; }; -class CRU_XML_API XmlParser { +class CRU_BASE_API XmlParser { public: explicit XmlParser(std::string xml); diff --git a/include/cru/ui/ThemeResourceDictionary.h b/include/cru/ui/ThemeResourceDictionary.h index f28a61db..3995fe25 100644 --- a/include/cru/ui/ThemeResourceDictionary.h +++ b/include/cru/ui/ThemeResourceDictionary.h @@ -2,7 +2,7 @@ #include "Base.h" #include "cru/base/Base.h" -#include "cru/xml/XmlNode.h" +#include "cru/base/xml/XmlNode.h" #include "mapper/MapperRegistry.h" #include "style/StyleRuleSet.h" diff --git a/include/cru/ui/mapper/BorderStyleMapper.h b/include/cru/ui/mapper/BorderStyleMapper.h index d585639f..fd84b0b0 100644 --- a/include/cru/ui/mapper/BorderStyleMapper.h +++ b/include/cru/ui/mapper/BorderStyleMapper.h @@ -1,7 +1,7 @@ #pragma once #include "Mapper.h" #include "cru/ui/style/ApplyBorderStyleInfo.h" -#include "cru/xml/XmlNode.h" +#include "cru/base/xml/XmlNode.h" namespace cru::ui::mapper { class CRU_UI_API BorderStyleMapper diff --git a/include/cru/ui/mapper/BrushMapper.h b/include/cru/ui/mapper/BrushMapper.h index 3b918dc7..3972d6ff 100644 --- a/include/cru/ui/mapper/BrushMapper.h +++ b/include/cru/ui/mapper/BrushMapper.h @@ -2,7 +2,7 @@ #include "Mapper.h" #include "cru/base/Base.h" #include "cru/platform/graphics/Brush.h" -#include "cru/xml/XmlNode.h" +#include "cru/base/xml/XmlNode.h" namespace cru::ui::mapper { class BrushMapper : public BasicSharedPtrMapper<platform::graphics::IBrush> { diff --git a/include/cru/ui/mapper/ColorMapper.h b/include/cru/ui/mapper/ColorMapper.h index e3846712..9555bf5a 100644 --- a/include/cru/ui/mapper/ColorMapper.h +++ b/include/cru/ui/mapper/ColorMapper.h @@ -1,6 +1,6 @@ #pragma once #include "Mapper.h" -#include "cru/xml/XmlNode.h" +#include "cru/base/xml/XmlNode.h" namespace cru::ui::mapper { class CRU_UI_API ColorMapper : public BasicMapper<Color> { diff --git a/include/cru/ui/mapper/CursorMapper.h b/include/cru/ui/mapper/CursorMapper.h index 951291c1..4d55f849 100644 --- a/include/cru/ui/mapper/CursorMapper.h +++ b/include/cru/ui/mapper/CursorMapper.h @@ -1,7 +1,7 @@ #pragma once #include "Mapper.h" #include "cru/platform/gui/Cursor.h" -#include "cru/xml/XmlNode.h" +#include "cru/base/xml/XmlNode.h" namespace cru::ui::mapper { class CRU_UI_API CursorMapper : public BasicSharedPtrMapper<platform::gui::ICursor> { diff --git a/include/cru/ui/mapper/Mapper.h b/include/cru/ui/mapper/Mapper.h index a4507fc9..e4a4c528 100644 --- a/include/cru/ui/mapper/Mapper.h +++ b/include/cru/ui/mapper/Mapper.h @@ -3,7 +3,7 @@ #include "cru/base/ClonablePtr.h" #include "cru/base/Exception.h" -#include "cru/xml/XmlNode.h" +#include "cru/base/xml/XmlNode.h" #include <memory> #include <type_traits> diff --git a/include/cru/ui/mapper/ThicknessMapper.h b/include/cru/ui/mapper/ThicknessMapper.h index 84b6b036..25885cbf 100644 --- a/include/cru/ui/mapper/ThicknessMapper.h +++ b/include/cru/ui/mapper/ThicknessMapper.h @@ -3,7 +3,7 @@ #include "../Base.h" #include "cru/base/Base.h" -#include "cru/xml/XmlNode.h" +#include "cru/base/xml/XmlNode.h" namespace cru::ui::mapper { class CRU_UI_API ThicknessMapper : public BasicMapper<Thickness> { diff --git a/include/cru/ui/mapper/style/BorderStylerMapper.h b/include/cru/ui/mapper/style/BorderStylerMapper.h index 57b5dce4..8cb4d392 100644 --- a/include/cru/ui/mapper/style/BorderStylerMapper.h +++ b/include/cru/ui/mapper/style/BorderStylerMapper.h @@ -3,7 +3,7 @@ #include "cru/base/ClonablePtr.h" #include "cru/ui/mapper/style/IStylerMapper.h" #include "cru/ui/style/Styler.h" -#include "cru/xml/XmlNode.h" +#include "cru/base/xml/XmlNode.h" namespace cru::ui::mapper::style { class CRU_UI_API BorderStylerMapper diff --git a/include/cru/ui/mapper/style/IConditionMapper.h b/include/cru/ui/mapper/style/IConditionMapper.h index bfe24224..7bfd1427 100644 --- a/include/cru/ui/mapper/style/IConditionMapper.h +++ b/include/cru/ui/mapper/style/IConditionMapper.h @@ -3,7 +3,7 @@ #include "cru/base/ClonablePtr.h" #include "cru/ui/mapper/Mapper.h" #include "cru/ui/style/Condition.h" -#include "cru/xml/XmlNode.h" +#include "cru/base/xml/XmlNode.h" namespace cru::ui::mapper::style { struct CRU_UI_API IConditionMapper : virtual Interface { diff --git a/include/cru/ui/mapper/style/IStylerMapper.h b/include/cru/ui/mapper/style/IStylerMapper.h index adf9b6fb..4aa43665 100644 --- a/include/cru/ui/mapper/style/IStylerMapper.h +++ b/include/cru/ui/mapper/style/IStylerMapper.h @@ -3,7 +3,7 @@ #include "cru/base/ClonablePtr.h" #include "cru/ui/mapper/Mapper.h" #include "cru/ui/style/Styler.h" -#include "cru/xml/XmlNode.h" +#include "cru/base/xml/XmlNode.h" namespace cru::ui::mapper::style { struct CRU_UI_API IStylerMapper : virtual Interface { diff --git a/include/cru/ui/mapper/style/NoConditionMapper.h b/include/cru/ui/mapper/style/NoConditionMapper.h index 06106514..bd2adf14 100644 --- a/include/cru/ui/mapper/style/NoConditionMapper.h +++ b/include/cru/ui/mapper/style/NoConditionMapper.h @@ -4,7 +4,7 @@ #include "cru/base/Base.h" #include "cru/base/ClonablePtr.h" #include "cru/ui/style/Condition.h" -#include "cru/xml/XmlNode.h" +#include "cru/base/xml/XmlNode.h" namespace cru::ui::mapper::style { class CRU_UI_API NoConditionMapper diff --git a/include/cru/ui/mapper/style/StyleRuleMapper.h b/include/cru/ui/mapper/style/StyleRuleMapper.h index 12fcb85b..b4cb95e7 100644 --- a/include/cru/ui/mapper/style/StyleRuleMapper.h +++ b/include/cru/ui/mapper/style/StyleRuleMapper.h @@ -3,7 +3,7 @@ #include "cru/base/Base.h" #include "cru/base/ClonablePtr.h" #include "cru/ui/style/StyleRule.h" -#include "cru/xml/XmlNode.h" +#include "cru/base/xml/XmlNode.h" namespace cru::ui::mapper::style { class CRU_UI_API StyleRuleMapper : public BasicClonablePtrMapper<ui::style::StyleRule> { diff --git a/include/cru/xml/Base.h b/include/cru/xml/Base.h deleted file mode 100644 index aa3aeaa2..00000000 --- a/include/cru/xml/Base.h +++ /dev/null @@ -1,11 +0,0 @@ -#pragma once - -#ifdef CRU_IS_DLL -#ifdef CRU_XML_EXPORT_API -#define CRU_XML_API __declspec(dllexport) -#else -#define CRU_XML_API __declspec(dllimport) -#endif -#else -#define CRU_XML_API -#endif |
