diff --git a/idea/idea-gradle-native/src/org/jetbrains/kotlin/ide/konan/gradle/KotlinNativeGradleConfigurator.kt b/idea/idea-gradle-native/src/org/jetbrains/kotlin/ide/konan/gradle/KotlinNativeGradleConfigurator.kt new file mode 100644 index 00000000000..9cb2eae5666 --- /dev/null +++ b/idea/idea-gradle-native/src/org/jetbrains/kotlin/ide/konan/gradle/KotlinNativeGradleConfigurator.kt @@ -0,0 +1,40 @@ +/* + * Copyright 2010-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license + * that can be found in the license/LICENSE.txt file. + */ + +package org.jetbrains.kotlin.ide.konan.gradle + +import org.jetbrains.kotlin.ide.konan.hasKotlinNativeRuntimeInScope +import org.jetbrains.kotlin.idea.configuration.ConfigureKotlinStatus +import org.jetbrains.kotlin.idea.configuration.KotlinWithGradleConfigurator +import org.jetbrains.kotlin.idea.configuration.ModuleSourceRootGroup +import org.jetbrains.kotlin.resolve.konan.platform.KonanPlatform + + +open class KotlinNativeGradleConfigurator : KotlinWithGradleConfigurator() { + override fun getKotlinPluginExpression(forKotlinDsl: Boolean): String { + return "" + } + + override fun getStatus(moduleSourceRootGroup: ModuleSourceRootGroup): ConfigureKotlinStatus { + if (moduleSourceRootGroup.sourceRootModules.any(::hasKotlinNativeRuntimeInScope)) { + return ConfigureKotlinStatus.CONFIGURED + } + return ConfigureKotlinStatus.NON_APPLICABLE + } + + override val kotlinPluginName: String + get() = "" + + override val name: String get() = NAME + + override val targetPlatform get() = KonanPlatform + + override val presentableText get() = PRESENTABLE_TEXT + + companion object { + const val NAME = "KotlinNative" + const val PRESENTABLE_TEXT = "Native" + } +} \ No newline at end of file diff --git a/idea/src/META-INF/native.xml b/idea/src/META-INF/native.xml index 6062cdd42c7..60892a018ce 100644 --- a/idea/src/META-INF/native.xml +++ b/idea/src/META-INF/native.xml @@ -24,6 +24,6 @@ - +