Show no interpreter marker in the status bar (PY-33785)

This commit is contained in:
Semyon Proshev
2019-02-19 13:56:39 +03:00
parent 566fda2327
commit 42f169adce
3 changed files with 10 additions and 4 deletions
@@ -53,9 +53,13 @@ private class PySdkStatusBar(project: Project) : EditorBasedStatusBarPopup(proje
module = ModuleUtil.findModuleForFile(file, project!!) ?: return WidgetState.HIDDEN
val sdk = PythonSdkType.findPythonSdk(module) ?: return WidgetState.HIDDEN
return WidgetState("Current Interpreter: ${shortenNameAndPath(sdk)}]", shortenNameInBar(sdk), true)
val sdk = PythonSdkType.findPythonSdk(module)
return if (sdk == null) {
WidgetState("", noInterpreterMarker, true)
}
else {
WidgetState("Current Interpreter: ${shortenNameAndPath(sdk)}]", shortenNameInBar(sdk), true)
}
}
override fun registerCustomListeners() {
@@ -28,7 +28,7 @@ import javax.swing.JList
* @author vlan
*/
open class PySdkListCellRenderer @JvmOverloads constructor(private val sdkModifiers: Map<Sdk, SdkModificator>?,
private val nullSdkName: String = "<No interpreter>",
private val nullSdkName: String = noInterpreterMarker,
private val nullSdkValue: Sdk? = null) : ColoredListCellRenderer<Any>() {
override fun getListCellRendererComponent(list: JList<out Any>?, value: Any?, index: Int, selected: Boolean,
@@ -15,6 +15,8 @@ import com.jetbrains.python.sdk.pipenv.PIPENV_ICON
import com.jetbrains.python.sdk.pipenv.isPipEnv
import javax.swing.Icon
const val noInterpreterMarker: String = "<No interpreter>"
fun name(sdk: Sdk, sdkModificator: SdkModificator? = null): Triple<String?, String, String?> = name(sdk, sdkModificator?.name ?: sdk.name)
/**