From a696fed6a858e1abb88515842666b08bfad72334 Mon Sep 17 00:00:00 2001 From: crupest Date: Sun, 15 Oct 2023 22:56:59 +0800 Subject: Init ui::document. --- include/cru/ui/document/DocumentElement.h | 19 +++++++++++++++++++ include/cru/ui/document/DocumentElementType.h | 25 +++++++++++++++++++++++++ 2 files changed, 44 insertions(+) create mode 100644 include/cru/ui/document/DocumentElement.h create mode 100644 include/cru/ui/document/DocumentElementType.h (limited to 'include/cru/ui') diff --git a/include/cru/ui/document/DocumentElement.h b/include/cru/ui/document/DocumentElement.h new file mode 100644 index 00000000..34c25f11 --- /dev/null +++ b/include/cru/ui/document/DocumentElement.h @@ -0,0 +1,19 @@ +#pragma once + +#include "../Base.h" +#include "DocumentElementType.h" + +namespace cru::ui::document { +class CRU_UI_API DocumentElement : public Object { + public: + explicit DocumentElement(DocumentElementType* type); + + ~DocumentElement() override; + + public: + DocumentElementType* GetType() const { return type_; } + + private: + DocumentElementType* type_; +}; +} // namespace cru::ui::document diff --git a/include/cru/ui/document/DocumentElementType.h b/include/cru/ui/document/DocumentElementType.h new file mode 100644 index 00000000..a94bf029 --- /dev/null +++ b/include/cru/ui/document/DocumentElementType.h @@ -0,0 +1,25 @@ +#pragma once + +#include "cru/common/String.h" + +#include "../Base.h" + +namespace cru::ui::document { +class CRU_UI_API DocumentElementType : public Object { + public: + explicit DocumentElementType(String name); + + ~DocumentElementType() override; + + public: + String GetName() const { return name_; } + + private: + String name_; +}; + +struct CRU_UI_API DocumentElementTypes { + static DocumentElementType* const kRootElementType; +}; + +} // namespace cru::ui::document -- cgit v1.2.3