summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFabian Guerra <fabian.guerra@mapbox.com>2017-03-02 17:32:25 -0500
committerJustin R. Miller <incanus@codesorcery.net>2017-03-06 17:09:25 -0800
commit8c894854ea07ae81b9a2f7f1313c8a0eeabd76c5 (patch)
treeeeb0a5ce0a2d60623ddc206446e47ca6e398186a
parentde3f8fb9d31c383167ba55b7d999029c1433783e (diff)
downloadqtlocation-mapboxgl-8c894854ea07ae81b9a2f7f1313c8a0eeabd76c5.tar.gz
[ios, macos] added support for getting property transitions
-rw-r--r--include/mbgl/style/layers/background_layer.hpp3
-rw-r--r--include/mbgl/style/layers/circle_layer.hpp10
-rw-r--r--include/mbgl/style/layers/fill_extrusion_layer.hpp7
-rw-r--r--include/mbgl/style/layers/fill_layer.hpp7
-rw-r--r--include/mbgl/style/layers/layer.hpp.ejs1
-rw-r--r--include/mbgl/style/layers/line_layer.hpp10
-rw-r--r--include/mbgl/style/layers/raster_layer.hpp7
-rw-r--r--include/mbgl/style/layers/symbol_layer.hpp14
-rw-r--r--platform/darwin/src/MGLBackgroundStyleLayer.mm36
-rw-r--r--platform/darwin/src/MGLCircleStyleLayer.mm132
-rw-r--r--platform/darwin/src/MGLFillStyleLayer.mm96
-rw-r--r--platform/darwin/src/MGLLineStyleLayer.mm132
-rw-r--r--platform/darwin/src/MGLRasterStyleLayer.mm96
-rw-r--r--platform/darwin/src/MGLStyleLayer.mm9
-rw-r--r--platform/darwin/src/MGLStyleLayer.mm.ejs16
-rw-r--r--platform/darwin/src/MGLSymbolStyleLayer.mm184
-rw-r--r--src/mbgl/style/layers/background_layer.cpp12
-rw-r--r--src/mbgl/style/layers/circle_layer.cpp40
-rw-r--r--src/mbgl/style/layers/fill_extrusion_layer.cpp28
-rw-r--r--src/mbgl/style/layers/fill_layer.cpp28
-rw-r--r--src/mbgl/style/layers/layer.cpp.ejs4
-rw-r--r--src/mbgl/style/layers/line_layer.cpp40
-rw-r--r--src/mbgl/style/layers/raster_layer.cpp28
-rw-r--r--src/mbgl/style/layers/symbol_layer.cpp56
-rw-r--r--src/mbgl/style/paint_property.hpp5
25 files changed, 997 insertions, 4 deletions
diff --git a/include/mbgl/style/layers/background_layer.hpp b/include/mbgl/style/layers/background_layer.hpp
index 94076931e7..dab3c47dd6 100644
--- a/include/mbgl/style/layers/background_layer.hpp
+++ b/include/mbgl/style/layers/background_layer.hpp
@@ -25,16 +25,19 @@ public:
PropertyValue<Color> getBackgroundColor(const optional<std::string>& klass = {}) const;
void setBackgroundColor(PropertyValue<Color>, const optional<std::string>& klass = {});
void setBackgroundColorTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getBackgroundColorTransition(const optional<std::string>& klass = {}) const;
static PropertyValue<std::string> getDefaultBackgroundPattern();
PropertyValue<std::string> getBackgroundPattern(const optional<std::string>& klass = {}) const;
void setBackgroundPattern(PropertyValue<std::string>, const optional<std::string>& klass = {});
void setBackgroundPatternTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getBackgroundPatternTransition(const optional<std::string>& klass = {}) const;
static PropertyValue<float> getDefaultBackgroundOpacity();
PropertyValue<float> getBackgroundOpacity(const optional<std::string>& klass = {}) const;
void setBackgroundOpacity(PropertyValue<float>, const optional<std::string>& klass = {});
void setBackgroundOpacityTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getBackgroundOpacityTransition(const optional<std::string>& klass = {}) const;
// Private implementation
diff --git a/include/mbgl/style/layers/circle_layer.hpp b/include/mbgl/style/layers/circle_layer.hpp
index 35db4b3962..dc0dac762a 100644
--- a/include/mbgl/style/layers/circle_layer.hpp
+++ b/include/mbgl/style/layers/circle_layer.hpp
@@ -33,51 +33,61 @@ public:
DataDrivenPropertyValue<float> getCircleRadius(const optional<std::string>& klass = {}) const;
void setCircleRadius(DataDrivenPropertyValue<float>, const optional<std::string>& klass = {});
void setCircleRadiusTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getCircleRadiusTransition(const optional<std::string>& klass = {}) const;
static DataDrivenPropertyValue<Color> getDefaultCircleColor();
DataDrivenPropertyValue<Color> getCircleColor(const optional<std::string>& klass = {}) const;
void setCircleColor(DataDrivenPropertyValue<Color>, const optional<std::string>& klass = {});
void setCircleColorTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getCircleColorTransition(const optional<std::string>& klass = {}) const;
static DataDrivenPropertyValue<float> getDefaultCircleBlur();
DataDrivenPropertyValue<float> getCircleBlur(const optional<std::string>& klass = {}) const;
void setCircleBlur(DataDrivenPropertyValue<float>, const optional<std::string>& klass = {});
void setCircleBlurTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getCircleBlurTransition(const optional<std::string>& klass = {}) const;
static DataDrivenPropertyValue<float> getDefaultCircleOpacity();
DataDrivenPropertyValue<float> getCircleOpacity(const optional<std::string>& klass = {}) const;
void setCircleOpacity(DataDrivenPropertyValue<float>, const optional<std::string>& klass = {});
void setCircleOpacityTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getCircleOpacityTransition(const optional<std::string>& klass = {}) const;
static PropertyValue<std::array<float, 2>> getDefaultCircleTranslate();
PropertyValue<std::array<float, 2>> getCircleTranslate(const optional<std::string>& klass = {}) const;
void setCircleTranslate(PropertyValue<std::array<float, 2>>, const optional<std::string>& klass = {});
void setCircleTranslateTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getCircleTranslateTransition(const optional<std::string>& klass = {}) const;
static PropertyValue<TranslateAnchorType> getDefaultCircleTranslateAnchor();
PropertyValue<TranslateAnchorType> getCircleTranslateAnchor(const optional<std::string>& klass = {}) const;
void setCircleTranslateAnchor(PropertyValue<TranslateAnchorType>, const optional<std::string>& klass = {});
void setCircleTranslateAnchorTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getCircleTranslateAnchorTransition(const optional<std::string>& klass = {}) const;
static PropertyValue<CirclePitchScaleType> getDefaultCirclePitchScale();
PropertyValue<CirclePitchScaleType> getCirclePitchScale(const optional<std::string>& klass = {}) const;
void setCirclePitchScale(PropertyValue<CirclePitchScaleType>, const optional<std::string>& klass = {});
void setCirclePitchScaleTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getCirclePitchScaleTransition(const optional<std::string>& klass = {}) const;
static DataDrivenPropertyValue<float> getDefaultCircleStrokeWidth();
DataDrivenPropertyValue<float> getCircleStrokeWidth(const optional<std::string>& klass = {}) const;
void setCircleStrokeWidth(DataDrivenPropertyValue<float>, const optional<std::string>& klass = {});
void setCircleStrokeWidthTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getCircleStrokeWidthTransition(const optional<std::string>& klass = {}) const;
static DataDrivenPropertyValue<Color> getDefaultCircleStrokeColor();
DataDrivenPropertyValue<Color> getCircleStrokeColor(const optional<std::string>& klass = {}) const;
void setCircleStrokeColor(DataDrivenPropertyValue<Color>, const optional<std::string>& klass = {});
void setCircleStrokeColorTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getCircleStrokeColorTransition(const optional<std::string>& klass = {}) const;
static DataDrivenPropertyValue<float> getDefaultCircleStrokeOpacity();
DataDrivenPropertyValue<float> getCircleStrokeOpacity(const optional<std::string>& klass = {}) const;
void setCircleStrokeOpacity(DataDrivenPropertyValue<float>, const optional<std::string>& klass = {});
void setCircleStrokeOpacityTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getCircleStrokeOpacityTransition(const optional<std::string>& klass = {}) const;
// Private implementation
diff --git a/include/mbgl/style/layers/fill_extrusion_layer.hpp b/include/mbgl/style/layers/fill_extrusion_layer.hpp
index c19a4ee168..c3a1b216a6 100644
--- a/include/mbgl/style/layers/fill_extrusion_layer.hpp
+++ b/include/mbgl/style/layers/fill_extrusion_layer.hpp
@@ -33,36 +33,43 @@ public:
PropertyValue<float> getFillExtrusionOpacity(const optional<std::string>& klass = {}) const;
void setFillExtrusionOpacity(PropertyValue<float>, const optional<std::string>& klass = {});
void setFillExtrusionOpacityTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getFillExtrusionOpacityTransition(const optional<std::string>& klass = {}) const;
static DataDrivenPropertyValue<Color> getDefaultFillExtrusionColor();
DataDrivenPropertyValue<Color> getFillExtrusionColor(const optional<std::string>& klass = {}) const;
void setFillExtrusionColor(DataDrivenPropertyValue<Color>, const optional<std::string>& klass = {});
void setFillExtrusionColorTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getFillExtrusionColorTransition(const optional<std::string>& klass = {}) const;
static PropertyValue<std::array<float, 2>> getDefaultFillExtrusionTranslate();
PropertyValue<std::array<float, 2>> getFillExtrusionTranslate(const optional<std::string>& klass = {}) const;
void setFillExtrusionTranslate(PropertyValue<std::array<float, 2>>, const optional<std::string>& klass = {});
void setFillExtrusionTranslateTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getFillExtrusionTranslateTransition(const optional<std::string>& klass = {}) const;
static PropertyValue<TranslateAnchorType> getDefaultFillExtrusionTranslateAnchor();
PropertyValue<TranslateAnchorType> getFillExtrusionTranslateAnchor(const optional<std::string>& klass = {}) const;
void setFillExtrusionTranslateAnchor(PropertyValue<TranslateAnchorType>, const optional<std::string>& klass = {});
void setFillExtrusionTranslateAnchorTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getFillExtrusionTranslateAnchorTransition(const optional<std::string>& klass = {}) const;
static PropertyValue<std::string> getDefaultFillExtrusionPattern();
PropertyValue<std::string> getFillExtrusionPattern(const optional<std::string>& klass = {}) const;
void setFillExtrusionPattern(PropertyValue<std::string>, const optional<std::string>& klass = {});
void setFillExtrusionPatternTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getFillExtrusionPatternTransition(const optional<std::string>& klass = {}) const;
static DataDrivenPropertyValue<float> getDefaultFillExtrusionHeight();
DataDrivenPropertyValue<float> getFillExtrusionHeight(const optional<std::string>& klass = {}) const;
void setFillExtrusionHeight(DataDrivenPropertyValue<float>, const optional<std::string>& klass = {});
void setFillExtrusionHeightTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getFillExtrusionHeightTransition(const optional<std::string>& klass = {}) const;
static DataDrivenPropertyValue<float> getDefaultFillExtrusionBase();
DataDrivenPropertyValue<float> getFillExtrusionBase(const optional<std::string>& klass = {}) const;
void setFillExtrusionBase(DataDrivenPropertyValue<float>, const optional<std::string>& klass = {});
void setFillExtrusionBaseTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getFillExtrusionBaseTransition(const optional<std::string>& klass = {}) const;
// Private implementation
diff --git a/include/mbgl/style/layers/fill_layer.hpp b/include/mbgl/style/layers/fill_layer.hpp
index c064eab350..b5ada97c7c 100644
--- a/include/mbgl/style/layers/fill_layer.hpp
+++ b/include/mbgl/style/layers/fill_layer.hpp
@@ -33,36 +33,43 @@ public:
PropertyValue<bool> getFillAntialias(const optional<std::string>& klass = {}) const;
void setFillAntialias(PropertyValue<bool>, const optional<std::string>& klass = {});
void setFillAntialiasTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getFillAntialiasTransition(const optional<std::string>& klass = {}) const;
static DataDrivenPropertyValue<float> getDefaultFillOpacity();
DataDrivenPropertyValue<float> getFillOpacity(const optional<std::string>& klass = {}) const;
void setFillOpacity(DataDrivenPropertyValue<float>, const optional<std::string>& klass = {});
void setFillOpacityTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getFillOpacityTransition(const optional<std::string>& klass = {}) const;
static DataDrivenPropertyValue<Color> getDefaultFillColor();
DataDrivenPropertyValue<Color> getFillColor(const optional<std::string>& klass = {}) const;
void setFillColor(DataDrivenPropertyValue<Color>, const optional<std::string>& klass = {});
void setFillColorTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getFillColorTransition(const optional<std::string>& klass = {}) const;
static DataDrivenPropertyValue<Color> getDefaultFillOutlineColor();
DataDrivenPropertyValue<Color> getFillOutlineColor(const optional<std::string>& klass = {}) const;
void setFillOutlineColor(DataDrivenPropertyValue<Color>, const optional<std::string>& klass = {});
void setFillOutlineColorTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getFillOutlineColorTransition(const optional<std::string>& klass = {}) const;
static PropertyValue<std::array<float, 2>> getDefaultFillTranslate();
PropertyValue<std::array<float, 2>> getFillTranslate(const optional<std::string>& klass = {}) const;
void setFillTranslate(PropertyValue<std::array<float, 2>>, const optional<std::string>& klass = {});
void setFillTranslateTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getFillTranslateTransition(const optional<std::string>& klass = {}) const;
static PropertyValue<TranslateAnchorType> getDefaultFillTranslateAnchor();
PropertyValue<TranslateAnchorType> getFillTranslateAnchor(const optional<std::string>& klass = {}) const;
void setFillTranslateAnchor(PropertyValue<TranslateAnchorType>, const optional<std::string>& klass = {});
void setFillTranslateAnchorTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getFillTranslateAnchorTransition(const optional<std::string>& klass = {}) const;
static PropertyValue<std::string> getDefaultFillPattern();
PropertyValue<std::string> getFillPattern(const optional<std::string>& klass = {}) const;
void setFillPattern(PropertyValue<std::string>, const optional<std::string>& klass = {});
void setFillPatternTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getFillPatternTransition(const optional<std::string>& klass = {}) const;
// Private implementation
diff --git a/include/mbgl/style/layers/layer.hpp.ejs b/include/mbgl/style/layers/layer.hpp.ejs
index d66eae8198..fe1b77c2fc 100644
--- a/include/mbgl/style/layers/layer.hpp.ejs
+++ b/include/mbgl/style/layers/layer.hpp.ejs
@@ -61,6 +61,7 @@ public:
<%- propertyValueType(property) %> get<%- camelize(property.name) %>(const optional<std::string>& klass = {}) const;
void set<%- camelize(property.name) %>(<%- propertyValueType(property) %>, const optional<std::string>& klass = {});
void set<%- camelize(property.name) %>Transition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions get<%- camelize(property.name) %>Transition(const optional<std::string>& klass = {}) const;
<% } -%>
// Private implementation
diff --git a/include/mbgl/style/layers/line_layer.hpp b/include/mbgl/style/layers/line_layer.hpp
index 2ed269ae74..3e870204e5 100644
--- a/include/mbgl/style/layers/line_layer.hpp
+++ b/include/mbgl/style/layers/line_layer.hpp
@@ -53,51 +53,61 @@ public:
DataDrivenPropertyValue<float> getLineOpacity(const optional<std::string>& klass = {}) const;
void setLineOpacity(DataDrivenPropertyValue<float>, const optional<std::string>& klass = {});
void setLineOpacityTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getLineOpacityTransition(const optional<std::string>& klass = {}) const;
static DataDrivenPropertyValue<Color> getDefaultLineColor();
DataDrivenPropertyValue<Color> getLineColor(const optional<std::string>& klass = {}) const;
void setLineColor(DataDrivenPropertyValue<Color>, const optional<std::string>& klass = {});
void setLineColorTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getLineColorTransition(const optional<std::string>& klass = {}) const;
static PropertyValue<std::array<float, 2>> getDefaultLineTranslate();
PropertyValue<std::array<float, 2>> getLineTranslate(const optional<std::string>& klass = {}) const;
void setLineTranslate(PropertyValue<std::array<float, 2>>, const optional<std::string>& klass = {});
void setLineTranslateTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getLineTranslateTransition(const optional<std::string>& klass = {}) const;
static PropertyValue<TranslateAnchorType> getDefaultLineTranslateAnchor();
PropertyValue<TranslateAnchorType> getLineTranslateAnchor(const optional<std::string>& klass = {}) const;
void setLineTranslateAnchor(PropertyValue<TranslateAnchorType>, const optional<std::string>& klass = {});
void setLineTranslateAnchorTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getLineTranslateAnchorTransition(const optional<std::string>& klass = {}) const;
static PropertyValue<float> getDefaultLineWidth();
PropertyValue<float> getLineWidth(const optional<std::string>& klass = {}) const;
void setLineWidth(PropertyValue<float>, const optional<std::string>& klass = {});
void setLineWidthTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getLineWidthTransition(const optional<std::string>& klass = {}) const;
static DataDrivenPropertyValue<float> getDefaultLineGapWidth();
DataDrivenPropertyValue<float> getLineGapWidth(const optional<std::string>& klass = {}) const;
void setLineGapWidth(DataDrivenPropertyValue<float>, const optional<std::string>& klass = {});
void setLineGapWidthTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getLineGapWidthTransition(const optional<std::string>& klass = {}) const;
static DataDrivenPropertyValue<float> getDefaultLineOffset();
DataDrivenPropertyValue<float> getLineOffset(const optional<std::string>& klass = {}) const;
void setLineOffset(DataDrivenPropertyValue<float>, const optional<std::string>& klass = {});
void setLineOffsetTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getLineOffsetTransition(const optional<std::string>& klass = {}) const;
static DataDrivenPropertyValue<float> getDefaultLineBlur();
DataDrivenPropertyValue<float> getLineBlur(const optional<std::string>& klass = {}) const;
void setLineBlur(DataDrivenPropertyValue<float>, const optional<std::string>& klass = {});
void setLineBlurTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getLineBlurTransition(const optional<std::string>& klass = {}) const;
static PropertyValue<std::vector<float>> getDefaultLineDasharray();
PropertyValue<std::vector<float>> getLineDasharray(const optional<std::string>& klass = {}) const;
void setLineDasharray(PropertyValue<std::vector<float>>, const optional<std::string>& klass = {});
void setLineDasharrayTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getLineDasharrayTransition(const optional<std::string>& klass = {}) const;
static PropertyValue<std::string> getDefaultLinePattern();
PropertyValue<std::string> getLinePattern(const optional<std::string>& klass = {}) const;
void setLinePattern(PropertyValue<std::string>, const optional<std::string>& klass = {});
void setLinePatternTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getLinePatternTransition(const optional<std::string>& klass = {}) const;
// Private implementation
diff --git a/include/mbgl/style/layers/raster_layer.hpp b/include/mbgl/style/layers/raster_layer.hpp
index 72665baa72..926ec6c33d 100644
--- a/include/mbgl/style/layers/raster_layer.hpp
+++ b/include/mbgl/style/layers/raster_layer.hpp
@@ -28,36 +28,43 @@ public:
PropertyValue<float> getRasterOpacity(const optional<std::string>& klass = {}) const;
void setRasterOpacity(PropertyValue<float>, const optional<std::string>& klass = {});
void setRasterOpacityTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getRasterOpacityTransition(const optional<std::string>& klass = {}) const;
static PropertyValue<float> getDefaultRasterHueRotate();
PropertyValue<float> getRasterHueRotate(const optional<std::string>& klass = {}) const;
void setRasterHueRotate(PropertyValue<float>, const optional<std::string>& klass = {});
void setRasterHueRotateTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getRasterHueRotateTransition(const optional<std::string>& klass = {}) const;
static PropertyValue<float> getDefaultRasterBrightnessMin();
PropertyValue<float> getRasterBrightnessMin(const optional<std::string>& klass = {}) const;
void setRasterBrightnessMin(PropertyValue<float>, const optional<std::string>& klass = {});
void setRasterBrightnessMinTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getRasterBrightnessMinTransition(const optional<std::string>& klass = {}) const;
static PropertyValue<float> getDefaultRasterBrightnessMax();
PropertyValue<float> getRasterBrightnessMax(const optional<std::string>& klass = {}) const;
void setRasterBrightnessMax(PropertyValue<float>, const optional<std::string>& klass = {});
void setRasterBrightnessMaxTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getRasterBrightnessMaxTransition(const optional<std::string>& klass = {}) const;
static PropertyValue<float> getDefaultRasterSaturation();
PropertyValue<float> getRasterSaturation(const optional<std::string>& klass = {}) const;
void setRasterSaturation(PropertyValue<float>, const optional<std::string>& klass = {});
void setRasterSaturationTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getRasterSaturationTransition(const optional<std::string>& klass = {}) const;
static PropertyValue<float> getDefaultRasterContrast();
PropertyValue<float> getRasterContrast(const optional<std::string>& klass = {}) const;
void setRasterContrast(PropertyValue<float>, const optional<std::string>& klass = {});
void setRasterContrastTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getRasterContrastTransition(const optional<std::string>& klass = {}) const;
static PropertyValue<float> getDefaultRasterFadeDuration();
PropertyValue<float> getRasterFadeDuration(const optional<std::string>& klass = {}) const;
void setRasterFadeDuration(PropertyValue<float>, const optional<std::string>& klass = {});
void setRasterFadeDurationTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getRasterFadeDurationTransition(const optional<std::string>& klass = {}) const;
// Private implementation
diff --git a/include/mbgl/style/layers/symbol_layer.hpp b/include/mbgl/style/layers/symbol_layer.hpp
index aeccabb97e..1fc1694f2c 100644
--- a/include/mbgl/style/layers/symbol_layer.hpp
+++ b/include/mbgl/style/layers/symbol_layer.hpp
@@ -173,71 +173,85 @@ public:
DataDrivenPropertyValue<float> getIconOpacity(const optional<std::string>& klass = {}) const;
void setIconOpacity(DataDrivenPropertyValue<float>, const optional<std::string>& klass = {});
void setIconOpacityTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getIconOpacityTransition(const optional<std::string>& klass = {}) const;
static DataDrivenPropertyValue<Color> getDefaultIconColor();
DataDrivenPropertyValue<Color> getIconColor(const optional<std::string>& klass = {}) const;
void setIconColor(DataDrivenPropertyValue<Color>, const optional<std::string>& klass = {});
void setIconColorTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getIconColorTransition(const optional<std::string>& klass = {}) const;
static DataDrivenPropertyValue<Color> getDefaultIconHaloColor();
DataDrivenPropertyValue<Color> getIconHaloColor(const optional<std::string>& klass = {}) const;
void setIconHaloColor(DataDrivenPropertyValue<Color>, const optional<std::string>& klass = {});
void setIconHaloColorTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getIconHaloColorTransition(const optional<std::string>& klass = {}) const;
static DataDrivenPropertyValue<float> getDefaultIconHaloWidth();
DataDrivenPropertyValue<float> getIconHaloWidth(const optional<std::string>& klass = {}) const;
void setIconHaloWidth(DataDrivenPropertyValue<float>, const optional<std::string>& klass = {});
void setIconHaloWidthTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getIconHaloWidthTransition(const optional<std::string>& klass = {}) const;
static DataDrivenPropertyValue<float> getDefaultIconHaloBlur();
DataDrivenPropertyValue<float> getIconHaloBlur(const optional<std::string>& klass = {}) const;
void setIconHaloBlur(DataDrivenPropertyValue<float>, const optional<std::string>& klass = {});
void setIconHaloBlurTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getIconHaloBlurTransition(const optional<std::string>& klass = {}) const;
static PropertyValue<std::array<float, 2>> getDefaultIconTranslate();
PropertyValue<std::array<float, 2>> getIconTranslate(const optional<std::string>& klass = {}) const;
void setIconTranslate(PropertyValue<std::array<float, 2>>, const optional<std::string>& klass = {});
void setIconTranslateTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getIconTranslateTransition(const optional<std::string>& klass = {}) const;
static PropertyValue<TranslateAnchorType> getDefaultIconTranslateAnchor();
PropertyValue<TranslateAnchorType> getIconTranslateAnchor(const optional<std::string>& klass = {}) const;
void setIconTranslateAnchor(PropertyValue<TranslateAnchorType>, const optional<std::string>& klass = {});
void setIconTranslateAnchorTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getIconTranslateAnchorTransition(const optional<std::string>& klass = {}) const;
static DataDrivenPropertyValue<float> getDefaultTextOpacity();
DataDrivenPropertyValue<float> getTextOpacity(const optional<std::string>& klass = {}) const;
void setTextOpacity(DataDrivenPropertyValue<float>, const optional<std::string>& klass = {});
void setTextOpacityTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getTextOpacityTransition(const optional<std::string>& klass = {}) const;
static DataDrivenPropertyValue<Color> getDefaultTextColor();
DataDrivenPropertyValue<Color> getTextColor(const optional<std::string>& klass = {}) const;
void setTextColor(DataDrivenPropertyValue<Color>, const optional<std::string>& klass = {});
void setTextColorTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getTextColorTransition(const optional<std::string>& klass = {}) const;
static DataDrivenPropertyValue<Color> getDefaultTextHaloColor();
DataDrivenPropertyValue<Color> getTextHaloColor(const optional<std::string>& klass = {}) const;
void setTextHaloColor(DataDrivenPropertyValue<Color>, const optional<std::string>& klass = {});
void setTextHaloColorTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getTextHaloColorTransition(const optional<std::string>& klass = {}) const;
static DataDrivenPropertyValue<float> getDefaultTextHaloWidth();
DataDrivenPropertyValue<float> getTextHaloWidth(const optional<std::string>& klass = {}) const;
void setTextHaloWidth(DataDrivenPropertyValue<float>, const optional<std::string>& klass = {});
void setTextHaloWidthTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getTextHaloWidthTransition(const optional<std::string>& klass = {}) const;
static DataDrivenPropertyValue<float> getDefaultTextHaloBlur();
DataDrivenPropertyValue<float> getTextHaloBlur(const optional<std::string>& klass = {}) const;
void setTextHaloBlur(DataDrivenPropertyValue<float>, const optional<std::string>& klass = {});
void setTextHaloBlurTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getTextHaloBlurTransition(const optional<std::string>& klass = {}) const;
static PropertyValue<std::array<float, 2>> getDefaultTextTranslate();
PropertyValue<std::array<float, 2>> getTextTranslate(const optional<std::string>& klass = {}) const;
void setTextTranslate(PropertyValue<std::array<float, 2>>, const optional<std::string>& klass = {});
void setTextTranslateTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getTextTranslateTransition(const optional<std::string>& klass = {}) const;
static PropertyValue<TranslateAnchorType> getDefaultTextTranslateAnchor();
PropertyValue<TranslateAnchorType> getTextTranslateAnchor(const optional<std::string>& klass = {}) const;
void setTextTranslateAnchor(PropertyValue<TranslateAnchorType>, const optional<std::string>& klass = {});
void setTextTranslateAnchorTransition(const TransitionOptions&, const optional<std::string>& klass = {});
+ style::TransitionOptions getTextTranslateAnchorTransition(const optional<std::string>& klass = {}) const;
// Private implementation
diff --git a/platform/darwin/src/MGLBackgroundStyleLayer.mm b/platform/darwin/src/MGLBackgroundStyleLayer.mm
index 63c687b77a..596b8e6dc4 100644
--- a/platform/darwin/src/MGLBackgroundStyleLayer.mm
+++ b/platform/darwin/src/MGLBackgroundStyleLayer.mm
@@ -122,6 +122,18 @@
return MGLStyleValueTransformer<mbgl::Color, MGLColor *>().toStyleValue(propertyValue);
}
+- (NSValue *)mbx_getBackgroundColorTransition {
+ MGLAssertStyleLayerIsValid();
+
+ mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getBackgroundColorTransition();
+ MGLTransition transition;
+ transition.duration = MGLTimeIntervalFromDurationInSeconds(transitionOptions.duration.value_or(mbgl::Duration::zero()));
+ transition.delay = MGLTimeIntervalFromDurationInSeconds(transitionOptions.delay.value_or(mbgl::Duration::zero()));
+
+ NSValue *transitionValue = [NSValue value:&transition withObjCType:@encode(MGLTransition)];
+ return transitionValue;
+}
+
- (void)setBackgroundOpacity:(MGLStyleValue<NSNumber *> *)backgroundOpacity {
MGLAssertStyleLayerIsValid();
@@ -149,6 +161,18 @@
return MGLStyleValueTransformer<float, NSNumber *>().toStyleValue(propertyValue);
}
+- (NSValue *)mbx_getBackgroundOpacityTransition {
+ MGLAssertStyleLayerIsValid();
+
+ mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getBackgroundOpacityTransition();
+ MGLTransition transition;
+ transition.duration = MGLTimeIntervalFromDurationInSeconds(transitionOptions.duration.value_or(mbgl::Duration::zero()));
+ transition.delay = MGLTimeIntervalFromDurationInSeconds(transitionOptions.delay.value_or(mbgl::Duration::zero()));
+
+ NSValue *transitionValue = [NSValue value:&transition withObjCType:@encode(MGLTransition)];
+ return transitionValue;
+}
+
- (void)setBackgroundPattern:(MGLStyleValue<NSString *> *)backgroundPattern {
MGLAssertStyleLayerIsValid();
@@ -176,5 +200,17 @@
return MGLStyleValueTransformer<std::string, NSString *>().toStyleValue(propertyValue);
}
+- (NSValue *)mbx_getBackgroundPatternTransition {
+ MGLAssertStyleLayerIsValid();
+
+ mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getBackgroundPatternTransition();
+ MGLTransition transition;
+ transition.duration = MGLTimeIntervalFromDurationInSeconds(transitionOptions.duration.value_or(mbgl::Duration::zero()));
+ transition.delay = MGLTimeIntervalFromDurationInSeconds(transitionOptions.delay.value_or(mbgl::Duration::zero()));
+
+ NSValue *transitionValue = [NSValue value:&transition withObjCType:@encode(MGLTransition)];
+ return transitionValue;
+}
+
@end
diff --git a/platform/darwin/src/MGLCircleStyleLayer.mm b/platform/darwin/src/MGLCircleStyleLayer.mm
index 362667121a..2e5d592426 100644
--- a/platform/darwin/src/MGLCircleStyleLayer.mm
+++ b/platform/darwin/src/MGLCircleStyleLayer.mm
@@ -182,6 +182,18 @@ namespace mbgl {
return MGLStyleValueTransformer<float, NSNumber *>().toDataDrivenStyleValue(propertyValue);
}
+- (NSValue *)mbx_getCircleBlurTransition {
+ MGLAssertStyleLayerIsValid();
+
+ mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getCircleBlurTransition();
+ MGLTransition transition;
+ transition.duration = MGLTimeIntervalFromDurationInSeconds(transitionOptions.duration.value_or(mbgl::Duration::zero()));
+ transition.delay = MGLTimeIntervalFromDurationInSeconds(transitionOptions.delay.value_or(mbgl::Duration::zero()));
+
+ NSValue *transitionValue = [NSValue value:&transition withObjCType:@encode(MGLTransition)];
+ return transitionValue;
+}
+
- (void)setCircleColor:(MGLStyleValue<MGLColor *> *)circleColor {
MGLAssertStyleLayerIsValid();
@@ -209,6 +221,18 @@ namespace mbgl {
return MGLStyleValueTransformer<mbgl::Color, MGLColor *>().toDataDrivenStyleValue(propertyValue);
}
+- (NSValue *)mbx_getCircleColorTransition {
+ MGLAssertStyleLayerIsValid();
+
+ mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getCircleColorTransition();
+ MGLTransition transition;
+ transition.duration = MGLTimeIntervalFromDurationInSeconds(transitionOptions.duration.value_or(mbgl::Duration::zero()));
+ transition.delay = MGLTimeIntervalFromDurationInSeconds(transitionOptions.delay.value_or(mbgl::Duration::zero()));
+
+ NSValue *transitionValue = [NSValue value:&transition withObjCType:@encode(MGLTransition)];
+ return transitionValue;
+}
+
- (void)setCircleOpacity:(MGLStyleValue<NSNumber *> *)circleOpacity {
MGLAssertStyleLayerIsValid();
@@ -236,6 +260,18 @@ namespace mbgl {
return MGLStyleValueTransformer<float, NSNumber *>().toDataDrivenStyleValue(propertyValue);
}
+- (NSValue *)mbx_getCircleOpacityTransition {
+ MGLAssertStyleLayerIsValid();
+
+ mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getCircleOpacityTransition();
+ MGLTransition transition;
+ transition.duration = MGLTimeIntervalFromDurationInSeconds(transitionOptions.duration.value_or(mbgl::Duration::zero()));
+ transition.delay = MGLTimeIntervalFromDurationInSeconds(transitionOptions.delay.value_or(mbgl::Duration::zero()));
+
+ NSValue *transitionValue = [NSValue value:&transition withObjCType:@encode(MGLTransition)];
+ return transitionValue;
+}
+
- (void)setCircleRadius:(MGLStyleValue<NSNumber *> *)circleRadius {
MGLAssertStyleLayerIsValid();
@@ -263,6 +299,18 @@ namespace mbgl {
return MGLStyleValueTransformer<float, NSNumber *>().toDataDrivenStyleValue(propertyValue);
}
+- (NSValue *)mbx_getCircleRadiusTransition {
+ MGLAssertStyleLayerIsValid();
+
+ mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getCircleRadiusTransition();
+ MGLTransition transition;
+ transition.duration = MGLTimeIntervalFromDurationInSeconds(transitionOptions.duration.value_or(mbgl::Duration::zero()));
+ transition.delay = MGLTimeIntervalFromDurationInSeconds(transitionOptions.delay.value_or(mbgl::Duration::zero()));
+
+ NSValue *transitionValue = [NSValue value:&transition withObjCType:@encode(MGLTransition)];
+ return transitionValue;
+}
+
- (void)setCircleScaleAlignment:(MGLStyleValue<NSValue *> *)circleScaleAlignment {
MGLAssertStyleLayerIsValid();
@@ -290,6 +338,18 @@ namespace mbgl {
return MGLStyleValueTransformer<mbgl::style::CirclePitchScaleType, NSValue *, mbgl::style::CirclePitchScaleType, MGLCircleScaleAlignment>().toEnumStyleValue(propertyValue);
}
+- (NSValue *)mbx_getCircleScaleAlignmentTransition {
+ MGLAssertStyleLayerIsValid();
+
+ mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getCirclePitchScaleTransition();
+ MGLTransition transition;
+ transition.duration = MGLTimeIntervalFromDurationInSeconds(transitionOptions.duration.value_or(mbgl::Duration::zero()));
+ transition.delay = MGLTimeIntervalFromDurationInSeconds(transitionOptions.delay.value_or(mbgl::Duration::zero()));
+
+ NSValue *transitionValue = [NSValue value:&transition withObjCType:@encode(MGLTransition)];
+ return transitionValue;
+}
+
- (void)setCirclePitchScale:(MGLStyleValue<NSValue *> *)circlePitchScale {
}
@@ -297,6 +357,10 @@ namespace mbgl {
return self.circleScaleAlignment;
}
+- (NSValue *)mbx_getCirclePitchScale {
+ return [self mbx_getCircleScaleAlignmentTransition];
+}
+
- (void)setCircleStrokeColor:(MGLStyleValue<MGLColor *> *)circleStrokeColor {
MGLAssertStyleLayerIsValid();
@@ -324,6 +388,18 @@ namespace mbgl {
return MGLStyleValueTransformer<mbgl::Color, MGLColor *>().toDataDrivenStyleValue(propertyValue);
}
+- (NSValue *)mbx_getCircleStrokeColorTransition {
+ MGLAssertStyleLayerIsValid();
+
+ mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getCircleStrokeColorTransition();
+ MGLTransition transition;
+ transition.duration = MGLTimeIntervalFromDurationInSeconds(transitionOptions.duration.value_or(mbgl::Duration::zero()));
+ transition.delay = MGLTimeIntervalFromDurationInSeconds(transitionOptions.delay.value_or(mbgl::Duration::zero()));
+
+ NSValue *transitionValue = [NSValue value:&transition withObjCType:@encode(MGLTransition)];
+ return transitionValue;
+}
+
- (void)setCircleStrokeOpacity:(MGLStyleValue<NSNumber *> *)circleStrokeOpacity {
MGLAssertStyleLayerIsValid();
@@ -351,6 +427,18 @@ namespace mbgl {
return MGLStyleValueTransformer<float, NSNumber *>().toDataDrivenStyleValue(propertyValue);
}
+- (NSValue *)mbx_getCircleStrokeOpacityTransition {
+ MGLAssertStyleLayerIsValid();
+
+ mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getCircleStrokeOpacityTransition();
+ MGLTransition transition;
+ transition.duration = MGLTimeIntervalFromDurationInSeconds(transitionOptions.duration.value_or(mbgl::Duration::zero()));
+ transition.delay = MGLTimeIntervalFromDurationInSeconds(transitionOptions.delay.value_or(mbgl::Duration::zero()));
+
+ NSValue *transitionValue = [NSValue value:&transition withObjCType:@encode(MGLTransition)];
+ return transitionValue;
+}
+
- (void)setCircleStrokeWidth:(MGLStyleValue<NSNumber *> *)circleStrokeWidth {
MGLAssertStyleLayerIsValid();
@@ -378,6 +466,18 @@ namespace mbgl {
return MGLStyleValueTransformer<float, NSNumber *>().toDataDrivenStyleValue(propertyValue);
}
+- (NSValue *)mbx_getCircleStrokeWidthTransition {
+ MGLAssertStyleLayerIsValid();
+
+ mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getCircleStrokeWidthTransition();
+ MGLTransition transition;
+ transition.duration = MGLTimeIntervalFromDurationInSeconds(transitionOptions.duration.value_or(mbgl::Duration::zero()));
+ transition.delay = MGLTimeIntervalFromDurationInSeconds(transitionOptions.delay.value_or(mbgl::Duration::zero()));
+
+ NSValue *transitionValue = [NSValue value:&transition withObjCType:@encode(MGLTransition)];
+ return transitionValue;
+}
+
- (void)setCircleTranslation:(MGLStyleValue<NSValue *> *)circleTranslation {
MGLAssertStyleLayerIsValid();
@@ -405,6 +505,18 @@ namespace mbgl {
return MGLStyleValueTransformer<std::array<float, 2>, NSValue *>().toStyleValue(propertyValue);
}
+- (NSValue *)mbx_getCircleTranslationTransition {
+ MGLAssertStyleLayerIsValid();
+
+ mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getCircleTranslateTransition();
+ MGLTransition transition;
+ transition.duration = MGLTimeIntervalFromDurationInSeconds(transitionOptions.duration.value_or(mbgl::Duration::zero()));
+ transition.delay = MGLTimeIntervalFromDurationInSeconds(transitionOptions.delay.value_or(mbgl::Duration::zero()));
+
+ NSValue *transitionValue = [NSValue value:&transition withObjCType:@encode(MGLTransition)];
+ return transitionValue;
+}
+
- (void)setCircleTranslate:(MGLStyleValue<NSValue *> *)circleTranslate {
}
@@ -412,6 +524,10 @@ namespace mbgl {
return self.circleTranslation;
}
+- (NSValue *)mbx_getCircleTranslate {
+ return [self mbx_getCircleTranslationTransition];
+}
+
- (void)setCircleTranslationAnchor:(MGLStyleValue<NSValue *> *)circleTranslationAnchor {
MGLAssertStyleLayerIsValid();
@@ -439,6 +555,18 @@ namespace mbgl {
return MGLStyleValueTransformer<mbgl::style::TranslateAnchorType, NSValue *, mbgl::style::TranslateAnchorType, MGLCircleTranslationAnchor>().toEnumStyleValue(propertyValue);
}
+- (NSValue *)mbx_getCircleTranslationAnchorTransition {
+ MGLAssertStyleLayerIsValid();
+
+ mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getCircleTranslateAnchorTransition();
+ MGLTransition transition;
+ transition.duration = MGLTimeIntervalFromDurationInSeconds(transitionOptions.duration.value_or(mbgl::Duration::zero()));
+ transition.delay = MGLTimeIntervalFromDurationInSeconds(transitionOptions.delay.value_or(mbgl::Duration::zero()));
+
+ NSValue *transitionValue = [NSValue value:&transition withObjCType:@encode(MGLTransition)];
+ return transitionValue;
+}
+
- (void)setCircleTranslateAnchor:(MGLStyleValue<NSValue *> *)circleTranslateAnchor {
}
@@ -446,6 +574,10 @@ namespace mbgl {
return self.circleTranslationAnchor;
}
+- (NSValue *)mbx_getCircleTranslateAnchor {
+ return [self mbx_getCircleTranslationAnchorTransition];
+}
+
@end
diff --git a/platform/darwin/src/MGLFillStyleLayer.mm b/platform/darwin/src/MGLFillStyleLayer.mm
index 81df8f4e0e..2df08788d9 100644
--- a/platform/darwin/src/MGLFillStyleLayer.mm
+++ b/platform/darwin/src/MGLFillStyleLayer.mm
@@ -174,6 +174,18 @@ namespace mbgl {
return MGLStyleValueTransformer<bool, NSNumber *>().toStyleValue(propertyValue);
}
+- (NSValue *)mbx_getFillAntialiasedTransition {
+ MGLAssertStyleLayerIsValid();
+
+ mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getFillAntialiasTransition();
+ MGLTransition transition;
+ transition.duration = MGLTimeIntervalFromDurationInSeconds(transitionOptions.duration.value_or(mbgl::Duration::zero()));
+ transition.delay = MGLTimeIntervalFromDurationInSeconds(transitionOptions.delay.value_or(mbgl::Duration::zero()));
+
+ NSValue *transitionValue = [NSValue value:&transition withObjCType:@encode(MGLTransition)];
+ return transitionValue;
+}
+
- (void)setFillAntialias:(MGLStyleValue<NSNumber *> *)fillAntialias {
}
@@ -181,6 +193,10 @@ namespace mbgl {
return self.isFillAntialiased;
}
+- (NSValue *)mbx_getFillAntialias {
+ return [self mbx_getFillAntialiasedTransition];
+}
+
- (void)setFillColor:(MGLStyleValue<MGLColor *> *)fillColor {
MGLAssertStyleLayerIsValid();
@@ -208,6 +224,18 @@ namespace mbgl {
return MGLStyleValueTransformer<mbgl::Color, MGLColor *>().toDataDrivenStyleValue(propertyValue);
}
+- (NSValue *)mbx_getFillColorTransition {
+ MGLAssertStyleLayerIsValid();
+
+ mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getFillColorTransition();
+ MGLTransition transition;
+ transition.duration = MGLTimeIntervalFromDurationInSeconds(transitionOptions.duration.value_or(mbgl::Duration::zero()));
+ transition.delay = MGLTimeIntervalFromDurationInSeconds(transitionOptions.delay.value_or(mbgl::Duration::zero()));
+
+ NSValue *transitionValue = [NSValue value:&transition withObjCType:@encode(MGLTransition)];
+ return transitionValue;
+}
+
- (void)setFillOpacity:(MGLStyleValue<NSNumber *> *)fillOpacity {
MGLAssertStyleLayerIsValid();
@@ -235,6 +263,18 @@ namespace mbgl {
return MGLStyleValueTransformer<float, NSNumber *>().toDataDrivenStyleValue(propertyValue);
}
+- (NSValue *)mbx_getFillOpacityTransition {
+ MGLAssertStyleLayerIsValid();
+
+ mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getFillOpacityTransition();
+ MGLTransition transition;
+ transition.duration = MGLTimeIntervalFromDurationInSeconds(transitionOptions.duration.value_or(mbgl::Duration::zero()));
+ transition.delay = MGLTimeIntervalFromDurationInSeconds(transitionOptions.delay.value_or(mbgl::Duration::zero()));
+
+ NSValue *transitionValue = [NSValue value:&transition withObjCType:@encode(MGLTransition)];
+ return transitionValue;
+}
+
- (void)setFillOutlineColor:(MGLStyleValue<MGLColor *> *)fillOutlineColor {
MGLAssertStyleLayerIsValid();
@@ -262,6 +302,18 @@ namespace mbgl {
return MGLStyleValueTransformer<mbgl::Color, MGLColor *>().toDataDrivenStyleValue(propertyValue);
}
+- (NSValue *)mbx_getFillOutlineColorTransition {
+ MGLAssertStyleLayerIsValid();
+
+ mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getFillOutlineColorTransition();
+ MGLTransition transition;
+ transition.duration = MGLTimeIntervalFromDurationInSeconds(transitionOptions.duration.value_or(mbgl::Duration::zero()));
+ transition.delay = MGLTimeIntervalFromDurationInSeconds(transitionOptions.delay.value_or(mbgl::Duration::zero()));
+
+ NSValue *transitionValue = [NSValue value:&transition withObjCType:@encode(MGLTransition)];
+ return transitionValue;
+}
+
- (void)setFillPattern:(MGLStyleValue<NSString *> *)fillPattern {
MGLAssertStyleLayerIsValid();
@@ -289,6 +341,18 @@ namespace mbgl {
return MGLStyleValueTransformer<std::string, NSString *>().toStyleValue(propertyValue);
}
+- (NSValue *)mbx_getFillPatternTransition {
+ MGLAssertStyleLayerIsValid();
+
+ mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getFillPatternTransition();
+ MGLTransition transition;
+ transition.duration = MGLTimeIntervalFromDurationInSeconds(transitionOptions.duration.value_or(mbgl::Duration::zero()));
+ transition.delay = MGLTimeIntervalFromDurationInSeconds(transitionOptions.delay.value_or(mbgl::Duration::zero()));
+
+ NSValue *transitionValue = [NSValue value:&transition withObjCType:@encode(MGLTransition)];
+ return transitionValue;
+}
+
- (void)setFillTranslation:(MGLStyleValue<NSValue *> *)fillTranslation {
MGLAssertStyleLayerIsValid();
@@ -316,6 +380,18 @@ namespace mbgl {
return MGLStyleValueTransformer<std::array<float, 2>, NSValue *>().toStyleValue(propertyValue);
}
+- (NSValue *)mbx_getFillTranslationTransition {
+ MGLAssertStyleLayerIsValid();
+
+ mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getFillTranslateTransition();
+ MGLTransition transition;
+ transition.duration = MGLTimeIntervalFromDurationInSeconds(transitionOptions.duration.value_or(mbgl::Duration::zero()));
+ transition.delay = MGLTimeIntervalFromDurationInSeconds(transitionOptions.delay.value_or(mbgl::Duration::zero()));
+
+ NSValue *transitionValue = [NSValue value:&transition withObjCType:@encode(MGLTransition)];
+ return transitionValue;
+}
+
- (void)setFillTranslate:(MGLStyleValue<NSValue *> *)fillTranslate {
}
@@ -323,6 +399,10 @@ namespace mbgl {
return self.fillTranslation;
}
+- (NSValue *)mbx_getFillTranslate {
+ return [self mbx_getFillTranslationTransition];
+}
+
- (void)setFillTranslationAnchor:(MGLStyleValue<NSValue *> *)fillTranslationAnchor {
MGLAssertStyleLayerIsValid();
@@ -350,6 +430,18 @@ namespace mbgl {
return MGLStyleValueTransformer<mbgl::style::TranslateAnchorType, NSValue *, mbgl::style::TranslateAnchorType, MGLFillTranslationAnchor>().toEnumStyleValue(propertyValue);
}
+- (NSValue *)mbx_getFillTranslationAnchorTransition {
+ MGLAssertStyleLayerIsValid();
+
+ mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getFillTranslateAnchorTransition();
+ MGLTransition transition;
+ transition.duration = MGLTimeIntervalFromDurationInSeconds(transitionOptions.duration.value_or(mbgl::Duration::zero()));
+ transition.delay = MGLTimeIntervalFromDurationInSeconds(transitionOptions.delay.value_or(mbgl::Duration::zero()));
+
+ NSValue *transitionValue = [NSValue value:&transition withObjCType:@encode(MGLTransition)];
+ return transitionValue;
+}
+
- (void)setFillTranslateAnchor:(MGLStyleValue<NSValue *> *)fillTranslateAnchor {
}
@@ -357,6 +449,10 @@ namespace mbgl {
return self.fillTranslationAnchor;
}
+- (NSValue *)mbx_getFillTranslateAnchor {
+ return [self mbx_getFillTranslationAnchorTransition];
+}
+
@end
diff --git a/platform/darwin/src/MGLLineStyleLayer.mm b/platform/darwin/src/MGLLineStyleLayer.mm
index 1b44f620f1..e862c8444a 100644
--- a/platform/darwin/src/MGLLineStyleLayer.mm
+++ b/platform/darwin/src/MGLLineStyleLayer.mm
@@ -259,6 +259,18 @@ namespace mbgl {
return MGLStyleValueTransformer<float, NSNumber *>().toDataDrivenStyleValue(propertyValue);
}
+- (NSValue *)mbx_getLineBlurTransition {
+ MGLAssertStyleLayerIsValid();
+
+ mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getLineBlurTransition();
+ MGLTransition transition;
+ transition.duration = MGLTimeIntervalFromDurationInSeconds(transitionOptions.duration.value_or(mbgl::Duration::zero()));
+ transition.delay = MGLTimeIntervalFromDurationInSeconds(transitionOptions.delay.value_or(mbgl::Duration::zero()));
+
+ NSValue *transitionValue = [NSValue value:&transition withObjCType:@encode(MGLTransition)];
+ return transitionValue;
+}
+
- (void)setLineColor:(MGLStyleValue<MGLColor *> *)lineColor {
MGLAssertStyleLayerIsValid();
@@ -286,6 +298,18 @@ namespace mbgl {
return MGLStyleValueTransformer<mbgl::Color, MGLColor *>().toDataDrivenStyleValue(propertyValue);
}
+- (NSValue *)mbx_getLineColorTransition {
+ MGLAssertStyleLayerIsValid();
+
+ mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getLineColorTransition();
+ MGLTransition transition;
+ transition.duration = MGLTimeIntervalFromDurationInSeconds(transitionOptions.duration.value_or(mbgl::Duration::zero()));
+ transition.delay = MGLTimeIntervalFromDurationInSeconds(transitionOptions.delay.value_or(mbgl::Duration::zero()));
+
+ NSValue *transitionValue = [NSValue value:&transition withObjCType:@encode(MGLTransition)];
+ return transitionValue;
+}
+
- (void)setLineDashPattern:(MGLStyleValue<NSArray<NSNumber *> *> *)lineDashPattern {
MGLAssertStyleLayerIsValid();
@@ -313,6 +337,18 @@ namespace mbgl {
return MGLStyleValueTransformer<std::vector<float>, NSArray<NSNumber *> *, float>().toStyleValue(propertyValue);
}
+- (NSValue *)mbx_getLineDashPatternTransition {
+ MGLAssertStyleLayerIsValid();
+
+ mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getLineDasharrayTransition();
+ MGLTransition transition;
+ transition.duration = MGLTimeIntervalFromDurationInSeconds(transitionOptions.duration.value_or(mbgl::Duration::zero()));
+ transition.delay = MGLTimeIntervalFromDurationInSeconds(transitionOptions.delay.value_or(mbgl::Duration::zero()));
+
+ NSValue *transitionValue = [NSValue value:&transition withObjCType:@encode(MGLTransition)];
+ return transitionValue;
+}
+
- (void)setLineDasharray:(MGLStyleValue<NSArray<NSNumber *> *> *)lineDasharray {
}
@@ -320,6 +356,10 @@ namespace mbgl {
return self.lineDashPattern;
}
+- (NSValue *)mbx_getLineDasharray {
+ return [self mbx_getLineDashPatternTransition];
+}
+
- (void)setLineGapWidth:(MGLStyleValue<NSNumber *> *)lineGapWidth {
MGLAssertStyleLayerIsValid();
@@ -347,6 +387,18 @@ namespace mbgl {
return MGLStyleValueTransformer<float, NSNumber *>().toDataDrivenStyleValue(propertyValue);
}
+- (NSValue *)mbx_getLineGapWidthTransition {
+ MGLAssertStyleLayerIsValid();
+
+ mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getLineGapWidthTransition();
+ MGLTransition transition;
+ transition.duration = MGLTimeIntervalFromDurationInSeconds(transitionOptions.duration.value_or(mbgl::Duration::zero()));
+ transition.delay = MGLTimeIntervalFromDurationInSeconds(transitionOptions.delay.value_or(mbgl::Duration::zero()));
+
+ NSValue *transitionValue = [NSValue value:&transition withObjCType:@encode(MGLTransition)];
+ return transitionValue;
+}
+
- (void)setLineOffset:(MGLStyleValue<NSNumber *> *)lineOffset {
MGLAssertStyleLayerIsValid();
@@ -374,6 +426,18 @@ namespace mbgl {
return MGLStyleValueTransformer<float, NSNumber *>().toDataDrivenStyleValue(propertyValue);
}
+- (NSValue *)mbx_getLineOffsetTransition {
+ MGLAssertStyleLayerIsValid();
+
+ mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getLineOffsetTransition();
+ MGLTransition transition;
+ transition.duration = MGLTimeIntervalFromDurationInSeconds(transitionOptions.duration.value_or(mbgl::Duration::zero()));
+ transition.delay = MGLTimeIntervalFromDurationInSeconds(transitionOptions.delay.value_or(mbgl::Duration::zero()));
+
+ NSValue *transitionValue = [NSValue value:&transition withObjCType:@encode(MGLTransition)];
+ return transitionValue;
+}
+
- (void)setLineOpacity:(MGLStyleValue<NSNumber *> *)lineOpacity {
MGLAssertStyleLayerIsValid();
@@ -401,6 +465,18 @@ namespace mbgl {
return MGLStyleValueTransformer<float, NSNumber *>().toDataDrivenStyleValue(propertyValue);
}
+- (NSValue *)mbx_getLineOpacityTransition {
+ MGLAssertStyleLayerIsValid();
+
+ mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getLineOpacityTransition();
+ MGLTransition transition;
+ transition.duration = MGLTimeIntervalFromDurationInSeconds(transitionOptions.duration.value_or(mbgl::Duration::zero()));
+ transition.delay = MGLTimeIntervalFromDurationInSeconds(transitionOptions.delay.value_or(mbgl::Duration::zero()));
+
+ NSValue *transitionValue = [NSValue value:&transition withObjCType:@encode(MGLTransition)];
+ return transitionValue;
+}
+
- (void)setLinePattern:(MGLStyleValue<NSString *> *)linePattern {
MGLAssertStyleLayerIsValid();
@@ -428,6 +504,18 @@ namespace mbgl {
return MGLStyleValueTransformer<std::string, NSString *>().toStyleValue(propertyValue);
}
+- (NSValue *)mbx_getLinePatternTransition {
+ MGLAssertStyleLayerIsValid();
+
+ mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getLinePatternTransition();
+ MGLTransition transition;
+ transition.duration = MGLTimeIntervalFromDurationInSeconds(transitionOptions.duration.value_or(mbgl::Duration::zero()));
+ transition.delay = MGLTimeIntervalFromDurationInSeconds(transitionOptions.delay.value_or(mbgl::Duration::zero()));
+
+ NSValue *transitionValue = [NSValue value:&transition withObjCType:@encode(MGLTransition)];
+ return transitionValue;
+}
+
- (void)setLineTranslation:(MGLStyleValue<NSValue *> *)lineTranslation {
MGLAssertStyleLayerIsValid();
@@ -455,6 +543,18 @@ namespace mbgl {
return MGLStyleValueTransformer<std::array<float, 2>, NSValue *>().toStyleValue(propertyValue);
}
+- (NSValue *)mbx_getLineTranslationTransition {
+ MGLAssertStyleLayerIsValid();
+
+ mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getLineTranslateTransition();
+ MGLTransition transition;
+ transition.duration = MGLTimeIntervalFromDurationInSeconds(transitionOptions.duration.value_or(mbgl::Duration::zero()));
+ transition.delay = MGLTimeIntervalFromDurationInSeconds(transitionOptions.delay.value_or(mbgl::Duration::zero()));
+
+ NSValue *transitionValue = [NSValue value:&transition withObjCType:@encode(MGLTransition)];
+ return transitionValue;
+}
+
- (void)setLineTranslate:(MGLStyleValue<NSValue *> *)lineTranslate {
}
@@ -462,6 +562,10 @@ namespace mbgl {
return self.lineTranslation;
}
+- (NSValue *)mbx_getLineTranslate {
+ return [self mbx_getLineTranslationTransition];
+}
+
- (void)setLineTranslationAnchor:(MGLStyleValue<NSValue *> *)lineTranslationAnchor {
MGLAssertStyleLayerIsValid();
@@ -489,6 +593,18 @@ namespace mbgl {
return MGLStyleValueTransformer<mbgl::style::TranslateAnchorType, NSValue *, mbgl::style::TranslateAnchorType, MGLLineTranslationAnchor>().toEnumStyleValue(propertyValue);
}
+- (NSValue *)mbx_getLineTranslationAnchorTransition {
+ MGLAssertStyleLayerIsValid();
+
+ mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getLineTranslateAnchorTransition();
+ MGLTransition transition;
+ transition.duration = MGLTimeIntervalFromDurationInSeconds(transitionOptions.duration.value_or(mbgl::Duration::zero()));
+ transition.delay = MGLTimeIntervalFromDurationInSeconds(transitionOptions.delay.value_or(mbgl::Duration::zero()));
+
+ NSValue *transitionValue = [NSValue value:&transition withObjCType:@encode(MGLTransition)];
+ return transitionValue;
+}
+
- (void)setLineTranslateAnchor:(MGLStyleValue<NSValue *> *)lineTranslateAnchor {
}
@@ -496,6 +612,10 @@ namespace mbgl {
return self.lineTranslationAnchor;
}
+- (NSValue *)mbx_getLineTranslateAnchor {
+ return [self mbx_getLineTranslationAnchorTransition];
+}
+
- (void)setLineWidth:(MGLStyleValue<NSNumber *> *)lineWidth {
MGLAssertStyleLayerIsValid();
@@ -523,6 +643,18 @@ namespace mbgl {
return MGLStyleValueTransformer<float, NSNumber *>().toStyleValue(propertyValue);
}
+- (NSValue *)mbx_getLineWidthTransition {
+ MGLAssertStyleLayerIsValid();
+
+ mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getLineWidthTransition();
+ MGLTransition transition;
+ transition.duration = MGLTimeIntervalFromDurationInSeconds(transitionOptions.duration.value_or(mbgl::Duration::zero()));
+ transition.delay = MGLTimeIntervalFromDurationInSeconds(transitionOptions.delay.value_or(mbgl::Duration::zero()));
+
+ NSValue *transitionValue = [NSValue value:&transition withObjCType:@encode(MGLTransition)];
+ return transitionValue;
+}
+
@end
diff --git a/platform/darwin/src/MGLRasterStyleLayer.mm b/platform/darwin/src/MGLRasterStyleLayer.mm
index b4d1a10f0d..cbc5fb207e 100644
--- a/platform/darwin/src/MGLRasterStyleLayer.mm
+++ b/platform/darwin/src/MGLRasterStyleLayer.mm
@@ -136,6 +136,18 @@
return MGLStyleValueTransformer<float, NSNumber *>().toStyleValue(propertyValue);
}
+- (NSValue *)mbx_getMaximumRasterBrightnessTransition {
+ MGLAssertStyleLayerIsValid();
+
+ mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getRasterBrightnessMaxTransition();
+ MGLTransition transition;
+ transition.duration = MGLTimeIntervalFromDurationInSeconds(transitionOptions.duration.value_or(mbgl::Duration::zero()));
+ transition.delay = MGLTimeIntervalFromDurationInSeconds(transitionOptions.delay.value_or(mbgl::Duration::zero()));
+
+ NSValue *transitionValue = [NSValue value:&transition withObjCType:@encode(MGLTransition)];
+ return transitionValue;
+}
+
- (void)setRasterBrightnessMax:(MGLStyleValue<NSNumber *> *)rasterBrightnessMax {
}
@@ -143,6 +155,10 @@
return self.maximumRasterBrightness;
}
+- (NSValue *)mbx_getRasterBrightnessMax {
+ return [self mbx_getMaximumRasterBrightnessTransition];
+}
+
- (void)setMinimumRasterBrightness:(MGLStyleValue<NSNumber *> *)minimumRasterBrightness {
MGLAssertStyleLayerIsValid();
@@ -170,6 +186,18 @@
return MGLStyleValueTransformer<float, NSNumber *>().toStyleValue(propertyValue);
}
+- (NSValue *)mbx_getMinimumRasterBrightnessTransition {
+ MGLAssertStyleLayerIsValid();
+
+ mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getRasterBrightnessMinTransition();
+ MGLTransition transition;
+ transition.duration = MGLTimeIntervalFromDurationInSeconds(transitionOptions.duration.value_or(mbgl::Duration::zero()));
+ transition.delay = MGLTimeIntervalFromDurationInSeconds(transitionOptions.delay.value_or(mbgl::Duration::zero()));
+
+ NSValue *transitionValue = [NSValue value:&transition withObjCType:@encode(MGLTransition)];
+ return transitionValue;
+}
+
- (void)setRasterBrightnessMin:(MGLStyleValue<NSNumber *> *)rasterBrightnessMin {
}
@@ -177,6 +205,10 @@
return self.minimumRasterBrightness;
}
+- (NSValue *)mbx_getRasterBrightnessMin {
+ return [self mbx_getMinimumRasterBrightnessTransition];
+}
+
- (void)setRasterContrast:(MGLStyleValue<NSNumber *> *)rasterContrast {
MGLAssertStyleLayerIsValid();
@@ -204,6 +236,18 @@
return MGLStyleValueTransformer<float, NSNumber *>().toStyleValue(propertyValue);
}
+- (NSValue *)mbx_getRasterContrastTransition {
+ MGLAssertStyleLayerIsValid();
+
+ mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getRasterContrastTransition();
+ MGLTransition transition;
+ transition.duration = MGLTimeIntervalFromDurationInSeconds(transitionOptions.duration.value_or(mbgl::Duration::zero()));
+ transition.delay = MGLTimeIntervalFromDurationInSeconds(transitionOptions.delay.value_or(mbgl::Duration::zero()));
+
+ NSValue *transitionValue = [NSValue value:&transition withObjCType:@encode(MGLTransition)];
+ return transitionValue;
+}
+
- (void)setRasterFadeDuration:(MGLStyleValue<NSNumber *> *)rasterFadeDuration {
MGLAssertStyleLayerIsValid();
@@ -231,6 +275,18 @@
return MGLStyleValueTransformer<float, NSNumber *>().toStyleValue(propertyValue);
}
+- (NSValue *)mbx_getRasterFadeDurationTransition {
+ MGLAssertStyleLayerIsValid();
+
+ mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getRasterFadeDurationTransition();
+ MGLTransition transition;
+ transition.duration = MGLTimeIntervalFromDurationInSeconds(transitionOptions.duration.value_or(mbgl::Duration::zero()));
+ transition.delay = MGLTimeIntervalFromDurationInSeconds(transitionOptions.delay.value_or(mbgl::Duration::zero()));
+
+ NSValue *transitionValue = [NSValue value:&transition withObjCType:@encode(MGLTransition)];
+ return transitionValue;
+}
+
- (void)setRasterHueRotation:(MGLStyleValue<NSNumber *> *)rasterHueRotation {
MGLAssertStyleLayerIsValid();
@@ -258,6 +314,18 @@
return MGLStyleValueTransformer<float, NSNumber *>().toStyleValue(propertyValue);
}
+- (NSValue *)mbx_getRasterHueRotationTransition {
+ MGLAssertStyleLayerIsValid();
+
+ mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getRasterHueRotateTransition();
+ MGLTransition transition;
+ transition.duration = MGLTimeIntervalFromDurationInSeconds(transitionOptions.duration.value_or(mbgl::Duration::zero()));
+ transition.delay = MGLTimeIntervalFromDurationInSeconds(transitionOptions.delay.value_or(mbgl::Duration::zero()));
+
+ NSValue *transitionValue = [NSValue value:&transition withObjCType:@encode(MGLTransition)];
+ return transitionValue;
+}
+
- (void)setRasterHueRotate:(MGLStyleValue<NSNumber *> *)rasterHueRotate {
}
@@ -265,6 +333,10 @@
return self.rasterHueRotation;
}
+- (NSValue *)mbx_getRasterHueRotate {
+ return [self mbx_getRasterHueRotationTransition];
+}
+
- (void)setRasterOpacity:(MGLStyleValue<NSNumber *> *)rasterOpacity {
MGLAssertStyleLayerIsValid();
@@ -292,6 +364,18 @@
return MGLStyleValueTransformer<float, NSNumber *>().toStyleValue(propertyValue);
}
+- (NSValue *)mbx_getRasterOpacityTransition {
+ MGLAssertStyleLayerIsValid();
+
+ mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getRasterOpacityTransition();
+ MGLTransition transition;
+ transition.duration = MGLTimeIntervalFromDurationInSeconds(transitionOptions.duration.value_or(mbgl::Duration::zero()));
+ transition.delay = MGLTimeIntervalFromDurationInSeconds(transitionOptions.delay.value_or(mbgl::Duration::zero()));
+
+ NSValue *transitionValue = [NSValue value:&transition withObjCType:@encode(MGLTransition)];
+ return transitionValue;
+}
+
- (void)setRasterSaturation:(MGLStyleValue<NSNumber *> *)rasterSaturation {
MGLAssertStyleLayerIsValid();
@@ -319,5 +403,17 @@
return MGLStyleValueTransformer<float, NSNumber *>().toStyleValue(propertyValue);
}
+- (NSValue *)mbx_getRasterSaturationTransition {
+ MGLAssertStyleLayerIsValid();
+
+ mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getRasterSaturationTransition();
+ MGLTransition transition;
+ transition.duration = MGLTimeIntervalFromDurationInSeconds(transitionOptions.duration.value_or(mbgl::Duration::zero()));
+ transition.delay = MGLTimeIntervalFromDurationInSeconds(transitionOptions.delay.value_or(mbgl::Duration::zero()));
+
+ NSValue *transitionValue = [NSValue value:&transition withObjCType:@encode(MGLTransition)];
+ return transitionValue;
+}
+
@end
diff --git a/platform/darwin/src/MGLStyleLayer.mm b/platform/darwin/src/MGLStyleLayer.mm
index 60226a6842..d307270799 100644
--- a/platform/darwin/src/MGLStyleLayer.mm
+++ b/platform/darwin/src/MGLStyleLayer.mm
@@ -67,7 +67,7 @@
- (void)setTransition:(MGLTransition)transition forKey:(NSString *)key
{
- SEL setPropertyTransitionSelector = [self mbx_selectorForKey:key];
+ SEL setPropertyTransitionSelector = [self mbx_selectorForKey:key type:@"set" hasParams:YES];
if ([self respondsToSelector:setPropertyTransitionSelector]) {
#pragma clang diagnostic push
@@ -81,7 +81,7 @@
{
MGLTransition transition;
- SEL getPropertyTransitionSelector = [self mbx_selectorForKey:key];
+ SEL getPropertyTransitionSelector = [self mbx_selectorForKey:key type:@"get" hasParams:NO];
if ([self respondsToSelector:getPropertyTransitionSelector]) {
#pragma clang diagnostic push
@@ -94,15 +94,16 @@
return transition;
}
-- (SEL)mbx_selectorForKey:(NSString *)key
+- (SEL)mbx_selectorForKey:(NSString *)key type:(NSString *)type hasParams:(BOOL)params
{
NSString *camelCaseKey;
+ NSString *parameters = params ? @":" : @"";
if ([key length] > 1) {
camelCaseKey = [NSString stringWithFormat:@"%@%@", [[key substringToIndex:1] uppercaseString], [key substringFromIndex:1]];
} else {
camelCaseKey = [key uppercaseString];
}
- NSString *setPropertyTransitionString = [NSString stringWithFormat:@"mbx_set%@Transition:", camelCaseKey];
+ NSString *setPropertyTransitionString = [NSString stringWithFormat:@"mbx_%@%@Transition%@", type, camelCaseKey, parameters];
SEL propertyTransitionSelector = NSSelectorFromString(setPropertyTransitionString);
return propertyTransitionSelector;
diff --git a/platform/darwin/src/MGLStyleLayer.mm.ejs b/platform/darwin/src/MGLStyleLayer.mm.ejs
index de293fe6bf..779b186bee 100644
--- a/platform/darwin/src/MGLStyleLayer.mm.ejs
+++ b/platform/darwin/src/MGLStyleLayer.mm.ejs
@@ -295,6 +295,18 @@ namespace mbgl {
<% } -%>
}
+- (NSValue *)mbx_get<%- camelize(property.name) %>Transition {
+ MGLAssertStyleLayerIsValid();
+
+ mbgl::style::TransitionOptions transitionOptions = self.rawLayer->get<%- camelize(originalPropertyName(property)) %>Transition();
+ MGLTransition transition;
+ transition.duration = MGLTimeIntervalFromDurationInSeconds(transitionOptions.duration.value_or(mbgl::Duration::zero()));
+ transition.delay = MGLTimeIntervalFromDurationInSeconds(transitionOptions.delay.value_or(mbgl::Duration::zero()));
+
+ NSValue *transitionValue = [NSValue value:&transition withObjCType:@encode(MGLTransition)];
+ return transitionValue;
+}
+
<% if (property.original) { -%>
- (void)set<%- camelize(originalPropertyName(property)) %>:(MGLStyleValue<<%- propertyType(property, true) %>> *)<%- camelizeWithLeadingLowercase(originalPropertyName(property)) %> {
}
@@ -303,6 +315,10 @@ namespace mbgl {
return self.<%- objCGetter(property) %>;
}
+- (NSValue *)mbx_get<%- camelize(originalPropertyName(property)) %> {
+ return [self mbx_get<%- camelize(property.name) %>Transition];
+}
+
<% } -%>
<% } -%>
<% } -%>
diff --git a/platform/darwin/src/MGLSymbolStyleLayer.mm b/platform/darwin/src/MGLSymbolStyleLayer.mm
index 16d0db7d09..e08861409a 100644
--- a/platform/darwin/src/MGLSymbolStyleLayer.mm
+++ b/platform/darwin/src/MGLSymbolStyleLayer.mm
@@ -940,6 +940,18 @@ namespace mbgl {
return MGLStyleValueTransformer<mbgl::Color, MGLColor *>().toDataDrivenStyleValue(propertyValue);
}
+- (NSValue *)mbx_getIconColorTransition {
+ MGLAssertStyleLayerIsValid();
+
+ mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getIconColorTransition();
+ MGLTransition transition;
+ transition.duration = MGLTimeIntervalFromDurationInSeconds(transitionOptions.duration.value_or(mbgl::Duration::zero()));
+ transition.delay = MGLTimeIntervalFromDurationInSeconds(transitionOptions.delay.value_or(mbgl::Duration::zero()));
+
+ NSValue *transitionValue = [NSValue value:&transition withObjCType:@encode(MGLTransition)];
+ return transitionValue;
+}
+
- (void)setIconHaloBlur:(MGLStyleValue<NSNumber *> *)iconHaloBlur {
MGLAssertStyleLayerIsValid();
@@ -967,6 +979,18 @@ namespace mbgl {
return MGLStyleValueTransformer<float, NSNumber *>().toDataDrivenStyleValue(propertyValue);
}
+- (NSValue *)mbx_getIconHaloBlurTransition {
+ MGLAssertStyleLayerIsValid();
+
+ mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getIconHaloBlurTransition();
+ MGLTransition transition;
+ transition.duration = MGLTimeIntervalFromDurationInSeconds(transitionOptions.duration.value_or(mbgl::Duration::zero()));
+ transition.delay = MGLTimeIntervalFromDurationInSeconds(transitionOptions.delay.value_or(mbgl::Duration::zero()));
+
+ NSValue *transitionValue = [NSValue value:&transition withObjCType:@encode(MGLTransition)];
+ return transitionValue;
+}
+
- (void)setIconHaloColor:(MGLStyleValue<MGLColor *> *)iconHaloColor {
MGLAssertStyleLayerIsValid();
@@ -994,6 +1018,18 @@ namespace mbgl {
return MGLStyleValueTransformer<mbgl::Color, MGLColor *>().toDataDrivenStyleValue(propertyValue);
}
+- (NSValue *)mbx_getIconHaloColorTransition {
+ MGLAssertStyleLayerIsValid();
+
+ mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getIconHaloColorTransition();
+ MGLTransition transition;
+ transition.duration = MGLTimeIntervalFromDurationInSeconds(transitionOptions.duration.value_or(mbgl::Duration::zero()));
+ transition.delay = MGLTimeIntervalFromDurationInSeconds(transitionOptions.delay.value_or(mbgl::Duration::zero()));
+
+ NSValue *transitionValue = [NSValue value:&transition withObjCType:@encode(MGLTransition)];
+ return transitionValue;
+}
+
- (void)setIconHaloWidth:(MGLStyleValue<NSNumber *> *)iconHaloWidth {
MGLAssertStyleLayerIsValid();
@@ -1021,6 +1057,18 @@ namespace mbgl {
return MGLStyleValueTransformer<float, NSNumber *>().toDataDrivenStyleValue(propertyValue);
}
+- (NSValue *)mbx_getIconHaloWidthTransition {
+ MGLAssertStyleLayerIsValid();
+
+ mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getIconHaloWidthTransition();
+ MGLTransition transition;
+ transition.duration = MGLTimeIntervalFromDurationInSeconds(transitionOptions.duration.value_or(mbgl::Duration::zero()));
+ transition.delay = MGLTimeIntervalFromDurationInSeconds(transitionOptions.delay.value_or(mbgl::Duration::zero()));
+
+ NSValue *transitionValue = [NSValue value:&transition withObjCType:@encode(MGLTransition)];
+ return transitionValue;
+}
+
- (void)setIconOpacity:(MGLStyleValue<NSNumber *> *)iconOpacity {
MGLAssertStyleLayerIsValid();
@@ -1048,6 +1096,18 @@ namespace mbgl {
return MGLStyleValueTransformer<float, NSNumber *>().toDataDrivenStyleValue(propertyValue);
}
+- (NSValue *)mbx_getIconOpacityTransition {
+ MGLAssertStyleLayerIsValid();
+
+ mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getIconOpacityTransition();
+ MGLTransition transition;
+ transition.duration = MGLTimeIntervalFromDurationInSeconds(transitionOptions.duration.value_or(mbgl::Duration::zero()));
+ transition.delay = MGLTimeIntervalFromDurationInSeconds(transitionOptions.delay.value_or(mbgl::Duration::zero()));
+
+ NSValue *transitionValue = [NSValue value:&transition withObjCType:@encode(MGLTransition)];
+ return transitionValue;
+}
+
- (void)setIconTranslation:(MGLStyleValue<NSValue *> *)iconTranslation {
MGLAssertStyleLayerIsValid();
@@ -1075,6 +1135,18 @@ namespace mbgl {
return MGLStyleValueTransformer<std::array<float, 2>, NSValue *>().toStyleValue(propertyValue);
}
+- (NSValue *)mbx_getIconTranslationTransition {
+ MGLAssertStyleLayerIsValid();
+
+ mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getIconTranslateTransition();
+ MGLTransition transition;
+ transition.duration = MGLTimeIntervalFromDurationInSeconds(transitionOptions.duration.value_or(mbgl::Duration::zero()));
+ transition.delay = MGLTimeIntervalFromDurationInSeconds(transitionOptions.delay.value_or(mbgl::Duration::zero()));
+
+ NSValue *transitionValue = [NSValue value:&transition withObjCType:@encode(MGLTransition)];
+ return transitionValue;
+}
+
- (void)setIconTranslate:(MGLStyleValue<NSValue *> *)iconTranslate {
}
@@ -1082,6 +1154,10 @@ namespace mbgl {
return self.iconTranslation;
}
+- (NSValue *)mbx_getIconTranslate {
+ return [self mbx_getIconTranslationTransition];
+}
+
- (void)setIconTranslationAnchor:(MGLStyleValue<NSValue *> *)iconTranslationAnchor {
MGLAssertStyleLayerIsValid();
@@ -1109,6 +1185,18 @@ namespace mbgl {
return MGLStyleValueTransformer<mbgl::style::TranslateAnchorType, NSValue *, mbgl::style::TranslateAnchorType, MGLIconTranslationAnchor>().toEnumStyleValue(propertyValue);
}
+- (NSValue *)mbx_getIconTranslationAnchorTransition {
+ MGLAssertStyleLayerIsValid();
+
+ mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getIconTranslateAnchorTransition();
+ MGLTransition transition;
+ transition.duration = MGLTimeIntervalFromDurationInSeconds(transitionOptions.duration.value_or(mbgl::Duration::zero()));
+ transition.delay = MGLTimeIntervalFromDurationInSeconds(transitionOptions.delay.value_or(mbgl::Duration::zero()));
+
+ NSValue *transitionValue = [NSValue value:&transition withObjCType:@encode(MGLTransition)];
+ return transitionValue;
+}
+
- (void)setIconTranslateAnchor:(MGLStyleValue<NSValue *> *)iconTranslateAnchor {
}
@@ -1116,6 +1204,10 @@ namespace mbgl {
return self.iconTranslationAnchor;
}
+- (NSValue *)mbx_getIconTranslateAnchor {
+ return [self mbx_getIconTranslationAnchorTransition];
+}
+
- (void)setTextColor:(MGLStyleValue<MGLColor *> *)textColor {
MGLAssertStyleLayerIsValid();
@@ -1143,6 +1235,18 @@ namespace mbgl {
return MGLStyleValueTransformer<mbgl::Color, MGLColor *>().toDataDrivenStyleValue(propertyValue);
}
+- (NSValue *)mbx_getTextColorTransition {
+ MGLAssertStyleLayerIsValid();
+
+ mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getTextColorTransition();
+ MGLTransition transition;
+ transition.duration = MGLTimeIntervalFromDurationInSeconds(transitionOptions.duration.value_or(mbgl::Duration::zero()));
+ transition.delay = MGLTimeIntervalFromDurationInSeconds(transitionOptions.delay.value_or(mbgl::Duration::zero()));
+
+ NSValue *transitionValue = [NSValue value:&transition withObjCType:@encode(MGLTransition)];
+ return transitionValue;
+}
+
- (void)setTextHaloBlur:(MGLStyleValue<NSNumber *> *)textHaloBlur {
MGLAssertStyleLayerIsValid();
@@ -1170,6 +1274,18 @@ namespace mbgl {
return MGLStyleValueTransformer<float, NSNumber *>().toDataDrivenStyleValue(propertyValue);
}
+- (NSValue *)mbx_getTextHaloBlurTransition {
+ MGLAssertStyleLayerIsValid();
+
+ mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getTextHaloBlurTransition();
+ MGLTransition transition;
+ transition.duration = MGLTimeIntervalFromDurationInSeconds(transitionOptions.duration.value_or(mbgl::Duration::zero()));
+ transition.delay = MGLTimeIntervalFromDurationInSeconds(transitionOptions.delay.value_or(mbgl::Duration::zero()));
+
+ NSValue *transitionValue = [NSValue value:&transition withObjCType:@encode(MGLTransition)];
+ return transitionValue;
+}
+
- (void)setTextHaloColor:(MGLStyleValue<MGLColor *> *)textHaloColor {
MGLAssertStyleLayerIsValid();
@@ -1197,6 +1313,18 @@ namespace mbgl {
return MGLStyleValueTransformer<mbgl::Color, MGLColor *>().toDataDrivenStyleValue(propertyValue);
}
+- (NSValue *)mbx_getTextHaloColorTransition {
+ MGLAssertStyleLayerIsValid();
+
+ mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getTextHaloColorTransition();
+ MGLTransition transition;
+ transition.duration = MGLTimeIntervalFromDurationInSeconds(transitionOptions.duration.value_or(mbgl::Duration::zero()));
+ transition.delay = MGLTimeIntervalFromDurationInSeconds(transitionOptions.delay.value_or(mbgl::Duration::zero()));
+
+ NSValue *transitionValue = [NSValue value:&transition withObjCType:@encode(MGLTransition)];
+ return transitionValue;
+}
+
- (void)setTextHaloWidth:(MGLStyleValue<NSNumber *> *)textHaloWidth {
MGLAssertStyleLayerIsValid();
@@ -1224,6 +1352,18 @@ namespace mbgl {
return MGLStyleValueTransformer<float, NSNumber *>().toDataDrivenStyleValue(propertyValue);
}
+- (NSValue *)mbx_getTextHaloWidthTransition {
+ MGLAssertStyleLayerIsValid();
+
+ mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getTextHaloWidthTransition();
+ MGLTransition transition;
+ transition.duration = MGLTimeIntervalFromDurationInSeconds(transitionOptions.duration.value_or(mbgl::Duration::zero()));
+ transition.delay = MGLTimeIntervalFromDurationInSeconds(transitionOptions.delay.value_or(mbgl::Duration::zero()));
+
+ NSValue *transitionValue = [NSValue value:&transition withObjCType:@encode(MGLTransition)];
+ return transitionValue;
+}
+
- (void)setTextOpacity:(MGLStyleValue<NSNumber *> *)textOpacity {
MGLAssertStyleLayerIsValid();
@@ -1251,6 +1391,18 @@ namespace mbgl {
return MGLStyleValueTransformer<float, NSNumber *>().toDataDrivenStyleValue(propertyValue);
}
+- (NSValue *)mbx_getTextOpacityTransition {
+ MGLAssertStyleLayerIsValid();
+
+ mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getTextOpacityTransition();
+ MGLTransition transition;
+ transition.duration = MGLTimeIntervalFromDurationInSeconds(transitionOptions.duration.value_or(mbgl::Duration::zero()));
+ transition.delay = MGLTimeIntervalFromDurationInSeconds(transitionOptions.delay.value_or(mbgl::Duration::zero()));
+
+ NSValue *transitionValue = [NSValue value:&transition withObjCType:@encode(MGLTransition)];
+ return transitionValue;
+}
+
- (void)setTextTranslation:(MGLStyleValue<NSValue *> *)textTranslation {
MGLAssertStyleLayerIsValid();
@@ -1278,6 +1430,18 @@ namespace mbgl {
return MGLStyleValueTransformer<std::array<float, 2>, NSValue *>().toStyleValue(propertyValue);
}
+- (NSValue *)mbx_getTextTranslationTransition {
+ MGLAssertStyleLayerIsValid();
+
+ mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getTextTranslateTransition();
+ MGLTransition transition;
+ transition.duration = MGLTimeIntervalFromDurationInSeconds(transitionOptions.duration.value_or(mbgl::Duration::zero()));
+ transition.delay = MGLTimeIntervalFromDurationInSeconds(transitionOptions.delay.value_or(mbgl::Duration::zero()));
+
+ NSValue *transitionValue = [NSValue value:&transition withObjCType:@encode(MGLTransition)];
+ return transitionValue;
+}
+
- (void)setTextTranslate:(MGLStyleValue<NSValue *> *)textTranslate {
}
@@ -1285,6 +1449,10 @@ namespace mbgl {
return self.textTranslation;
}
+- (NSValue *)mbx_getTextTranslate {
+ return [self mbx_getTextTranslationTransition];
+}
+
- (void)setTextTranslationAnchor:(MGLStyleValue<NSValue *> *)textTranslationAnchor {
MGLAssertStyleLayerIsValid();
@@ -1312,6 +1480,18 @@ namespace mbgl {
return MGLStyleValueTransformer<mbgl::style::TranslateAnchorType, NSValue *, mbgl::style::TranslateAnchorType, MGLTextTranslationAnchor>().toEnumStyleValue(propertyValue);
}
+- (NSValue *)mbx_getTextTranslationAnchorTransition {
+ MGLAssertStyleLayerIsValid();
+
+ mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getTextTranslateAnchorTransition();
+ MGLTransition transition;
+ transition.duration = MGLTimeIntervalFromDurationInSeconds(transitionOptions.duration.value_or(mbgl::Duration::zero()));
+ transition.delay = MGLTimeIntervalFromDurationInSeconds(transitionOptions.delay.value_or(mbgl::Duration::zero()));
+
+ NSValue *transitionValue = [NSValue value:&transition withObjCType:@encode(MGLTransition)];
+ return transitionValue;
+}
+
- (void)setTextTranslateAnchor:(MGLStyleValue<NSValue *> *)textTranslateAnchor {
}
@@ -1319,6 +1499,10 @@ namespace mbgl {
return self.textTranslationAnchor;
}
+- (NSValue *)mbx_getTextTranslateAnchor {
+ return [self mbx_getTextTranslationAnchorTransition];
+}
+
@end
diff --git a/src/mbgl/style/layers/background_layer.cpp b/src/mbgl/style/layers/background_layer.cpp
index 5a903f1b6b..cf79bc1e68 100644
--- a/src/mbgl/style/layers/background_layer.cpp
+++ b/src/mbgl/style/layers/background_layer.cpp
@@ -59,6 +59,10 @@ void BackgroundLayer::setBackgroundColorTransition(const TransitionOptions& valu
impl->paint.setTransition<BackgroundColor>(value, klass);
}
+style::TransitionOptions BackgroundLayer::getBackgroundColorTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<BackgroundColor>(klass);
+}
+
PropertyValue<std::string> BackgroundLayer::getDefaultBackgroundPattern() {
return { "" };
}
@@ -78,6 +82,10 @@ void BackgroundLayer::setBackgroundPatternTransition(const TransitionOptions& va
impl->paint.setTransition<BackgroundPattern>(value, klass);
}
+style::TransitionOptions BackgroundLayer::getBackgroundPatternTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<BackgroundPattern>(klass);
+}
+
PropertyValue<float> BackgroundLayer::getDefaultBackgroundOpacity() {
return { 1 };
}
@@ -97,5 +105,9 @@ void BackgroundLayer::setBackgroundOpacityTransition(const TransitionOptions& va
impl->paint.setTransition<BackgroundOpacity>(value, klass);
}
+style::TransitionOptions BackgroundLayer::getBackgroundOpacityTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<BackgroundOpacity>(klass);
+}
+
} // namespace style
} // namespace mbgl
diff --git a/src/mbgl/style/layers/circle_layer.cpp b/src/mbgl/style/layers/circle_layer.cpp
index 53248e9397..aa62c35631 100644
--- a/src/mbgl/style/layers/circle_layer.cpp
+++ b/src/mbgl/style/layers/circle_layer.cpp
@@ -88,6 +88,10 @@ void CircleLayer::setCircleRadiusTransition(const TransitionOptions& value, cons
impl->paint.setTransition<CircleRadius>(value, klass);
}
+style::TransitionOptions CircleLayer::getCircleRadiusTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<CircleRadius>(klass);
+}
+
DataDrivenPropertyValue<Color> CircleLayer::getDefaultCircleColor() {
return { Color::black() };
}
@@ -111,6 +115,10 @@ void CircleLayer::setCircleColorTransition(const TransitionOptions& value, const
impl->paint.setTransition<CircleColor>(value, klass);
}
+style::TransitionOptions CircleLayer::getCircleColorTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<CircleColor>(klass);
+}
+
DataDrivenPropertyValue<float> CircleLayer::getDefaultCircleBlur() {
return { 0 };
}
@@ -134,6 +142,10 @@ void CircleLayer::setCircleBlurTransition(const TransitionOptions& value, const
impl->paint.setTransition<CircleBlur>(value, klass);
}
+style::TransitionOptions CircleLayer::getCircleBlurTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<CircleBlur>(klass);
+}
+
DataDrivenPropertyValue<float> CircleLayer::getDefaultCircleOpacity() {
return { 1 };
}
@@ -157,6 +169,10 @@ void CircleLayer::setCircleOpacityTransition(const TransitionOptions& value, con
impl->paint.setTransition<CircleOpacity>(value, klass);
}
+style::TransitionOptions CircleLayer::getCircleOpacityTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<CircleOpacity>(klass);
+}
+
PropertyValue<std::array<float, 2>> CircleLayer::getDefaultCircleTranslate() {
return { {{ 0, 0 }} };
}
@@ -176,6 +192,10 @@ void CircleLayer::setCircleTranslateTransition(const TransitionOptions& value, c
impl->paint.setTransition<CircleTranslate>(value, klass);
}
+style::TransitionOptions CircleLayer::getCircleTranslateTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<CircleTranslate>(klass);
+}
+
PropertyValue<TranslateAnchorType> CircleLayer::getDefaultCircleTranslateAnchor() {
return { TranslateAnchorType::Map };
}
@@ -195,6 +215,10 @@ void CircleLayer::setCircleTranslateAnchorTransition(const TransitionOptions& va
impl->paint.setTransition<CircleTranslateAnchor>(value, klass);
}
+style::TransitionOptions CircleLayer::getCircleTranslateAnchorTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<CircleTranslateAnchor>(klass);
+}
+
PropertyValue<CirclePitchScaleType> CircleLayer::getDefaultCirclePitchScale() {
return { CirclePitchScaleType::Map };
}
@@ -214,6 +238,10 @@ void CircleLayer::setCirclePitchScaleTransition(const TransitionOptions& value,
impl->paint.setTransition<CirclePitchScale>(value, klass);
}
+style::TransitionOptions CircleLayer::getCirclePitchScaleTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<CirclePitchScale>(klass);
+}
+
DataDrivenPropertyValue<float> CircleLayer::getDefaultCircleStrokeWidth() {
return { 0 };
}
@@ -237,6 +265,10 @@ void CircleLayer::setCircleStrokeWidthTransition(const TransitionOptions& value,
impl->paint.setTransition<CircleStrokeWidth>(value, klass);
}
+style::TransitionOptions CircleLayer::getCircleStrokeWidthTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<CircleStrokeWidth>(klass);
+}
+
DataDrivenPropertyValue<Color> CircleLayer::getDefaultCircleStrokeColor() {
return { Color::black() };
}
@@ -260,6 +292,10 @@ void CircleLayer::setCircleStrokeColorTransition(const TransitionOptions& value,
impl->paint.setTransition<CircleStrokeColor>(value, klass);
}
+style::TransitionOptions CircleLayer::getCircleStrokeColorTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<CircleStrokeColor>(klass);
+}
+
DataDrivenPropertyValue<float> CircleLayer::getDefaultCircleStrokeOpacity() {
return { 1 };
}
@@ -283,5 +319,9 @@ void CircleLayer::setCircleStrokeOpacityTransition(const TransitionOptions& valu
impl->paint.setTransition<CircleStrokeOpacity>(value, klass);
}
+style::TransitionOptions CircleLayer::getCircleStrokeOpacityTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<CircleStrokeOpacity>(klass);
+}
+
} // namespace style
} // namespace mbgl
diff --git a/src/mbgl/style/layers/fill_extrusion_layer.cpp b/src/mbgl/style/layers/fill_extrusion_layer.cpp
index 4672ede9b8..aad1c30af9 100644
--- a/src/mbgl/style/layers/fill_extrusion_layer.cpp
+++ b/src/mbgl/style/layers/fill_extrusion_layer.cpp
@@ -84,6 +84,10 @@ void FillExtrusionLayer::setFillExtrusionOpacityTransition(const TransitionOptio
impl->paint.setTransition<FillExtrusionOpacity>(value, klass);
}
+style::TransitionOptions FillExtrusionLayer::getFillExtrusionOpacityTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<FillExtrusionOpacity>(klass);
+}
+
DataDrivenPropertyValue<Color> FillExtrusionLayer::getDefaultFillExtrusionColor() {
return { Color::black() };
}
@@ -107,6 +111,10 @@ void FillExtrusionLayer::setFillExtrusionColorTransition(const TransitionOptions
impl->paint.setTransition<FillExtrusionColor>(value, klass);
}
+style::TransitionOptions FillExtrusionLayer::getFillExtrusionColorTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<FillExtrusionColor>(klass);
+}
+
PropertyValue<std::array<float, 2>> FillExtrusionLayer::getDefaultFillExtrusionTranslate() {
return { {{ 0, 0 }} };
}
@@ -126,6 +134,10 @@ void FillExtrusionLayer::setFillExtrusionTranslateTransition(const TransitionOpt
impl->paint.setTransition<FillExtrusionTranslate>(value, klass);
}
+style::TransitionOptions FillExtrusionLayer::getFillExtrusionTranslateTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<FillExtrusionTranslate>(klass);
+}
+
PropertyValue<TranslateAnchorType> FillExtrusionLayer::getDefaultFillExtrusionTranslateAnchor() {
return { TranslateAnchorType::Map };
}
@@ -145,6 +157,10 @@ void FillExtrusionLayer::setFillExtrusionTranslateAnchorTransition(const Transit
impl->paint.setTransition<FillExtrusionTranslateAnchor>(value, klass);
}
+style::TransitionOptions FillExtrusionLayer::getFillExtrusionTranslateAnchorTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<FillExtrusionTranslateAnchor>(klass);
+}
+
PropertyValue<std::string> FillExtrusionLayer::getDefaultFillExtrusionPattern() {
return { "" };
}
@@ -164,6 +180,10 @@ void FillExtrusionLayer::setFillExtrusionPatternTransition(const TransitionOptio
impl->paint.setTransition<FillExtrusionPattern>(value, klass);
}
+style::TransitionOptions FillExtrusionLayer::getFillExtrusionPatternTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<FillExtrusionPattern>(klass);
+}
+
DataDrivenPropertyValue<float> FillExtrusionLayer::getDefaultFillExtrusionHeight() {
return { 0 };
}
@@ -187,6 +207,10 @@ void FillExtrusionLayer::setFillExtrusionHeightTransition(const TransitionOption
impl->paint.setTransition<FillExtrusionHeight>(value, klass);
}
+style::TransitionOptions FillExtrusionLayer::getFillExtrusionHeightTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<FillExtrusionHeight>(klass);
+}
+
DataDrivenPropertyValue<float> FillExtrusionLayer::getDefaultFillExtrusionBase() {
return { 0 };
}
@@ -210,5 +234,9 @@ void FillExtrusionLayer::setFillExtrusionBaseTransition(const TransitionOptions&
impl->paint.setTransition<FillExtrusionBase>(value, klass);
}
+style::TransitionOptions FillExtrusionLayer::getFillExtrusionBaseTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<FillExtrusionBase>(klass);
+}
+
} // namespace style
} // namespace mbgl
diff --git a/src/mbgl/style/layers/fill_layer.cpp b/src/mbgl/style/layers/fill_layer.cpp
index dfa88b5b0f..fa6966d314 100644
--- a/src/mbgl/style/layers/fill_layer.cpp
+++ b/src/mbgl/style/layers/fill_layer.cpp
@@ -84,6 +84,10 @@ void FillLayer::setFillAntialiasTransition(const TransitionOptions& value, const
impl->paint.setTransition<FillAntialias>(value, klass);
}
+style::TransitionOptions FillLayer::getFillAntialiasTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<FillAntialias>(klass);
+}
+
DataDrivenPropertyValue<float> FillLayer::getDefaultFillOpacity() {
return { 1 };
}
@@ -107,6 +111,10 @@ void FillLayer::setFillOpacityTransition(const TransitionOptions& value, const o
impl->paint.setTransition<FillOpacity>(value, klass);
}
+style::TransitionOptions FillLayer::getFillOpacityTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<FillOpacity>(klass);
+}
+
DataDrivenPropertyValue<Color> FillLayer::getDefaultFillColor() {
return { Color::black() };
}
@@ -130,6 +138,10 @@ void FillLayer::setFillColorTransition(const TransitionOptions& value, const opt
impl->paint.setTransition<FillColor>(value, klass);
}
+style::TransitionOptions FillLayer::getFillColorTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<FillColor>(klass);
+}
+
DataDrivenPropertyValue<Color> FillLayer::getDefaultFillOutlineColor() {
return { {} };
}
@@ -153,6 +165,10 @@ void FillLayer::setFillOutlineColorTransition(const TransitionOptions& value, co
impl->paint.setTransition<FillOutlineColor>(value, klass);
}
+style::TransitionOptions FillLayer::getFillOutlineColorTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<FillOutlineColor>(klass);
+}
+
PropertyValue<std::array<float, 2>> FillLayer::getDefaultFillTranslate() {
return { {{ 0, 0 }} };
}
@@ -172,6 +188,10 @@ void FillLayer::setFillTranslateTransition(const TransitionOptions& value, const
impl->paint.setTransition<FillTranslate>(value, klass);
}
+style::TransitionOptions FillLayer::getFillTranslateTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<FillTranslate>(klass);
+}
+
PropertyValue<TranslateAnchorType> FillLayer::getDefaultFillTranslateAnchor() {
return { TranslateAnchorType::Map };
}
@@ -191,6 +211,10 @@ void FillLayer::setFillTranslateAnchorTransition(const TransitionOptions& value,
impl->paint.setTransition<FillTranslateAnchor>(value, klass);
}
+style::TransitionOptions FillLayer::getFillTranslateAnchorTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<FillTranslateAnchor>(klass);
+}
+
PropertyValue<std::string> FillLayer::getDefaultFillPattern() {
return { "" };
}
@@ -210,5 +234,9 @@ void FillLayer::setFillPatternTransition(const TransitionOptions& value, const o
impl->paint.setTransition<FillPattern>(value, klass);
}
+style::TransitionOptions FillLayer::getFillPatternTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<FillPattern>(klass);
+}
+
} // namespace style
} // namespace mbgl
diff --git a/src/mbgl/style/layers/layer.cpp.ejs b/src/mbgl/style/layers/layer.cpp.ejs
index 335573abf3..800ed163be 100644
--- a/src/mbgl/style/layers/layer.cpp.ejs
+++ b/src/mbgl/style/layers/layer.cpp.ejs
@@ -130,6 +130,10 @@ void <%- camelize(type) %>Layer::set<%- camelize(property.name) %>(<%- propertyV
void <%- camelize(type) %>Layer::set<%- camelize(property.name) %>Transition(const TransitionOptions& value, const optional<std::string>& klass) {
impl->paint.setTransition<<%- camelize(property.name) %>>(value, klass);
}
+
+style::TransitionOptions <%- camelize(type) %>Layer::get<%- camelize(property.name) %>Transition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<<%- camelize(property.name) %>>(klass);
+}
<% } -%>
} // namespace style
diff --git a/src/mbgl/style/layers/line_layer.cpp b/src/mbgl/style/layers/line_layer.cpp
index eaaa0fcd45..1df48a60a1 100644
--- a/src/mbgl/style/layers/line_layer.cpp
+++ b/src/mbgl/style/layers/line_layer.cpp
@@ -145,6 +145,10 @@ void LineLayer::setLineOpacityTransition(const TransitionOptions& value, const o
impl->paint.setTransition<LineOpacity>(value, klass);
}
+style::TransitionOptions LineLayer::getLineOpacityTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<LineOpacity>(klass);
+}
+
DataDrivenPropertyValue<Color> LineLayer::getDefaultLineColor() {
return { Color::black() };
}
@@ -168,6 +172,10 @@ void LineLayer::setLineColorTransition(const TransitionOptions& value, const opt
impl->paint.setTransition<LineColor>(value, klass);
}
+style::TransitionOptions LineLayer::getLineColorTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<LineColor>(klass);
+}
+
PropertyValue<std::array<float, 2>> LineLayer::getDefaultLineTranslate() {
return { {{ 0, 0 }} };
}
@@ -187,6 +195,10 @@ void LineLayer::setLineTranslateTransition(const TransitionOptions& value, const
impl->paint.setTransition<LineTranslate>(value, klass);
}
+style::TransitionOptions LineLayer::getLineTranslateTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<LineTranslate>(klass);
+}
+
PropertyValue<TranslateAnchorType> LineLayer::getDefaultLineTranslateAnchor() {
return { TranslateAnchorType::Map };
}
@@ -206,6 +218,10 @@ void LineLayer::setLineTranslateAnchorTransition(const TransitionOptions& value,
impl->paint.setTransition<LineTranslateAnchor>(value, klass);
}
+style::TransitionOptions LineLayer::getLineTranslateAnchorTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<LineTranslateAnchor>(klass);
+}
+
PropertyValue<float> LineLayer::getDefaultLineWidth() {
return { 1 };
}
@@ -225,6 +241,10 @@ void LineLayer::setLineWidthTransition(const TransitionOptions& value, const opt
impl->paint.setTransition<LineWidth>(value, klass);
}
+style::TransitionOptions LineLayer::getLineWidthTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<LineWidth>(klass);
+}
+
DataDrivenPropertyValue<float> LineLayer::getDefaultLineGapWidth() {
return { 0 };
}
@@ -248,6 +268,10 @@ void LineLayer::setLineGapWidthTransition(const TransitionOptions& value, const
impl->paint.setTransition<LineGapWidth>(value, klass);
}
+style::TransitionOptions LineLayer::getLineGapWidthTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<LineGapWidth>(klass);
+}
+
DataDrivenPropertyValue<float> LineLayer::getDefaultLineOffset() {
return { 0 };
}
@@ -271,6 +295,10 @@ void LineLayer::setLineOffsetTransition(const TransitionOptions& value, const op
impl->paint.setTransition<LineOffset>(value, klass);
}
+style::TransitionOptions LineLayer::getLineOffsetTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<LineOffset>(klass);
+}
+
DataDrivenPropertyValue<float> LineLayer::getDefaultLineBlur() {
return { 0 };
}
@@ -294,6 +322,10 @@ void LineLayer::setLineBlurTransition(const TransitionOptions& value, const opti
impl->paint.setTransition<LineBlur>(value, klass);
}
+style::TransitionOptions LineLayer::getLineBlurTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<LineBlur>(klass);
+}
+
PropertyValue<std::vector<float>> LineLayer::getDefaultLineDasharray() {
return { { } };
}
@@ -313,6 +345,10 @@ void LineLayer::setLineDasharrayTransition(const TransitionOptions& value, const
impl->paint.setTransition<LineDasharray>(value, klass);
}
+style::TransitionOptions LineLayer::getLineDasharrayTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<LineDasharray>(klass);
+}
+
PropertyValue<std::string> LineLayer::getDefaultLinePattern() {
return { "" };
}
@@ -332,5 +368,9 @@ void LineLayer::setLinePatternTransition(const TransitionOptions& value, const o
impl->paint.setTransition<LinePattern>(value, klass);
}
+style::TransitionOptions LineLayer::getLinePatternTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<LinePattern>(klass);
+}
+
} // namespace style
} // namespace mbgl
diff --git a/src/mbgl/style/layers/raster_layer.cpp b/src/mbgl/style/layers/raster_layer.cpp
index 2108a5c49f..64921be330 100644
--- a/src/mbgl/style/layers/raster_layer.cpp
+++ b/src/mbgl/style/layers/raster_layer.cpp
@@ -66,6 +66,10 @@ void RasterLayer::setRasterOpacityTransition(const TransitionOptions& value, con
impl->paint.setTransition<RasterOpacity>(value, klass);
}
+style::TransitionOptions RasterLayer::getRasterOpacityTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<RasterOpacity>(klass);
+}
+
PropertyValue<float> RasterLayer::getDefaultRasterHueRotate() {
return { 0 };
}
@@ -85,6 +89,10 @@ void RasterLayer::setRasterHueRotateTransition(const TransitionOptions& value, c
impl->paint.setTransition<RasterHueRotate>(value, klass);
}
+style::TransitionOptions RasterLayer::getRasterHueRotateTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<RasterHueRotate>(klass);
+}
+
PropertyValue<float> RasterLayer::getDefaultRasterBrightnessMin() {
return { 0 };
}
@@ -104,6 +112,10 @@ void RasterLayer::setRasterBrightnessMinTransition(const TransitionOptions& valu
impl->paint.setTransition<RasterBrightnessMin>(value, klass);
}
+style::TransitionOptions RasterLayer::getRasterBrightnessMinTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<RasterBrightnessMin>(klass);
+}
+
PropertyValue<float> RasterLayer::getDefaultRasterBrightnessMax() {
return { 1 };
}
@@ -123,6 +135,10 @@ void RasterLayer::setRasterBrightnessMaxTransition(const TransitionOptions& valu
impl->paint.setTransition<RasterBrightnessMax>(value, klass);
}
+style::TransitionOptions RasterLayer::getRasterBrightnessMaxTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<RasterBrightnessMax>(klass);
+}
+
PropertyValue<float> RasterLayer::getDefaultRasterSaturation() {
return { 0 };
}
@@ -142,6 +158,10 @@ void RasterLayer::setRasterSaturationTransition(const TransitionOptions& value,
impl->paint.setTransition<RasterSaturation>(value, klass);
}
+style::TransitionOptions RasterLayer::getRasterSaturationTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<RasterSaturation>(klass);
+}
+
PropertyValue<float> RasterLayer::getDefaultRasterContrast() {
return { 0 };
}
@@ -161,6 +181,10 @@ void RasterLayer::setRasterContrastTransition(const TransitionOptions& value, co
impl->paint.setTransition<RasterContrast>(value, klass);
}
+style::TransitionOptions RasterLayer::getRasterContrastTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<RasterContrast>(klass);
+}
+
PropertyValue<float> RasterLayer::getDefaultRasterFadeDuration() {
return { 300 };
}
@@ -180,5 +204,9 @@ void RasterLayer::setRasterFadeDurationTransition(const TransitionOptions& value
impl->paint.setTransition<RasterFadeDuration>(value, klass);
}
+style::TransitionOptions RasterLayer::getRasterFadeDurationTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<RasterFadeDuration>(klass);
+}
+
} // namespace style
} // namespace mbgl
diff --git a/src/mbgl/style/layers/symbol_layer.cpp b/src/mbgl/style/layers/symbol_layer.cpp
index d85b8c00e6..b741b39345 100644
--- a/src/mbgl/style/layers/symbol_layer.cpp
+++ b/src/mbgl/style/layers/symbol_layer.cpp
@@ -565,6 +565,10 @@ void SymbolLayer::setIconOpacityTransition(const TransitionOptions& value, const
impl->paint.setTransition<IconOpacity>(value, klass);
}
+style::TransitionOptions SymbolLayer::getIconOpacityTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<IconOpacity>(klass);
+}
+
DataDrivenPropertyValue<Color> SymbolLayer::getDefaultIconColor() {
return { Color::black() };
}
@@ -588,6 +592,10 @@ void SymbolLayer::setIconColorTransition(const TransitionOptions& value, const o
impl->paint.setTransition<IconColor>(value, klass);
}
+style::TransitionOptions SymbolLayer::getIconColorTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<IconColor>(klass);
+}
+
DataDrivenPropertyValue<Color> SymbolLayer::getDefaultIconHaloColor() {
return { {} };
}
@@ -611,6 +619,10 @@ void SymbolLayer::setIconHaloColorTransition(const TransitionOptions& value, con
impl->paint.setTransition<IconHaloColor>(value, klass);
}
+style::TransitionOptions SymbolLayer::getIconHaloColorTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<IconHaloColor>(klass);
+}
+
DataDrivenPropertyValue<float> SymbolLayer::getDefaultIconHaloWidth() {
return { 0 };
}
@@ -634,6 +646,10 @@ void SymbolLayer::setIconHaloWidthTransition(const TransitionOptions& value, con
impl->paint.setTransition<IconHaloWidth>(value, klass);
}
+style::TransitionOptions SymbolLayer::getIconHaloWidthTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<IconHaloWidth>(klass);
+}
+
DataDrivenPropertyValue<float> SymbolLayer::getDefaultIconHaloBlur() {
return { 0 };
}
@@ -657,6 +673,10 @@ void SymbolLayer::setIconHaloBlurTransition(const TransitionOptions& value, cons
impl->paint.setTransition<IconHaloBlur>(value, klass);
}
+style::TransitionOptions SymbolLayer::getIconHaloBlurTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<IconHaloBlur>(klass);
+}
+
PropertyValue<std::array<float, 2>> SymbolLayer::getDefaultIconTranslate() {
return { {{ 0, 0 }} };
}
@@ -676,6 +696,10 @@ void SymbolLayer::setIconTranslateTransition(const TransitionOptions& value, con
impl->paint.setTransition<IconTranslate>(value, klass);
}
+style::TransitionOptions SymbolLayer::getIconTranslateTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<IconTranslate>(klass);
+}
+
PropertyValue<TranslateAnchorType> SymbolLayer::getDefaultIconTranslateAnchor() {
return { TranslateAnchorType::Map };
}
@@ -695,6 +719,10 @@ void SymbolLayer::setIconTranslateAnchorTransition(const TransitionOptions& valu
impl->paint.setTransition<IconTranslateAnchor>(value, klass);
}
+style::TransitionOptions SymbolLayer::getIconTranslateAnchorTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<IconTranslateAnchor>(klass);
+}
+
DataDrivenPropertyValue<float> SymbolLayer::getDefaultTextOpacity() {
return { 1 };
}
@@ -718,6 +746,10 @@ void SymbolLayer::setTextOpacityTransition(const TransitionOptions& value, const
impl->paint.setTransition<TextOpacity>(value, klass);
}
+style::TransitionOptions SymbolLayer::getTextOpacityTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<TextOpacity>(klass);
+}
+
DataDrivenPropertyValue<Color> SymbolLayer::getDefaultTextColor() {
return { Color::black() };
}
@@ -741,6 +773,10 @@ void SymbolLayer::setTextColorTransition(const TransitionOptions& value, const o
impl->paint.setTransition<TextColor>(value, klass);
}
+style::TransitionOptions SymbolLayer::getTextColorTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<TextColor>(klass);
+}
+
DataDrivenPropertyValue<Color> SymbolLayer::getDefaultTextHaloColor() {
return { {} };
}
@@ -764,6 +800,10 @@ void SymbolLayer::setTextHaloColorTransition(const TransitionOptions& value, con
impl->paint.setTransition<TextHaloColor>(value, klass);
}
+style::TransitionOptions SymbolLayer::getTextHaloColorTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<TextHaloColor>(klass);
+}
+
DataDrivenPropertyValue<float> SymbolLayer::getDefaultTextHaloWidth() {
return { 0 };
}
@@ -787,6 +827,10 @@ void SymbolLayer::setTextHaloWidthTransition(const TransitionOptions& value, con
impl->paint.setTransition<TextHaloWidth>(value, klass);
}
+style::TransitionOptions SymbolLayer::getTextHaloWidthTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<TextHaloWidth>(klass);
+}
+
DataDrivenPropertyValue<float> SymbolLayer::getDefaultTextHaloBlur() {
return { 0 };
}
@@ -810,6 +854,10 @@ void SymbolLayer::setTextHaloBlurTransition(const TransitionOptions& value, cons
impl->paint.setTransition<TextHaloBlur>(value, klass);
}
+style::TransitionOptions SymbolLayer::getTextHaloBlurTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<TextHaloBlur>(klass);
+}
+
PropertyValue<std::array<float, 2>> SymbolLayer::getDefaultTextTranslate() {
return { {{ 0, 0 }} };
}
@@ -829,6 +877,10 @@ void SymbolLayer::setTextTranslateTransition(const TransitionOptions& value, con
impl->paint.setTransition<TextTranslate>(value, klass);
}
+style::TransitionOptions SymbolLayer::getTextTranslateTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<TextTranslate>(klass);
+}
+
PropertyValue<TranslateAnchorType> SymbolLayer::getDefaultTextTranslateAnchor() {
return { TranslateAnchorType::Map };
}
@@ -848,5 +900,9 @@ void SymbolLayer::setTextTranslateAnchorTransition(const TransitionOptions& valu
impl->paint.setTransition<TextTranslateAnchor>(value, klass);
}
+style::TransitionOptions SymbolLayer::getTextTranslateAnchorTransition(const optional<std::string>& klass) const {
+ return impl->paint.getTransition<TextTranslateAnchor>(klass);
+}
+
} // namespace style
} // namespace mbgl
diff --git a/src/mbgl/style/paint_property.hpp b/src/mbgl/style/paint_property.hpp
index 1fa2390f33..941ef8d93a 100644
--- a/src/mbgl/style/paint_property.hpp
+++ b/src/mbgl/style/paint_property.hpp
@@ -219,6 +219,11 @@ public:
void setTransition(const TransitionOptions& value, const optional<std::string>& klass) {
cascading.template get<P>().setTransition(value, klass);
}
+
+ template <class P>
+ auto getTransition(const optional<std::string>& klass) const {
+ return cascading.template get<P>().getTransition(klass);
+ }
void cascade(const CascadeParameters& parameters) {
unevaluated = Unevaluated {