From 3027ad74a5a201c76ec8e8721b116522d4ba3d5b Mon Sep 17 00:00:00 2001 From: Roman Shevchenko Date: Wed, 17 Nov 2010 14:02:21 +0300 Subject: [PATCH] Fix test module chooser combo for GTK+ L&F --- .../ui/ConfigurationModuleSelector.java | 15 ++++++++------- .../configuration/JUnitConfigurable.java | 19 +++++++++++-------- 2 files changed, 19 insertions(+), 15 deletions(-) diff --git a/java/execution/impl/src/com/intellij/execution/ui/ConfigurationModuleSelector.java b/java/execution/impl/src/com/intellij/execution/ui/ConfigurationModuleSelector.java index 3ebb7c2af88f..f488a89cc32b 100644 --- a/java/execution/impl/src/com/intellij/execution/ui/ConfigurationModuleSelector.java +++ b/java/execution/impl/src/com/intellij/execution/ui/ConfigurationModuleSelector.java @@ -17,6 +17,7 @@ package com.intellij.execution.ui; import com.intellij.execution.configurations.JavaRunConfigurationModule; import com.intellij.execution.configurations.ModuleBasedConfiguration; +import com.intellij.ide.ui.ListCellRendererWrapper; import com.intellij.openapi.module.Module; import com.intellij.openapi.module.ModuleManager; import com.intellij.openapi.module.ModuleTypeManager; @@ -27,13 +28,14 @@ import com.intellij.ui.SortedComboBoxModel; import org.jetbrains.annotations.Nullable; import javax.swing.*; -import java.awt.*; import java.util.ArrayList; import java.util.Collection; import java.util.Comparator; import java.util.List; public class ConfigurationModuleSelector { + private static final String NO_MODULE = ""; + private final Project myProject; private final JComboBox myModulesList; private final SortedComboBoxModel myModules = new SortedComboBoxModel(new Comparator() { @@ -44,7 +46,6 @@ public class ConfigurationModuleSelector { return -1; } }); - private static final String NO_MODULE = ""; public ConfigurationModuleSelector(final Project project, final JComboBox modulesList) { myProject = project; @@ -60,17 +61,17 @@ public class ConfigurationModuleSelector { } }; myModulesList.setModel(myModules); - myModulesList.setRenderer(new DefaultListCellRenderer(){ - public Component getListCellRendererComponent(final JList list, final Object value, final int index, final boolean isSelected, final boolean cellHasFocus) { - final Component component = super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus); + myModulesList.setRenderer(new ListCellRendererWrapper(myModulesList.getRenderer()) { + @Override + public void customize(final JList list, final Object value, final int index, final boolean selected, final boolean hasFocus) { if (value instanceof Module) { final Module module = (Module)value; setIcon(module.getModuleType().getNodeIcon(true)); setText(module.getName()); - } else if (value == null) { + } + else if (value == null) { setText(NO_MODULE); } - return component; } }); } diff --git a/plugins/junit/src/com/intellij/execution/junit2/configuration/JUnitConfigurable.java b/plugins/junit/src/com/intellij/execution/junit2/configuration/JUnitConfigurable.java index 98b5480f8632..f00d5ac347af 100644 --- a/plugins/junit/src/com/intellij/execution/junit2/configuration/JUnitConfigurable.java +++ b/plugins/junit/src/com/intellij/execution/junit2/configuration/JUnitConfigurable.java @@ -51,10 +51,17 @@ import javax.swing.text.Document; import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; -import java.util.ArrayList; +import java.util.List; import java.util.Arrays; public class JUnitConfigurable extends SettingsEditor { + private static final List ourEnabledFields = Arrays.asList( + new TIntArrayList(new int[]{0}), + new TIntArrayList(new int[]{1}), + new TIntArrayList(new int[]{1, 2}), + new TIntArrayList(new int[]{3}) + ); + // Garbage private JRadioButton myAllInPackageButton; private JRadioButton myClassButton; @@ -75,12 +82,6 @@ public class JUnitConfigurable extends SettingsEditor { private JRadioButton myModuleWDScope; private TextFieldWithBrowseButton myPatternTextField; - private static final ArrayList ourEnabledFields = new ArrayList(Arrays.asList(new TIntArrayList[]{ - new TIntArrayList(new int[]{0}), - new TIntArrayList(new int[]{1}), - new TIntArrayList(new int[]{1, 2}), - new TIntArrayList(new int[]{3}) - })); private final ConfigurationModuleSelector myModuleSelector; private final JRadioButton[] myRadioButtons = new JRadioButton[4]; private final LabeledComponent[] myTestLocations = new LabeledComponent[4]; @@ -217,8 +218,10 @@ public class JUnitConfigurable extends SettingsEditor { } } + public JComboBox getModulesComponent() { + return myModule.getComponent(); + } - public JComboBox getModulesComponent() { return myModule.getComponent(); } public ConfigurationModuleSelector getModuleSelector() { return myModuleSelector; }