aboutsummaryrefslogtreecommitdiff
path: root/include/cru/ui/mapper
diff options
context:
space:
mode:
authorcrupest <crupest@outlook.com>2022-01-24 22:14:37 +0800
committercrupest <crupest@outlook.com>2022-01-24 22:14:37 +0800
commit24e1dc8723aea1e46a3aa15794747f3fa52f8eca (patch)
tree0c879b38647307d25325eb8f9993a7f690fb46b2 /include/cru/ui/mapper
parent72402c09d45b696cd58a65b4a141a804e1cd9371 (diff)
downloadcru-24e1dc8723aea1e46a3aa15794747f3fa52f8eca.tar.gz
cru-24e1dc8723aea1e46a3aa15794747f3fa52f8eca.tar.bz2
cru-24e1dc8723aea1e46a3aa15794747f3fa52f8eca.zip
...
Diffstat (limited to 'include/cru/ui/mapper')
-rw-r--r--include/cru/ui/mapper/style/ClickStateConditionMapper.hpp2
-rw-r--r--include/cru/ui/mapper/style/HoverConditionMapper.hpp26
2 files changed, 27 insertions, 1 deletions
diff --git a/include/cru/ui/mapper/style/ClickStateConditionMapper.hpp b/include/cru/ui/mapper/style/ClickStateConditionMapper.hpp
index 2fea5353..63577641 100644
--- a/include/cru/ui/mapper/style/ClickStateConditionMapper.hpp
+++ b/include/cru/ui/mapper/style/ClickStateConditionMapper.hpp
@@ -6,7 +6,7 @@
namespace cru::ui::mapper::style {
class CRU_UI_API ClickStateConditionMapper
: public BasicPtrMapper<ui::style::ClickStateCondition>,
- public IConditionMapper {
+ public virtual IConditionMapper {
public:
CRU_DEFAULT_CONSTRUCTOR_DESTRUCTOR(ClickStateConditionMapper)
diff --git a/include/cru/ui/mapper/style/HoverConditionMapper.hpp b/include/cru/ui/mapper/style/HoverConditionMapper.hpp
new file mode 100644
index 00000000..bbd840f0
--- /dev/null
+++ b/include/cru/ui/mapper/style/HoverConditionMapper.hpp
@@ -0,0 +1,26 @@
+#pragma once
+#include "../Mapper.hpp"
+#include "IConditionMapper.hpp"
+#include "cru/ui/style/Condition.hpp"
+
+namespace cru::ui::mapper::style {
+class CRU_UI_API HoverConditionMapper
+ : public BasicPtrMapper<ui::style::HoverCondition>,
+ public virtual IConditionMapper {
+ public:
+ CRU_DEFAULT_CONSTRUCTOR_DESTRUCTOR(HoverConditionMapper)
+
+ public:
+ bool SupportMapFromXml() override { return true; }
+ bool XmlElementIsOfThisType(xml::XmlElementNode* node) override;
+
+ ClonablePtr<ui::style::Condition> MapConditionFromXml(
+ xml::XmlElementNode* node) override {
+ return MapFromXml(node);
+ }
+
+ protected:
+ ClonablePtr<ui::style::HoverCondition> DoMapFromXml(
+ xml::XmlElementNode* node) override;
+};
+} // namespace cru::ui::mapper::style