summaryrefslogtreecommitdiff
path: root/platform/android/src/style/layers/layer.cpp
diff options
context:
space:
mode:
authorTobrun <tobrun@mapbox.com>2017-04-19 15:05:08 +0200
committerGitHub <noreply@github.com>2017-04-19 15:05:08 +0200
commit553ec88dc0350b9b034a0370300653d94f092382 (patch)
tree291aaa4e26979090a5b233d69e9cba557f0ab5f2 /platform/android/src/style/layers/layer.cpp
parent9c1150cfe9c1d7c4992e421695ce7c83a4840339 (diff)
downloadqtlocation-mapboxgl-553ec88dc0350b9b034a0370300653d94f092382.tar.gz
[android] - expose source layer identifier (#8709)
Diffstat (limited to 'platform/android/src/style/layers/layer.cpp')
-rw-r--r--platform/android/src/style/layers/layer.cpp20
1 files changed, 20 insertions, 0 deletions
diff --git a/platform/android/src/style/layers/layer.cpp b/platform/android/src/style/layers/layer.cpp
index 6c9de51a0d..58c0c5ee84 100644
--- a/platform/android/src/style/layers/layer.cpp
+++ b/platform/android/src/style/layers/layer.cpp
@@ -144,6 +144,25 @@ namespace android {
}
}
+ jni::String Layer::getSourceLayer(jni::JNIEnv& env) {
+ using namespace mbgl::style;
+
+ std::string sourceLayerId;
+ if (layer.is<FillLayer>()) {
+ sourceLayerId = layer.as<FillLayer>()->getSourceLayer();
+ } else if (layer.is<LineLayer>()) {
+ sourceLayerId = layer.as<LineLayer>()->getSourceLayer();
+ } else if (layer.is<SymbolLayer>()) {
+ sourceLayerId = layer.as<SymbolLayer>()->getSourceLayer();
+ } else if (layer.is<CircleLayer>()) {
+ sourceLayerId = layer.as<CircleLayer>()->getSourceLayer();
+ } else {
+ mbgl::Log::Warning(mbgl::Event::JNI, "Layer doesn't support source layer");
+ }
+
+ return jni::Make<jni::String>(env, sourceLayerId);
+ }
+
jni::jfloat Layer::getMinZoom(jni::JNIEnv&){
return layer.getMinZoom();
}
@@ -180,6 +199,7 @@ namespace android {
METHOD(&Layer::setPaintProperty, "nativeSetPaintProperty"),
METHOD(&Layer::setFilter, "nativeSetFilter"),
METHOD(&Layer::setSourceLayer, "nativeSetSourceLayer"),
+ METHOD(&Layer::getSourceLayer, "nativeGetSourceLayer"),
METHOD(&Layer::getMinZoom, "nativeGetMinZoom"),
METHOD(&Layer::getMaxZoom, "nativeGetMaxZoom"),
METHOD(&Layer::setMinZoom, "nativeSetMinZoom"),