diff options
| author | Yuqian Yang <crupest@crupest.life> | 2025-12-15 21:27:33 +0800 |
|---|---|---|
| committer | Yuqian Yang <crupest@crupest.life> | 2025-12-15 21:27:33 +0800 |
| commit | c77072d586bf7aca58e6465ceab3d11a0be0021f (patch) | |
| tree | 83605be90fd32104ef74bbd1d84d900aaf0271ce /include/cru/ui/mapper/BorderStyleMapper.h | |
| parent | bc3fa9650699046f3a87a620282ee43f26b2fa75 (diff) | |
| download | cru-c77072d586bf7aca58e6465ceab3d11a0be0021f.tar.gz cru-c77072d586bf7aca58e6465ceab3d11a0be0021f.tar.bz2 cru-c77072d586bf7aca58e6465ceab3d11a0be0021f.zip | |
Clean up mapper codes.
Diffstat (limited to 'include/cru/ui/mapper/BorderStyleMapper.h')
| -rw-r--r-- | include/cru/ui/mapper/BorderStyleMapper.h | 29 |
1 files changed, 17 insertions, 12 deletions
diff --git a/include/cru/ui/mapper/BorderStyleMapper.h b/include/cru/ui/mapper/BorderStyleMapper.h index fd84b0b0..41bbeff5 100644 --- a/include/cru/ui/mapper/BorderStyleMapper.h +++ b/include/cru/ui/mapper/BorderStyleMapper.h @@ -1,20 +1,25 @@ #pragma once +#include "../style/ApplyBorderStyleInfo.h" #include "Mapper.h" -#include "cru/ui/style/ApplyBorderStyleInfo.h" -#include "cru/base/xml/XmlNode.h" + +#include <cru/base/xml/XmlNode.h> namespace cru::ui::mapper { +/** + * Example xml: + * ```xml + * <BorderStyle> + * <Thickness value="1" /> + * <CornerRadius all="1" /> + * <Brush><Color value=""/></Brush> + * <Brush name="foreground"><Color value="transparent"/></Brush> + * <Brush name="background"><Color value="#eeeeeeff"/></Brush> + * </BorderStyle> + * ``` + */ class CRU_UI_API BorderStyleMapper : public BasicMapper<ui::style::ApplyBorderStyleInfo> { - public: - CRU_DEFAULT_CONSTRUCTOR_DESTRUCTOR(BorderStyleMapper) - - public: - bool SupportMapFromXml() override { return true; } - bool XmlElementIsOfThisType(xml::XmlElementNode* node) override; - - protected: - ui::style::ApplyBorderStyleInfo DoMapFromXml( - xml::XmlElementNode* node) override; + CRU_UI_DECLARE_CAN_MAP_FROM_XML_ELEMENT_TAG(BorderStyle, + ui::style::ApplyBorderStyleInfo) }; } // namespace cru::ui::mapper |
