From 24d53d5d08685ecb64dd282a2810a7fddad0de87 Mon Sep 17 00:00:00 2001 From: Ilya Kirillov Date: Fri, 20 Mar 2020 13:48:27 +0300 Subject: [PATCH] Wizard: remove unused project tags --- .../ProjectTemplateSettingComponent.kt | 2 +- .../tools/projectWizard/wizard/ui/ui.kt | 10 ------- .../new-project-wizard/src/TemplateTag.kt | 28 ------------------ .../projectTemplates/ProjectTemplate.kt | 29 ++----------------- 4 files changed, 4 insertions(+), 65 deletions(-) delete mode 100644 libraries/tools/new-project-wizard/src/TemplateTag.kt diff --git a/idea/idea-new-project-wizard/src/org/jetbrains/kotlin/tools/projectWizard/wizard/ui/firstStep/ProjectTemplateSettingComponent.kt b/idea/idea-new-project-wizard/src/org/jetbrains/kotlin/tools/projectWizard/wizard/ui/firstStep/ProjectTemplateSettingComponent.kt index a007ffd41da..7a463449fb0 100644 --- a/idea/idea-new-project-wizard/src/org/jetbrains/kotlin/tools/projectWizard/wizard/ui/firstStep/ProjectTemplateSettingComponent.kt +++ b/idea/idea-new-project-wizard/src/org/jetbrains/kotlin/tools/projectWizard/wizard/ui/firstStep/ProjectTemplateSettingComponent.kt @@ -67,7 +67,7 @@ class TemplateDescriptionComponent : Component() { } fun setTemplate(template: ProjectTemplate) { - descriptionLabel.text = template.htmlDescription + descriptionLabel.text = template.description } override val component: JComponent = descriptionLabel diff --git a/idea/idea-new-project-wizard/src/org/jetbrains/kotlin/tools/projectWizard/wizard/ui/ui.kt b/idea/idea-new-project-wizard/src/org/jetbrains/kotlin/tools/projectWizard/wizard/ui/ui.kt index baec689cfb4..5485fdd7bb2 100644 --- a/idea/idea-new-project-wizard/src/org/jetbrains/kotlin/tools/projectWizard/wizard/ui/ui.kt +++ b/idea/idea-new-project-wizard/src/org/jetbrains/kotlin/tools/projectWizard/wizard/ui/ui.kt @@ -1,6 +1,5 @@ package org.jetbrains.kotlin.tools.projectWizard.wizard.ui -import TemplateTag import com.intellij.icons.AllIcons import com.intellij.ide.plugins.newui.TagComponent import com.intellij.openapi.actionSystem.ActionManager @@ -181,15 +180,6 @@ fun C.addBorder(border: Border): C = apply { this.border = BorderFactory.createCompoundBorder(border, this.border) } -class TemplateTagUIComponent(tag: TemplateTag) : TagComponent(tag.text) { - override fun isInClickableArea(pt: Point?) = false - - init { - RelativeFont.TINY.install(this) - tag.tooltip?.let { toolTipText = it } - } -} - fun runWithProgressBar(title: String, action: () -> T): T = ProgressManager.getInstance().runProcessWithProgressSynchronously( ThrowableComputable { action() }, diff --git a/libraries/tools/new-project-wizard/src/TemplateTag.kt b/libraries/tools/new-project-wizard/src/TemplateTag.kt deleted file mode 100644 index f8f46e630f1..00000000000 --- a/libraries/tools/new-project-wizard/src/TemplateTag.kt +++ /dev/null @@ -1,28 +0,0 @@ -/* - * Copyright 2010-2020 JetBrains s.r.o. and Kotlin Programming Language contributors. - * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. - */ - - -class TemplateTag private constructor( - val text: String, - val tooltip: String?, - val priority: Int -) { - companion object { - private val allTags = mutableListOf() - private fun tag(text: String, tooltip: String? = null): TemplateTag = - TemplateTag(text, tooltip, priority = allTags.size).also { - allTags += it - } - - val ALL: List - get() = allTags - - val MPP = tag("Multiplatform") - val JVM = tag("JVM") - val JS = tag("JS") - val NATIVE = tag("Native") - val ANDROID = tag("Android") - } -} diff --git a/libraries/tools/new-project-wizard/src/org/jetbrains/kotlin/tools/projectWizard/projectTemplates/ProjectTemplate.kt b/libraries/tools/new-project-wizard/src/org/jetbrains/kotlin/tools/projectWizard/projectTemplates/ProjectTemplate.kt index 6c72888eb97..1b57115d3a6 100644 --- a/libraries/tools/new-project-wizard/src/org/jetbrains/kotlin/tools/projectWizard/projectTemplates/ProjectTemplate.kt +++ b/libraries/tools/new-project-wizard/src/org/jetbrains/kotlin/tools/projectWizard/projectTemplates/ProjectTemplate.kt @@ -1,6 +1,5 @@ package org.jetbrains.kotlin.tools.projectWizard.projectTemplates -import TemplateTag import org.intellij.lang.annotations.Language import org.jetbrains.kotlin.tools.projectWizard.core.buildList import org.jetbrains.kotlin.tools.projectWizard.core.entity.settings.* @@ -14,21 +13,6 @@ import org.jetbrains.kotlin.tools.projectWizard.settings.DisplayableSettingItem import org.jetbrains.kotlin.tools.projectWizard.settings.buildsystem.* import org.jetbrains.kotlin.tools.projectWizard.templates.* -private fun Module.createTag(): TemplateTag? = when (configurator) { - is MppModuleConfigurator -> TemplateTag.MPP - is AndroidModuleConfigurator -> TemplateTag.ANDROID - is JSConfigurator -> TemplateTag.JS - is ModuleConfiguratorWithModuleType -> when (configurator.moduleType) { - ModuleType.jvm -> TemplateTag.JVM - ModuleType.js -> TemplateTag.JS - ModuleType.native -> TemplateTag.NATIVE - ModuleType.android -> TemplateTag.ANDROID - ModuleType.common -> null - null -> null - } - else -> null -} - sealed class ProjectTemplate : DisplayableSettingItem { abstract val title: String override val text: String get() = title @@ -37,16 +21,6 @@ sealed class ProjectTemplate : DisplayableSettingItem { abstract val projectKind: ProjectKind open val id: String get() = this::class.simpleName.toString().removeSuffix("Template").removeSuffix("Project") - val tags: List - get() = setsPluginSettings - .firstOrNull { it.setting == KotlinPlugin::modules.reference } - ?.value - ?.safeAs>() - ?.withAllSubModules(includeSourcesets = true) - ?.mapNotNull(Module::createTag) - ?.distinct() - ?.sortedBy(TemplateTag::priority) - .orEmpty() private val setsDefaultValues: List> get() = listOf(KotlinPlugin::projectKind.reference withValue projectKind) @@ -177,6 +151,7 @@ object JvmConsoleApplication : ProjectTemplate() { object MultiplatformLibrary : ProjectTemplate() { override val title = "Kotlin Multiplatform Library" + @Language("HTML") override val htmlDescription = """ Multiplatform Gradle project allowing reuse of the same Kotlin code between all three main platforms @@ -228,6 +203,7 @@ object JvmServerJsClient : ProjectTemplate() { object AndroidApplication : ProjectTemplate() { override val title = "Android Application" + @Language("HTML") override val htmlDescription = """ Simple Android application with single activity @@ -299,6 +275,7 @@ object JsBrowserApplication : ProjectTemplate() { object IOSApplication : ProjectTemplate() { override val title = "IOS Application" + @Language("HTML") override val htmlDescription = """ Simple IOS application with single screen