diff options
author | Bruno de Oliveira Abinader <bruno@mapbox.com> | 2018-11-30 14:26:12 +0200 |
---|---|---|
committer | Bruno de Oliveira Abinader <bruno@mapbox.com> | 2019-01-14 10:45:49 -0400 |
commit | a4f2fe4209ef6961662fb53ee5c29cafacd2a303 (patch) | |
tree | b9c2e27516e658494d477715658d3996799b5aba | |
parent | 06871122f55da4782cb88c431286f5a735fa8914 (diff) | |
download | qtlocation-mapboxgl-a4f2fe4209ef6961662fb53ee5c29cafacd2a303.tar.gz |
[core] Use PropertyAnimation in AnnotationTileFeatureData
-rw-r--r-- | src/mbgl/annotation/annotation_tile.cpp | 10 | ||||
-rw-r--r-- | src/mbgl/annotation/annotation_tile.hpp | 3 | ||||
-rw-r--r-- | src/mbgl/annotation/symbol_annotation_impl.cpp | 2 |
3 files changed, 10 insertions, 5 deletions
diff --git a/src/mbgl/annotation/annotation_tile.cpp b/src/mbgl/annotation/annotation_tile.cpp index e5e3b68dff..74a7dad682 100644 --- a/src/mbgl/annotation/annotation_tile.cpp +++ b/src/mbgl/annotation/annotation_tile.cpp @@ -24,7 +24,7 @@ public: AnnotationTileFeatureData(const AnnotationID id_, FeatureType type_, GeometryCollection&& geometries_, - std::unordered_map<std::string, std::string>&& properties_) + PropertyMap&& properties_) : id(id_), type(type_), geometries(std::move(geometries_)), @@ -34,7 +34,7 @@ public: AnnotationID id; FeatureType type; GeometryCollection geometries; - std::unordered_map<std::string, std::string> properties; + PropertyMap properties; }; AnnotationTileFeature::AnnotationTileFeature(std::shared_ptr<const AnnotationTileFeatureData> data_) @@ -59,6 +59,10 @@ FeatureIdentifier AnnotationTileFeature::getID() const { return data->id; } +const PropertyMap& AnnotationTileFeature::getProperties() const { + return data->properties; +} + GeometryCollection AnnotationTileFeature::getGeometries() const { return data->geometries; } @@ -90,7 +94,7 @@ std::string AnnotationTileLayer::getName() const { void AnnotationTileLayer::addFeature(const AnnotationID id, FeatureType type, GeometryCollection geometries, - std::unordered_map<std::string, std::string> properties) { + PropertyMap properties) { layer->features.emplace_back(std::make_shared<AnnotationTileFeatureData>( id, type, std::move(geometries), std::move(properties))); diff --git a/src/mbgl/annotation/annotation_tile.hpp b/src/mbgl/annotation/annotation_tile.hpp index 1e23fdf98a..7757f0b0ce 100644 --- a/src/mbgl/annotation/annotation_tile.hpp +++ b/src/mbgl/annotation/annotation_tile.hpp @@ -28,6 +28,7 @@ public: FeatureType getType() const override; optional<Value> getValue(const std::string&) const override; FeatureIdentifier getID() const override; + const PropertyMap& getProperties() const override; GeometryCollection getGeometries() const override; private: @@ -47,7 +48,7 @@ public: void addFeature(const AnnotationID, FeatureType, GeometryCollection, - std::unordered_map<std::string, std::string> properties = { {} }); + PropertyMap properties = { {} }); private: std::shared_ptr<AnnotationTileLayerData> layer; diff --git a/src/mbgl/annotation/symbol_annotation_impl.cpp b/src/mbgl/annotation/symbol_annotation_impl.cpp index c95eb481b5..bc4dbec283 100644 --- a/src/mbgl/annotation/symbol_annotation_impl.cpp +++ b/src/mbgl/annotation/symbol_annotation_impl.cpp @@ -12,7 +12,7 @@ SymbolAnnotationImpl::SymbolAnnotationImpl(AnnotationID id_, SymbolAnnotation an } void SymbolAnnotationImpl::updateLayer(const CanonicalTileID& tileID, AnnotationTileLayer& layer) const { - std::unordered_map<std::string, std::string> featureProperties; + PropertyMap featureProperties; featureProperties.emplace("sprite", annotation.icon.empty() ? std::string("default_marker") : annotation.icon); LatLng latLng { annotation.geometry.y, annotation.geometry.x }; |