aboutsummaryrefslogtreecommitdiff
path: root/src/ui/mapper/ColorMapper.cpp
diff options
context:
space:
mode:
authorcrupest <crupest@outlook.com>2022-01-27 21:21:51 +0800
committercrupest <crupest@outlook.com>2022-01-27 21:21:51 +0800
commit560c0ead613658a2b7444907c3d1d69e49be8c32 (patch)
tree37938098f0e80403d572accf9f7a275ec8792c00 /src/ui/mapper/ColorMapper.cpp
parent56633dab8c1bf9d25a6367a651b5b054055a2130 (diff)
downloadcru-560c0ead613658a2b7444907c3d1d69e49be8c32.tar.gz
cru-560c0ead613658a2b7444907c3d1d69e49be8c32.tar.bz2
cru-560c0ead613658a2b7444907c3d1d69e49be8c32.zip
...
Diffstat (limited to 'src/ui/mapper/ColorMapper.cpp')
-rw-r--r--src/ui/mapper/ColorMapper.cpp13
1 files changed, 10 insertions, 3 deletions
diff --git a/src/ui/mapper/ColorMapper.cpp b/src/ui/mapper/ColorMapper.cpp
index ddfa6b9b..063b2359 100644
--- a/src/ui/mapper/ColorMapper.cpp
+++ b/src/ui/mapper/ColorMapper.cpp
@@ -15,9 +15,16 @@ Color ColorMapper::DoMapFromString(String str) {
Color ColorMapper::DoMapFromXml(xml::XmlElementNode* node) {
auto value_attr = node->GetOptionalAttributeCaseInsensitive(u"value");
- if (!value_attr) {
- return colors::transparent;
+ Color result = colors::transparent;
+ if (value_attr) {
+ result = DoMapFromString(*value_attr);
}
- return DoMapFromString(*value_attr);
+
+ auto alpha_value_attr = node->GetOptionalAttributeCaseInsensitive(u"alpha");
+ if (alpha_value_attr) {
+ result.alpha = alpha_value_attr->ParseToDouble() * 255;
+ }
+
+ return result;
}
} // namespace cru::ui::mapper