mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
cleanup
This commit is contained in:
@@ -16,13 +16,13 @@
|
||||
package com.intellij.openapi.roots.ui.configuration;
|
||||
|
||||
import com.intellij.ide.DataManager;
|
||||
import com.intellij.ide.util.projectWizard.ProjectJdkListRenderer;
|
||||
import com.intellij.openapi.actionSystem.*;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.project.ProjectBundle;
|
||||
import com.intellij.openapi.projectRoots.Sdk;
|
||||
import com.intellij.openapi.projectRoots.SdkType;
|
||||
import com.intellij.openapi.projectRoots.SdkTypeId;
|
||||
import com.intellij.openapi.roots.ui.OrderEntryAppearanceService;
|
||||
import com.intellij.openapi.roots.ui.configuration.projectRoot.JdkListConfigurable;
|
||||
import com.intellij.openapi.roots.ui.configuration.projectRoot.ProjectSdksModel;
|
||||
import com.intellij.openapi.ui.ComboBoxWithWidePopup;
|
||||
@@ -32,6 +32,7 @@ import com.intellij.openapi.util.Condition;
|
||||
import com.intellij.openapi.util.Conditions;
|
||||
import com.intellij.openapi.util.SystemInfo;
|
||||
import com.intellij.openapi.util.text.StringUtil;
|
||||
import com.intellij.ui.ColoredListCellRenderer;
|
||||
import com.intellij.ui.ScreenUtil;
|
||||
import com.intellij.ui.SimpleTextAttributes;
|
||||
import com.intellij.util.containers.ContainerUtil;
|
||||
@@ -51,7 +52,7 @@ import java.util.Collection;
|
||||
* @author Eugene Zhuravlev
|
||||
* @since May 18, 2005
|
||||
*/
|
||||
public class JdkComboBox extends ComboBoxWithWidePopup {
|
||||
public class JdkComboBox extends ComboBoxWithWidePopup<JdkComboBox.JdkComboBoxItem> {
|
||||
|
||||
private static final Icon EMPTY_ICON = JBUI.scale(EmptyIcon.create(1, 16));
|
||||
|
||||
@@ -80,9 +81,14 @@ public class JdkComboBox extends ComboBoxWithWidePopup {
|
||||
myFilter = filter;
|
||||
mySdkTypeFilter = sdkTypeFilter;
|
||||
myCreationFilter = creationFilter;
|
||||
setRenderer(new ProjectJdkListRenderer() {
|
||||
setRenderer(new ColoredListCellRenderer<JdkComboBoxItem>() {
|
||||
@Override
|
||||
public void doCustomize(JList list, Object value, int index, boolean selected, boolean hasFocus) {
|
||||
protected void customizeCellRenderer(@NotNull JList<? extends JdkComboBoxItem> list,
|
||||
JdkComboBoxItem value,
|
||||
int index,
|
||||
boolean selected,
|
||||
boolean hasFocus) {
|
||||
|
||||
if (JdkComboBox.this.isEnabled()) {
|
||||
setIcon(EMPTY_ICON); // to fix vertical size
|
||||
if (value instanceof InvalidJdkComboBoxItem) {
|
||||
@@ -109,9 +115,11 @@ public class JdkComboBox extends ComboBoxWithWidePopup {
|
||||
append(version == null ? type.getPresentableName() : version);
|
||||
append(" (" + home + ")", SimpleTextAttributes.GRAYED_ATTRIBUTES);
|
||||
}
|
||||
else if (value != null) {
|
||||
OrderEntryAppearanceService.getInstance().forJdk(value.getJdk(), false, selected, true).customize(this);
|
||||
}
|
||||
else {
|
||||
super.doCustomize(list, value != null ? ((JdkComboBoxItem)value).getJdk()
|
||||
: new NoneJdkComboBoxItem(), index, selected, hasFocus);
|
||||
customizeCellRenderer(list, new NoneJdkComboBoxItem(), index, selected, hasFocus);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user