summaryrefslogtreecommitdiff
path: root/src/mbgl/style/paint_property.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mbgl/style/paint_property.hpp')
-rw-r--r--src/mbgl/style/paint_property.hpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/mbgl/style/paint_property.hpp b/src/mbgl/style/paint_property.hpp
index 9031d590fe..1fa2390f33 100644
--- a/src/mbgl/style/paint_property.hpp
+++ b/src/mbgl/style/paint_property.hpp
@@ -97,6 +97,12 @@ public:
values[klass ? ClassDictionary::Get().lookup(*klass) : ClassID::Default] = value_;
}
+ const TransitionOptions& getTransition(const optional<std::string>& klass) const {
+ static const TransitionOptions staticValue{};
+ const auto it = transitions.find(klass ? ClassDictionary::Get().lookup(*klass) : ClassID::Default);
+ return it == transitions.end() ? staticValue : it->second;
+ }
+
void setTransition(const TransitionOptions& transition, const optional<std::string>& klass) {
transitions[klass ? ClassDictionary::Get().lookup(*klass) : ClassID::Default] = transition;
}
@@ -209,6 +215,11 @@ public:
cascading.template get<P>().set(value, klass);
}
+ template <class P>
+ void setTransition(const TransitionOptions& value, const optional<std::string>& klass) {
+ cascading.template get<P>().setTransition(value, klass);
+ }
+
void cascade(const CascadeParameters& parameters) {
unevaluated = Unevaluated {
cascading.template get<Ps>().cascade(parameters,