mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-02-04 23:39:07 +07:00
[java] IDEA-304242 New Project Wizard: NPE preventing opening of wizard
GitOrigin-RevId: 14be4cb1654776fc4c3e0f8df8a6619e6246ecd4
This commit is contained in:
committed by
intellij-monorepo-bot
parent
5eeada34ea
commit
af8067dec3
@@ -5,12 +5,10 @@ import com.intellij.CommonBundle
|
||||
import com.intellij.ide.JavaUiBundle
|
||||
import com.intellij.ide.starters.JavaStartersBundle
|
||||
import com.intellij.ide.util.PropertiesComponent
|
||||
import com.intellij.ide.util.projectWizard.ModuleBuilder
|
||||
import com.intellij.ide.util.projectWizard.ProjectWizardUtil
|
||||
import com.intellij.ide.util.projectWizard.WizardContext
|
||||
import com.intellij.openapi.Disposable
|
||||
import com.intellij.openapi.application.ApplicationManager
|
||||
import com.intellij.openapi.module.StdModuleTypes
|
||||
import com.intellij.openapi.observable.properties.GraphProperty
|
||||
import com.intellij.openapi.observable.properties.ObservableMutableProperty
|
||||
import com.intellij.openapi.observable.properties.ObservableProperty
|
||||
@@ -29,10 +27,13 @@ import com.intellij.openapi.util.Disposer
|
||||
import com.intellij.openapi.util.NlsContexts.DialogMessage
|
||||
import com.intellij.ui.dsl.builder.Cell
|
||||
import com.intellij.ui.dsl.builder.Row
|
||||
import com.intellij.ui.layout.*
|
||||
import com.intellij.ui.layout.ValidationInfoBuilder
|
||||
import org.jetbrains.annotations.ApiStatus
|
||||
import com.intellij.ui.layout.Row as RowV1
|
||||
|
||||
private val ANY_SDK_FILTER: ((Sdk) -> Boolean) = { true }
|
||||
private val ANY_SDK_TYPE_FILTER: ((SdkTypeId) -> Boolean) = { true }
|
||||
private val ANY_SUGGESTED_SDK_FILTER: ((SdkListItem.SuggestedItem) -> Boolean) = { true }
|
||||
private val NEW_SDK_CALLBACK_DEFAULT: ((Sdk) -> Unit) = {}
|
||||
|
||||
@Deprecated("Please, recompile code", level = DeprecationLevel.HIDDEN)
|
||||
@ApiStatus.ScheduledForRemoval
|
||||
@@ -40,11 +41,11 @@ fun Row.sdkComboBox(
|
||||
context: WizardContext,
|
||||
sdkProperty: GraphProperty<Sdk?>,
|
||||
sdkPropertyId: String,
|
||||
sdkTypeFilter: ((SdkTypeId) -> Boolean)? = null,
|
||||
sdkFilter: ((Sdk) -> Boolean)? = null,
|
||||
suggestedSdkItemFilter: ((SdkListItem.SuggestedItem) -> Boolean)? = null,
|
||||
creationSdkTypeFilter: ((SdkTypeId) -> Boolean)? = null,
|
||||
onNewSdkAdded: ((Sdk) -> Unit)? = null
|
||||
sdkTypeFilter: ((SdkTypeId) -> Boolean)? = ANY_SDK_TYPE_FILTER,
|
||||
sdkFilter: ((Sdk) -> Boolean)? = ANY_SDK_FILTER,
|
||||
suggestedSdkItemFilter: ((SdkListItem.SuggestedItem) -> Boolean)? = ANY_SUGGESTED_SDK_FILTER,
|
||||
creationSdkTypeFilter: ((SdkTypeId) -> Boolean)? = ANY_SDK_TYPE_FILTER,
|
||||
onNewSdkAdded: ((Sdk) -> Unit)? = NEW_SDK_CALLBACK_DEFAULT
|
||||
) = sdkComboBox(
|
||||
context, sdkProperty, sdkPropertyId,
|
||||
sdkTypeFilter, sdkFilter, suggestedSdkItemFilter, creationSdkTypeFilter, onNewSdkAdded
|
||||
@@ -54,11 +55,11 @@ fun Row.sdkComboBox(
|
||||
context: WizardContext,
|
||||
sdkProperty: ObservableMutableProperty<Sdk?>,
|
||||
sdkPropertyId: String,
|
||||
sdkTypeFilter: ((SdkTypeId) -> Boolean)? = null,
|
||||
sdkFilter: ((Sdk) -> Boolean)? = null,
|
||||
suggestedSdkItemFilter: ((SdkListItem.SuggestedItem) -> Boolean)? = null,
|
||||
creationSdkTypeFilter: ((SdkTypeId) -> Boolean)? = null,
|
||||
onNewSdkAdded: ((Sdk) -> Unit)? = null
|
||||
sdkTypeFilter: ((SdkTypeId) -> Boolean)? = ANY_SDK_TYPE_FILTER,
|
||||
sdkFilter: ((Sdk) -> Boolean)? = ANY_SDK_FILTER,
|
||||
suggestedSdkItemFilter: ((SdkListItem.SuggestedItem) -> Boolean)? = ANY_SUGGESTED_SDK_FILTER,
|
||||
creationSdkTypeFilter: ((SdkTypeId) -> Boolean)? = ANY_SDK_TYPE_FILTER,
|
||||
onNewSdkAdded: ((Sdk) -> Unit)? = NEW_SDK_CALLBACK_DEFAULT
|
||||
): Cell<JdkComboBox> {
|
||||
val sdksModel = ProjectSdksModel()
|
||||
|
||||
@@ -81,13 +82,12 @@ fun createSdkComboBox(
|
||||
sdkModel: ProjectSdksModel,
|
||||
sdkProperty: ObservableMutableProperty<Sdk?>,
|
||||
sdkPropertyId: String,
|
||||
sdkTypeFilter: ((SdkTypeId) -> Boolean)? = null,
|
||||
sdkFilter: ((Sdk) -> Boolean)? = null,
|
||||
suggestedSdkItemFilter: ((SdkListItem.SuggestedItem) -> Boolean)? = null,
|
||||
creationSdkTypeFilter: ((SdkTypeId) -> Boolean)? = null,
|
||||
onNewSdkAdded: ((Sdk) -> Unit)? = null
|
||||
sdkTypeFilter: ((SdkTypeId) -> Boolean)? = ANY_SDK_TYPE_FILTER,
|
||||
sdkFilter: ((Sdk) -> Boolean)? = ANY_SDK_FILTER,
|
||||
suggestedSdkItemFilter: ((SdkListItem.SuggestedItem) -> Boolean)? = ANY_SUGGESTED_SDK_FILTER,
|
||||
creationSdkTypeFilter: ((SdkTypeId) -> Boolean)? = ANY_SDK_TYPE_FILTER,
|
||||
onNewSdkAdded: ((Sdk) -> Unit)? = NEW_SDK_CALLBACK_DEFAULT
|
||||
): JdkComboBox {
|
||||
|
||||
sdkModel.reset(project)
|
||||
|
||||
val sdkComboBox = JdkComboBox(project, sdkModel, sdkTypeFilter, sdkFilter, suggestedSdkItemFilter, creationSdkTypeFilter, onNewSdkAdded)
|
||||
|
||||
Reference in New Issue
Block a user