summaryrefslogtreecommitdiff
path: root/src/mbgl/util/color.cpp
diff options
context:
space:
mode:
authorJohn Firebaugh <john.firebaugh@gmail.com>2016-06-16 13:25:06 -0700
committerGitHub <noreply@github.com>2016-06-16 13:25:06 -0700
commit19158d9f01909bf566616524f23e0acb635562f7 (patch)
treea3adf8c8713dbe6d20fe9fae055836e677b4ca47 /src/mbgl/util/color.cpp
parent3f024ebaf02e82e9282e303a46127f366a84904d (diff)
downloadqtlocation-mapboxgl-19158d9f01909bf566616524f23e0acb635562f7.tar.gz
[core, node] Implement setPaintProperty for color properties (#5380)
Diffstat (limited to 'src/mbgl/util/color.cpp')
-rw-r--r--src/mbgl/util/color.cpp20
1 files changed, 20 insertions, 0 deletions
diff --git a/src/mbgl/util/color.cpp b/src/mbgl/util/color.cpp
new file mode 100644
index 0000000000..eea897d3ab
--- /dev/null
+++ b/src/mbgl/util/color.cpp
@@ -0,0 +1,20 @@
+#include <mbgl/util/color.hpp>
+
+#include <csscolorparser/csscolorparser.hpp>
+
+namespace mbgl {
+
+optional<Color> Color::parse(const std::string& s) {
+ CSSColorParser::Color css_color = CSSColorParser::parse(s);
+
+ // Premultiply the color.
+ const float factor = css_color.a / 255;
+ return {{
+ css_color.r * factor,
+ css_color.g * factor,
+ css_color.b * factor,
+ css_color.a
+ }};
+}
+
+} // namespace mbgl