DS-3787 Missing "No SDK" panel for Python and Jupyter files

Decouple quickfixes from PyEditorNotificationProvider

GitOrigin-RevId: 451cbab341b4da1d657685b65b86a1e3eb68ff9d
This commit is contained in:
Andrey Vokin
2022-08-16 17:31:51 +02:00
committed by intellij-monorepo-bot
parent 0bef9bdf84
commit 6921dc6971
15 changed files with 313 additions and 235 deletions

View File

@@ -15,7 +15,7 @@ import com.intellij.util.ui.FormBuilder
import com.jetbrains.python.PyBundle
import com.jetbrains.python.PySdkBundle
import com.jetbrains.python.configuration.PyConfigurableInterpreterList
import com.jetbrains.python.sdk.PyEditorNotificationProvider
import com.jetbrains.python.inspections.quickfix.sdk.InterpreterSettingsQuickFix
import com.jetbrains.python.newProject.steps.ProjectSpecificSettingsStep
import com.jetbrains.python.sdk.*
import com.jetbrains.python.sdk.add.PySdkPathChoosingComboBox
@@ -152,7 +152,7 @@ abstract class PythonBasedLangSupport : AbstractLangSupport() {
}
val configureCallbackId = LearningUiManager.addCallback {
val module = project.modules.singleOrNull() ?: return@addCallback
PyEditorNotificationProvider.InterpreterSettingsQuickFix.showPythonInterpreterSettings(project, module)
InterpreterSettingsQuickFix.showPythonInterpreterSettings(project, module)
}
if (useUserProjects || isLearningProject(project, this@PythonBasedLangSupport)) {
showWarning(PythonLessonsBundle.message("no.interpreter.in.learning.project", configureCallbackId),

View File

@@ -7,7 +7,7 @@ import com.intellij.openapi.util.NlsSafe
import com.intellij.openapi.util.UserDataHolderBase
import com.intellij.ui.dsl.builder.Panel
import com.jetbrains.python.configuration.PyConfigurableInterpreterList
import com.jetbrains.python.sdk.PyEditorNotificationProvider
import com.jetbrains.python.inspections.quickfix.sdk.InterpreterSettingsQuickFix
import com.jetbrains.python.newProject.steps.ProjectSpecificSettingsStep
import com.jetbrains.python.sdk.findBaseSdks
import com.jetbrains.python.sdk.flavors.PythonSdkFlavor
@@ -33,7 +33,7 @@ object PythonLessonsUtil {
fun LessonContext.showWarningIfPython3NotFound() {
task {
val callbackId = LearningUiManager.addCallback {
PyEditorNotificationProvider.InterpreterSettingsQuickFix.showPythonInterpreterSettings(project, project.modules.first())
InterpreterSettingsQuickFix.showPythonInterpreterSettings(project, project.modules.first())
}
stateCheck { isPython3Installed(project) }
showWarning(PythonLessonsBundle.message("python.3.required.warning.message", callbackId)) {