Use distinct icon for Kotlin/JS module and libraries
This commit is contained in:
@@ -52,4 +52,6 @@ public interface KotlinIcons {
|
||||
Icon FROM_IMPL = IconLoader.getIcon("/org/jetbrains/kotlin/idea/icons/fromImpl.png");
|
||||
|
||||
Icon LAUNCH = IconLoader.getIcon("/org/jetbrains/kotlin/idea/icons/kotlin_launch_configuration.png");
|
||||
|
||||
Icon JS = IconLoader.getIcon("/org/jetbrains/kotlin/idea/icons/kotlin_js.png");
|
||||
}
|
||||
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 313 B |
Binary file not shown.
|
After Width: | Height: | Size: 601 B |
+5
-4
@@ -31,9 +31,10 @@ import org.jetbrains.plugins.gradle.frameworkSupport.GradleFrameworkSupportProvi
|
||||
import javax.swing.Icon
|
||||
|
||||
abstract class GradleKotlinFrameworkSupportProvider(val frameworkTypeId: String,
|
||||
val displayName: String) : GradleFrameworkSupportProvider() {
|
||||
val displayName: String,
|
||||
val frameworkIcon: Icon) : GradleFrameworkSupportProvider() {
|
||||
override fun getFrameworkType(): FrameworkTypeEx = object : FrameworkTypeEx(frameworkTypeId) {
|
||||
override fun getIcon(): Icon = KotlinIcons.SMALL_LOGO
|
||||
override fun getIcon(): Icon = frameworkIcon
|
||||
|
||||
override fun getPresentableName(): String = displayName
|
||||
|
||||
@@ -74,7 +75,7 @@ abstract class GradleKotlinFrameworkSupportProvider(val frameworkTypeId: String,
|
||||
protected abstract fun getPluginDefinition(): String
|
||||
}
|
||||
|
||||
class GradleKotlinJavaFrameworkSupportProvider : GradleKotlinFrameworkSupportProvider("KOTLIN", "Kotlin (Java)") {
|
||||
class GradleKotlinJavaFrameworkSupportProvider : GradleKotlinFrameworkSupportProvider("KOTLIN", "Kotlin (Java)", KotlinIcons.SMALL_LOGO) {
|
||||
override fun getPluginDefinition() =
|
||||
KotlinWithGradleConfigurator.getGroovyApplyPluginDirective(KotlinGradleModuleConfigurator.KOTLIN)
|
||||
|
||||
@@ -91,7 +92,7 @@ class GradleKotlinJavaFrameworkSupportProvider : GradleKotlinFrameworkSupportPro
|
||||
}
|
||||
}
|
||||
|
||||
class GradleKotlinJSFrameworkSupportProvider : GradleKotlinFrameworkSupportProvider("KOTLIN_JS", "Kotlin (JavaScript)") {
|
||||
class GradleKotlinJSFrameworkSupportProvider : GradleKotlinFrameworkSupportProvider("KOTLIN_JS", "Kotlin (JavaScript)", KotlinIcons.JS) {
|
||||
override fun getPluginDefinition(): String =
|
||||
KotlinWithGradleConfigurator.getGroovyApplyPluginDirective(KotlinJsGradleModuleConfigurator.KOTLIN_JS)
|
||||
|
||||
|
||||
@@ -25,9 +25,9 @@ class JSFrameworkType : FrameworkTypeEx("kotlin-js-framework-id") {
|
||||
|
||||
override fun createProvider(): FrameworkSupportInModuleProvider = JSFrameworkSupportProvider()
|
||||
|
||||
override fun getPresentableName() = "Kotlin (JavaScript)"
|
||||
override fun getPresentableName() = "Kotlin/JS"
|
||||
|
||||
override fun getIcon(): Icon = KotlinIcons.SMALL_LOGO
|
||||
override fun getIcon(): Icon = KotlinIcons.JS
|
||||
|
||||
companion object {
|
||||
val instance: JSFrameworkType
|
||||
|
||||
@@ -48,7 +48,7 @@ class JSLibraryType : LibraryType<DummyLibraryProperties>(JSLibraryKind) {
|
||||
project)
|
||||
}
|
||||
|
||||
override fun getIcon(properties: DummyLibraryProperties?) = KotlinIcons.SMALL_LOGO
|
||||
override fun getIcon(properties: DummyLibraryProperties?) = KotlinIcons.JS
|
||||
|
||||
companion object {
|
||||
fun getInstance() = Extensions.findExtension(EP_NAME, JSLibraryType::class.java)
|
||||
|
||||
@@ -23,15 +23,17 @@ import com.intellij.ide.util.projectWizard.WizardContext
|
||||
import com.intellij.openapi.roots.ui.configuration.ModulesProvider
|
||||
import org.jetbrains.kotlin.idea.KotlinIcons
|
||||
import org.jetbrains.kotlin.resolve.TargetPlatform
|
||||
import javax.swing.Icon
|
||||
|
||||
class KotlinModuleBuilder(
|
||||
val targetPlatform: TargetPlatform, val builderName: String, val builderDescription: String) : JavaModuleBuilder() {
|
||||
val targetPlatform: TargetPlatform, val builderName: String, val builderDescription: String, val icon: Icon
|
||||
) : JavaModuleBuilder() {
|
||||
override fun getBuilderId() = "kotlin.module.builder"
|
||||
override fun getName() = builderName
|
||||
override fun getPresentableName() = builderName
|
||||
override fun getDescription() = builderDescription
|
||||
override fun getBigIcon() = KotlinIcons.KOTLIN_LOGO_24
|
||||
override fun getNodeIcon() = KotlinIcons.SMALL_LOGO
|
||||
override fun getNodeIcon() = icon
|
||||
override fun getGroupName() = KotlinTemplatesFactory.KOTLIN_GROUP_NAME
|
||||
override fun createWizardSteps(wizardContext: WizardContext, modulesProvider: ModulesProvider) = ModuleWizardStep.EMPTY_ARRAY
|
||||
|
||||
|
||||
@@ -33,7 +33,13 @@ class KotlinTemplatesFactory : ProjectTemplatesFactory() {
|
||||
|
||||
override fun createTemplates(group: String?, context: WizardContext?) =
|
||||
arrayOf(
|
||||
BuilderBasedTemplate(KotlinModuleBuilder(JvmPlatform, "Kotlin (JVM)", "Kotlin module for JVM target")),
|
||||
BuilderBasedTemplate(KotlinModuleBuilder(JsPlatform, "Kotlin (JavaScript)", "Kotlin module for JavaScript target"))
|
||||
BuilderBasedTemplate(KotlinModuleBuilder(JvmPlatform,
|
||||
"Kotlin/JVM",
|
||||
"Kotlin module for JVM target",
|
||||
KotlinIcons.SMALL_LOGO)),
|
||||
|
||||
BuilderBasedTemplate(KotlinModuleBuilder(JsPlatform, "Kotlin/JS",
|
||||
"Kotlin module for JavaScript target",
|
||||
KotlinIcons.JS))
|
||||
)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user