// This file is generated. Edit android/platform/scripts/generate-style-code.js, then run `make android-style-code`. #include "background_layer.hpp" #include #include "../conversion/property_value.hpp" #include "../conversion/transition_options.hpp" namespace mbgl { namespace android { /** * Creates an owning peer object (for layers not attached to the map) from the JVM side */ BackgroundLayer::BackgroundLayer(jni::JNIEnv& env, jni::String layerId) : Layer(env, std::make_unique(jni::Make(env, layerId))) { } /** * Creates a non-owning peer object (for layers currently attached to the map) */ BackgroundLayer::BackgroundLayer(mbgl::Map& map, mbgl::style::BackgroundLayer& coreLayer) : Layer(map, coreLayer) { } /** * Creates an owning peer object (for layers not attached to the map) */ BackgroundLayer::BackgroundLayer(mbgl::Map& map, std::unique_ptr coreLayer) : Layer(map, std::move(coreLayer)) { } BackgroundLayer::~BackgroundLayer() = default; // Property getters jni::Object BackgroundLayer::getBackgroundColor(jni::JNIEnv& env) { using namespace mbgl::android::conversion; Result converted = convert(env, layer.as()->BackgroundLayer::getBackgroundColor()); return jni::Object(*converted); } jni::Object BackgroundLayer::getBackgroundColorTransition(jni::JNIEnv& env) { using namespace mbgl::android::conversion; mbgl::style::TransitionOptions options = layer.as()->BackgroundLayer::getBackgroundColorTransition(); return *convert>(env, options); } void BackgroundLayer::setBackgroundColorTransition(jni::JNIEnv&, jlong duration, jlong delay) { mbgl::style::TransitionOptions options; options.duration.emplace(mbgl::Milliseconds(duration)); options.delay.emplace(mbgl::Milliseconds(delay)); layer.as()->BackgroundLayer::setBackgroundColorTransition(options); } jni::Object BackgroundLayer::getBackgroundPattern(jni::JNIEnv& env) { using namespace mbgl::android::conversion; Result converted = convert(env, layer.as()->BackgroundLayer::getBackgroundPattern()); return jni::Object(*converted); } jni::Object BackgroundLayer::getBackgroundPatternTransition(jni::JNIEnv& env) { using namespace mbgl::android::conversion; mbgl::style::TransitionOptions options = layer.as()->BackgroundLayer::getBackgroundPatternTransition(); return *convert>(env, options); } void BackgroundLayer::setBackgroundPatternTransition(jni::JNIEnv&, jlong duration, jlong delay) { mbgl::style::TransitionOptions options; options.duration.emplace(mbgl::Milliseconds(duration)); options.delay.emplace(mbgl::Milliseconds(delay)); layer.as()->BackgroundLayer::setBackgroundPatternTransition(options); } jni::Object BackgroundLayer::getBackgroundOpacity(jni::JNIEnv& env) { using namespace mbgl::android::conversion; Result converted = convert(env, layer.as()->BackgroundLayer::getBackgroundOpacity()); return jni::Object(*converted); } jni::Object BackgroundLayer::getBackgroundOpacityTransition(jni::JNIEnv& env) { using namespace mbgl::android::conversion; mbgl::style::TransitionOptions options = layer.as()->BackgroundLayer::getBackgroundOpacityTransition(); return *convert>(env, options); } void BackgroundLayer::setBackgroundOpacityTransition(jni::JNIEnv&, jlong duration, jlong delay) { mbgl::style::TransitionOptions options; options.duration.emplace(mbgl::Milliseconds(duration)); options.delay.emplace(mbgl::Milliseconds(delay)); layer.as()->BackgroundLayer::setBackgroundOpacityTransition(options); } jni::Class BackgroundLayer::javaClass; jni::jobject* BackgroundLayer::createJavaPeer(jni::JNIEnv& env) { static auto constructor = BackgroundLayer::javaClass.template GetConstructor(env); return BackgroundLayer::javaClass.New(env, constructor, reinterpret_cast(this)); } void BackgroundLayer::registerNative(jni::JNIEnv& env) { // Lookup the class BackgroundLayer::javaClass = *jni::Class::Find(env).NewGlobalRef(env).release(); #define METHOD(MethodPtr, name) jni::MakeNativePeerMethod(name) // Register the peer jni::RegisterNativePeer( env, BackgroundLayer::javaClass, "nativePtr", std::make_unique, "initialize", "finalize", METHOD(&BackgroundLayer::getBackgroundColorTransition, "nativeGetBackgroundColorTransition"), METHOD(&BackgroundLayer::setBackgroundColorTransition, "nativeSetBackgroundColorTransition"), METHOD(&BackgroundLayer::getBackgroundColor, "nativeGetBackgroundColor"), METHOD(&BackgroundLayer::getBackgroundPatternTransition, "nativeGetBackgroundPatternTransition"), METHOD(&BackgroundLayer::setBackgroundPatternTransition, "nativeSetBackgroundPatternTransition"), METHOD(&BackgroundLayer::getBackgroundPattern, "nativeGetBackgroundPattern"), METHOD(&BackgroundLayer::getBackgroundOpacityTransition, "nativeGetBackgroundOpacityTransition"), METHOD(&BackgroundLayer::setBackgroundOpacityTransition, "nativeSetBackgroundOpacityTransition"), METHOD(&BackgroundLayer::getBackgroundOpacity, "nativeGetBackgroundOpacity")); } } // namespace android } // namespace mbgl