diff options
author | Fabian Guerra <fabian.guerra@mapbox.com> | 2017-03-02 17:32:25 -0500 |
---|---|---|
committer | Justin R. Miller <incanus@codesorcery.net> | 2017-03-06 17:09:25 -0800 |
commit | 8c894854ea07ae81b9a2f7f1313c8a0eeabd76c5 (patch) | |
tree | eeb0a5ce0a2d60623ddc206446e47ca6e398186a | |
parent | de3f8fb9d31c383167ba55b7d999029c1433783e (diff) | |
download | qtlocation-mapboxgl-8c894854ea07ae81b9a2f7f1313c8a0eeabd76c5.tar.gz |
[ios, macos] added support for getting property transitions
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 { |