Skip to content

Commit 1af2851

Browse files
committed
build
1 parent 29a3e0d commit 1af2851

File tree

4 files changed

+55
-34
lines changed

4 files changed

+55
-34
lines changed

plugins/toolkit/jetbrains-core/build.gradle.kts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,8 @@ intellijToolkit {
3434
dependencies {
3535
intellijPlatform {
3636
localPlugin(project(":plugin-core"))
37+
bundledModule("intellij.platform.vcs.dvcs.impl")
38+
bundledModule("intellij.libraries.microba")
3739
}
3840
}
3941

plugins/toolkit/jetbrains-core/src/software/aws/toolkits/jetbrains/services/lambda/python/PyCharmSdkSelectionPanel.kt

Lines changed: 50 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -3,54 +3,74 @@
33

44
package software.aws.toolkits.jetbrains.services.lambda.python
55

6+
import com.intellij.ide.util.projectWizard.WizardContext
7+
import com.intellij.ide.wizard.NewProjectWizardStep
8+
import com.intellij.openapi.observable.properties.PropertyGraph
69
import com.intellij.openapi.projectRoots.Sdk
7-
import com.intellij.openapi.projectRoots.impl.SdkConfigurationUtil
810
import com.intellij.openapi.ui.TextFieldWithBrowseButton
911
import com.intellij.openapi.ui.ValidationInfo
10-
import com.intellij.ui.DocumentAdapter
12+
import com.intellij.openapi.util.UserDataHolder
13+
import com.intellij.ui.dsl.builder.panel
1114
import com.jetbrains.python.configuration.PyConfigurableInterpreterList
12-
import com.jetbrains.python.newProject.steps.PyAddExistingSdkPanel
13-
import com.jetbrains.python.newProject.steps.PyAddNewEnvironmentPanel
15+
import com.jetbrains.python.newProject.NewPythonProjectStep
1416
import com.jetbrains.python.sdk.PreferredSdkComparator
15-
import com.jetbrains.python.sdk.PySdkSettings
1617
import com.jetbrains.python.sdk.PythonSdkType
1718
import com.jetbrains.python.sdk.PythonSdkUtil
18-
import com.jetbrains.python.sdk.add.PyAddSdkGroupPanel
1919
import software.aws.toolkits.jetbrains.services.lambda.wizard.SdkSelector
2020
import javax.swing.JComponent
2121
import javax.swing.JLabel
22-
import javax.swing.event.DocumentEvent
2322

2423
class PyCharmSdkSelectionPanel(private val projectLocation: TextFieldWithBrowseButton?) : SdkSelector {
25-
private val sdkPanel by lazy {
26-
sdkPanel()
27-
}
24+
// private val sdkPanel by lazy {
25+
// sdkPanel()
26+
// }
2827

29-
override fun sdkSelectionPanel(): JComponent = sdkPanel
3028

31-
override fun sdkSelectionLabel(): JLabel? = null
29+
private val sdkStep by lazy {
30+
NewPythonProjectStep(object : NewProjectWizardStep {
31+
override val context: WizardContext
32+
get() = TODO("Not yet implemented")
33+
override val propertyGraph: PropertyGraph
34+
get() = TODO("Not yet implemented")
35+
override val keywords: NewProjectWizardStep.Keywords
36+
get() = TODO("Not yet implemented")
37+
override val data: UserDataHolder
38+
get() = TODO("Not yet implemented")
3239

33-
private fun sdkPanel(): PyAddSdkGroupPanel {
34-
// Based on PyCharm's ProjectSpecificSettingsStep
35-
val existingSdks = getValidPythonSdks()
36-
val newProjectLocation = getProjectLocation()
37-
val newEnvironmentPanel = PyAddNewEnvironmentPanel(existingSdks, newProjectLocation, null)
38-
val existingSdkPanel = PyAddExistingSdkPanel(null, null, existingSdks, newProjectLocation, existingSdks.firstOrNull())
40+
})
41+
}
3942

40-
val defaultPanel = if (PySdkSettings.instance.useNewEnvironmentForNewProject) newEnvironmentPanel else existingSdkPanel
43+
private val sdkPanel by lazy {
44+
panel {
45+
sdkStep.setupUI(this)
46+
}
47+
}
4148

42-
val interpreterPanel = createPythonSdkPanel(listOf(newEnvironmentPanel, existingSdkPanel), defaultPanel)
49+
override fun sdkSelectionPanel(): JComponent = sdkPanel
4350

44-
projectLocation?.textField?.document?.addDocumentListener(
45-
object : DocumentAdapter() {
46-
override fun textChanged(e: DocumentEvent) {
47-
interpreterPanel.newProjectPath = getProjectLocation()
48-
}
49-
}
50-
)
51+
override fun sdkSelectionLabel(): JLabel? = null
5152

52-
return interpreterPanel
53-
}
53+
// private fun sdkPanel(): PyAddSdkGroupPanel {
54+
// // Based on PyCharm's ProjectSpecificSettingsStep
55+
// val existingSdks = getValidPythonSdks()
56+
// val newProjectLocation = getProjectLocation()
57+
// val newEnvironmentPanel = PyAddNewEnvironmentPanel(existingSdks, newProjectLocation, null as String?)
58+
// val existingSdkPanel = PyAddExistingSdkPanel(null, null, existingSdks, newProjectLocation, existingSdks.firstOrNull())
59+
//
60+
// val defaultPanel = if (PySdkSettings.instance.useNewEnvironmentForNewProject) newEnvironmentPanel else existingSdkPanel
61+
// PyAddSdkGroupPanel()
62+
// val interpreterPanel = createPythonSdkPanel(listOf(newEnvironmentPanel, existingSdkPanel), defaultPanel)
63+
//
64+
// projectLocation?.textField?.document?.addDocumentListener(
65+
// object : DocumentAdapter() {
66+
// override fun textChanged(e: DocumentEvent) {
67+
// interpreterPanel.newProjectPath = getProjectLocation()
68+
// }
69+
// }
70+
// )
71+
//
72+
// return interpreterPanel
73+
// }
5474

5575
private fun getProjectLocation(): String? = projectLocation?.text?.trim()
5676

@@ -61,11 +81,7 @@ class PyCharmSdkSelectionPanel(private val projectLocation: TextFieldWithBrowseB
6181
.toList()
6282

6383
override fun getSdk(): Sdk? {
64-
val sdk = sdkPanel.getOrCreateSdk() ?: return null
65-
if (sdkPanel.selectedPanel is PyAddNewEnvironmentPanel) {
66-
SdkConfigurationUtil.addSdk(sdk)
67-
}
68-
return sdk
84+
return sdkStep.pythonSdk
6985
}
7086

7187
override fun validateSelection(): ValidationInfo? = sdkPanel.validateAll().firstOrNull()

plugins/toolkit/jetbrains-rider/.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
/NuGet.Config
22
/testData/NuGet.Config
3+
ReSharper.AWS.sln.DotSettings.user
34

45
# Generated files
56
*Generated.kt

plugins/toolkit/jetbrains-rider/build.gradle.kts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,8 @@ dependencies {
5252
intellijPlatform {
5353
localPlugin(project(":plugin-core"))
5454
testFramework(TestFrameworkType.Bundled)
55+
56+
bundledModule("intellij.rider")
5557
}
5658

5759
implementation(project(":plugin-toolkit:jetbrains-core"))

0 commit comments

Comments
 (0)