diff options
Diffstat (limited to 'platform/lang-impl/src/com/intellij/profile/codeInspection/ui/inspectionsTree/InspectionsConfigTreeRenderer.java')
-rw-r--r-- | platform/lang-impl/src/com/intellij/profile/codeInspection/ui/inspectionsTree/InspectionsConfigTreeRenderer.java | 32 |
1 files changed, 17 insertions, 15 deletions
diff --git a/platform/lang-impl/src/com/intellij/profile/codeInspection/ui/inspectionsTree/InspectionsConfigTreeRenderer.java b/platform/lang-impl/src/com/intellij/profile/codeInspection/ui/inspectionsTree/InspectionsConfigTreeRenderer.java index 43b791cbe6a2..280f436b7bc5 100644 --- a/platform/lang-impl/src/com/intellij/profile/codeInspection/ui/inspectionsTree/InspectionsConfigTreeRenderer.java +++ b/platform/lang-impl/src/com/intellij/profile/codeInspection/ui/inspectionsTree/InspectionsConfigTreeRenderer.java @@ -27,35 +27,36 @@ import com.intellij.codeInspection.ex.InspectionToolWrapper; import com.intellij.codeInspection.ex.LocalInspectionToolWrapper; import com.intellij.ide.ui.search.SearchUtil; import com.intellij.profile.codeInspection.ui.ToolDescriptors; -import com.intellij.ui.ColoredTreeCellRenderer; +import com.intellij.ui.SimpleColoredComponent; import com.intellij.ui.SimpleTextAttributes; import com.intellij.util.ui.PlatformColors; import com.intellij.util.ui.UIUtil; +import org.jdesktop.swingx.renderer.DefaultTreeRenderer; import org.jetbrains.annotations.NonNls; -import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import javax.swing.*; import java.awt.*; -public abstract class InspectionsConfigTreeRenderer extends ColoredTreeCellRenderer { +public abstract class InspectionsConfigTreeRenderer extends DefaultTreeRenderer { protected abstract String getFilter(); @Override - public void customizeCellRenderer(@NotNull final JTree tree, - final Object value, - final boolean selected, - final boolean expanded, - final boolean leaf, - final int row, - final boolean hasFocus) { - if (!(value instanceof InspectionConfigTreeNode)) return; + public Component getTreeCellRendererComponent(JTree tree, + Object value, + boolean selected, + boolean expanded, + boolean leaf, + int row, + boolean hasFocus) { + final SimpleColoredComponent component = new SimpleColoredComponent(); + if (!(value instanceof InspectionConfigTreeNode)) return component; InspectionConfigTreeNode node = (InspectionConfigTreeNode)value; Object object = node.getUserObject(); final Color background = selected ? UIUtil.getTreeSelectionBackground() : UIUtil.getTreeTextBackground(); - UIUtil.changeBackGround(this, background); + UIUtil.changeBackGround(component, background); Color foreground = selected ? UIUtil.getTreeSelectionForeground() : node.isProperSetting() ? PlatformColors.BLUE : UIUtil.getTreeTextForeground(); @@ -75,12 +76,13 @@ public abstract class InspectionsConfigTreeRenderer extends ColoredTreeCellRende } if (text != null) { - SearchUtil.appendFragments(getFilter(), text, style, foreground, background, this); + SearchUtil.appendFragments(getFilter(), text, style, foreground, background, component); } if (hint != null) { - append(" " + hint, selected ? new SimpleTextAttributes(Font.PLAIN, foreground) : SimpleTextAttributes.GRAYED_ATTRIBUTES); + component.append(" " + hint, selected ? new SimpleTextAttributes(Font.PLAIN, foreground) : SimpleTextAttributes.GRAYED_ATTRIBUTES); } - setForeground(foreground); + component.setForeground(foreground); + return component; } @Nullable |