summaryrefslogtreecommitdiff
path: root/src/mbgl/style/layers/raster_layer.cpp
diff options
context:
space:
mode:
authorJohn Firebaugh <john.firebaugh@gmail.com>2016-08-29 12:00:08 -0700
committerJohn Firebaugh <john.firebaugh@gmail.com>2016-09-06 14:29:22 -0700
commitfe2a26225f3746381b36ad8b6c6a3ce7727bf655 (patch)
tree62507ffd6a28654a377469d35e21719ff7a12fdc /src/mbgl/style/layers/raster_layer.cpp
parent3a48c60813b18c092c8d8d75c80a318bdd8859bb (diff)
downloadqtlocation-mapboxgl-fe2a26225f3746381b36ad8b6c6a3ce7727bf655.tar.gz
[core, ios, android, qt] Observe style layer mutations rather than requiring SDKs to use Map::update
This paves the way for updates to filter and layout properties to trigger a source reload, without each SDK having to participate in the implementation.
Diffstat (limited to 'src/mbgl/style/layers/raster_layer.cpp')
-rw-r--r--src/mbgl/style/layers/raster_layer.cpp21
1 files changed, 21 insertions, 0 deletions
diff --git a/src/mbgl/style/layers/raster_layer.cpp b/src/mbgl/style/layers/raster_layer.cpp
index 084b29ee33..238bfef6e4 100644
--- a/src/mbgl/style/layers/raster_layer.cpp
+++ b/src/mbgl/style/layers/raster_layer.cpp
@@ -53,7 +53,10 @@ PropertyValue<float> RasterLayer::getRasterOpacity(const optional<std::string>&
}
void RasterLayer::setRasterOpacity(PropertyValue<float> value, const optional<std::string>& klass) {
+ if (value == getRasterOpacity(klass))
+ return;
impl->paint.rasterOpacity.set(value, klass);
+ impl->observer->onLayerPaintPropertyChanged(*this);
}
PropertyValue<float> RasterLayer::getDefaultRasterHueRotate() {
@@ -65,7 +68,10 @@ PropertyValue<float> RasterLayer::getRasterHueRotate(const optional<std::string>
}
void RasterLayer::setRasterHueRotate(PropertyValue<float> value, const optional<std::string>& klass) {
+ if (value == getRasterHueRotate(klass))
+ return;
impl->paint.rasterHueRotate.set(value, klass);
+ impl->observer->onLayerPaintPropertyChanged(*this);
}
PropertyValue<float> RasterLayer::getDefaultRasterBrightnessMin() {
@@ -77,7 +83,10 @@ PropertyValue<float> RasterLayer::getRasterBrightnessMin(const optional<std::str
}
void RasterLayer::setRasterBrightnessMin(PropertyValue<float> value, const optional<std::string>& klass) {
+ if (value == getRasterBrightnessMin(klass))
+ return;
impl->paint.rasterBrightnessMin.set(value, klass);
+ impl->observer->onLayerPaintPropertyChanged(*this);
}
PropertyValue<float> RasterLayer::getDefaultRasterBrightnessMax() {
@@ -89,7 +98,10 @@ PropertyValue<float> RasterLayer::getRasterBrightnessMax(const optional<std::str
}
void RasterLayer::setRasterBrightnessMax(PropertyValue<float> value, const optional<std::string>& klass) {
+ if (value == getRasterBrightnessMax(klass))
+ return;
impl->paint.rasterBrightnessMax.set(value, klass);
+ impl->observer->onLayerPaintPropertyChanged(*this);
}
PropertyValue<float> RasterLayer::getDefaultRasterSaturation() {
@@ -101,7 +113,10 @@ PropertyValue<float> RasterLayer::getRasterSaturation(const optional<std::string
}
void RasterLayer::setRasterSaturation(PropertyValue<float> value, const optional<std::string>& klass) {
+ if (value == getRasterSaturation(klass))
+ return;
impl->paint.rasterSaturation.set(value, klass);
+ impl->observer->onLayerPaintPropertyChanged(*this);
}
PropertyValue<float> RasterLayer::getDefaultRasterContrast() {
@@ -113,7 +128,10 @@ PropertyValue<float> RasterLayer::getRasterContrast(const optional<std::string>&
}
void RasterLayer::setRasterContrast(PropertyValue<float> value, const optional<std::string>& klass) {
+ if (value == getRasterContrast(klass))
+ return;
impl->paint.rasterContrast.set(value, klass);
+ impl->observer->onLayerPaintPropertyChanged(*this);
}
PropertyValue<float> RasterLayer::getDefaultRasterFadeDuration() {
@@ -125,7 +143,10 @@ PropertyValue<float> RasterLayer::getRasterFadeDuration(const optional<std::stri
}
void RasterLayer::setRasterFadeDuration(PropertyValue<float> value, const optional<std::string>& klass) {
+ if (value == getRasterFadeDuration(klass))
+ return;
impl->paint.rasterFadeDuration.set(value, klass);
+ impl->observer->onLayerPaintPropertyChanged(*this);
}
} // namespace style