diff --git a/python/pluginSrc/com/jetbrains/python/facet/PythonSdkComboBox.java b/python/pluginSrc/com/jetbrains/python/facet/PythonSdkComboBox.java index d15dc5fe8000..fdc618439981 100644 --- a/python/pluginSrc/com/jetbrains/python/facet/PythonSdkComboBox.java +++ b/python/pluginSrc/com/jetbrains/python/facet/PythonSdkComboBox.java @@ -4,9 +4,9 @@ import com.intellij.openapi.project.Project; import com.intellij.openapi.project.ProjectManager; import com.intellij.openapi.projectRoots.ProjectJdkTable; import com.intellij.openapi.projectRoots.Sdk; -import com.intellij.openapi.projectRoots.impl.SdkListCellRenderer; import com.intellij.openapi.projectRoots.ui.ProjectJdksEditor; import com.intellij.ui.ComboboxWithBrowseButton; +import com.jetbrains.python.sdk.PySdkListCellRenderer; import com.jetbrains.python.sdk.PythonSdkType; import javax.swing.*; @@ -21,7 +21,7 @@ public class PythonSdkComboBox extends ComboboxWithBrowseButton { private Project myProject; public PythonSdkComboBox() { - getComboBox().setRenderer(new SdkListCellRenderer("")); + getComboBox().setRenderer(new PySdkListCellRenderer("", null)); addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { Sdk selectedSdk = getSelectedSdk(); diff --git a/python/pluginSrc/com/jetbrains/python/packaging/PyManagePackagesDialog.java b/python/pluginSrc/com/jetbrains/python/packaging/PyManagePackagesDialog.java index 6261a4a6bab7..b77d612da2d0 100644 --- a/python/pluginSrc/com/jetbrains/python/packaging/PyManagePackagesDialog.java +++ b/python/pluginSrc/com/jetbrains/python/packaging/PyManagePackagesDialog.java @@ -32,7 +32,7 @@ public class PyManagePackagesDialog extends DialogWrapper { List sdks = PythonSdkType.getAllSdks(); Collections.sort(sdks, new PreferredSdkComparator()); final JComboBox sdkComboBox = new JComboBox(new CollectionComboBoxModel(sdks, sdk)); - sdkComboBox.setRenderer(new PySdkListCellRenderer(null)); + sdkComboBox.setRenderer(new PySdkListCellRenderer()); PyPackagesNotificationPanel notificationPanel = new PyPackagesNotificationPanel(project); final PyPackagesPanel packagesPanel = new PyPackagesPanel(project, notificationPanel); diff --git a/python/src/com/jetbrains/python/sdk/CreateVirtualEnvDialog.java b/python/src/com/jetbrains/python/sdk/CreateVirtualEnvDialog.java index 806c4c77ef61..0a8d49bfa478 100644 --- a/python/src/com/jetbrains/python/sdk/CreateVirtualEnvDialog.java +++ b/python/src/com/jetbrains/python/sdk/CreateVirtualEnvDialog.java @@ -222,7 +222,7 @@ public class CreateVirtualEnvDialog extends IdeaDialog { } private void updateSdkList(final List allSdks, @Nullable Sdk initialSelection) { - mySdkCombo.setRenderer(new PySdkListCellRenderer(null)); + mySdkCombo.setRenderer(new PySdkListCellRenderer()); List baseSdks = new ArrayList(); for (Sdk s : allSdks) { if (!PythonSdkType.isInvalid(s) && !PythonSdkType.isVirtualEnv(s) && !RemoteSdkDataHolder.isRemoteSdk(s.getHomePath())) { diff --git a/python/src/com/jetbrains/python/sdk/PySdkListCellRenderer.java b/python/src/com/jetbrains/python/sdk/PySdkListCellRenderer.java index 7cc01438a95d..6df4678529a7 100644 --- a/python/src/com/jetbrains/python/sdk/PySdkListCellRenderer.java +++ b/python/src/com/jetbrains/python/sdk/PySdkListCellRenderer.java @@ -13,9 +13,16 @@ import javax.swing.*; import java.util.Map; public class PySdkListCellRenderer extends ListCellRendererWrapper { + private final String myNullText; private final Map mySdkModifiers; - public PySdkListCellRenderer(@Nullable Map sdkModifiers) { + public PySdkListCellRenderer() { + myNullText = ""; + mySdkModifiers = null; + } + + public PySdkListCellRenderer(String nullText, @Nullable Map sdkModifiers) { + myNullText = nullText; mySdkModifiers = sdkModifiers; } @@ -46,6 +53,9 @@ public class PySdkListCellRenderer extends ListCellRendererWrapper { setIcon(icon); } } + else { + setText(myNullText); + } } private LayeredIcon wrapIconWithWarningDecorator(Icon icon) {