diff options
Diffstat (limited to 'platform/platform-api/src/com/intellij/ui/GroupedElementsRenderer.java')
-rw-r--r-- | platform/platform-api/src/com/intellij/ui/GroupedElementsRenderer.java | 42 |
1 files changed, 9 insertions, 33 deletions
diff --git a/platform/platform-api/src/com/intellij/ui/GroupedElementsRenderer.java b/platform/platform-api/src/com/intellij/ui/GroupedElementsRenderer.java index 3ddbf47028f4..76bacb9cb452 100644 --- a/platform/platform-api/src/com/intellij/ui/GroupedElementsRenderer.java +++ b/platform/platform-api/src/com/intellij/ui/GroupedElementsRenderer.java @@ -15,9 +15,7 @@ */ package com.intellij.ui; -import com.intellij.openapi.util.registry.Registry; import com.intellij.ui.components.panels.OpaquePanel; -import com.intellij.util.ui.GraphicsUtil; import com.intellij.util.ui.UIUtil; import javax.swing.*; @@ -26,38 +24,14 @@ import javax.swing.border.EmptyBorder; import javax.swing.tree.TreeCellRenderer; import java.awt.*; -import static javax.swing.SwingConstants.CENTER; -import static javax.swing.SwingConstants.LEFT; - public abstract class GroupedElementsRenderer { public static final Color POPUP_SEPARATOR_FOREGROUND = new JBColor(Color.gray.brighter(), Gray._43); public static final Color POPUP_SEPARATOR_TEXT_FOREGROUND = Color.gray; public static final Color SELECTED_FRAME_FOREGROUND = Color.black; - protected SeparatorWithText mySeparatorComponent = new SeparatorWithText() { - @Override - protected void paintComponent(Graphics g) { - if (Registry.is("ide.new.project.settings")) { - g.setColor(POPUP_SEPARATOR_FOREGROUND); - Rectangle viewR = new Rectangle(0, getVgap(), getWidth() - 1, getHeight() - getVgap() - 1); - Rectangle iconR = new Rectangle(); - Rectangle textR = new Rectangle(); - String s = SwingUtilities - .layoutCompoundLabel(g.getFontMetrics(), getCaption(), null, CENTER, - LEFT, - CENTER, - LEFT, - viewR, iconR, textR, 0); - GraphicsUtil.setupAAPainting(g); - g.setColor(Gray._255.withAlpha(80)); - g.drawString(s, textR.x + 10, textR.y + 1 + g.getFontMetrics().getAscent()); - g.setColor(new Color(0x5F6D7B)); - g.drawString(s, textR.x + 10, textR.y + g.getFontMetrics().getAscent()); - } else { - super.paintComponent(g); - } - } - }; + protected SeparatorWithText mySeparatorComponent = createSeparator(); + + protected abstract JComponent createItemComponent(); protected JComponent myComponent; protected MyComponent myRendererComponent; @@ -75,7 +49,9 @@ public abstract class GroupedElementsRenderer { protected abstract void layout(); - protected abstract JComponent createItemComponent(); + protected SeparatorWithText createSeparator() { + return new SeparatorWithText(); + } protected final JComponent configureComponent(String text, String tooltip, Icon icon, Icon disabledIcon, boolean isSelected, boolean hasSeparatorAbove, String separatorTextAbove, int preferredForcedWidth) { mySeparatorComponent.setVisible(hasSeparatorAbove); @@ -127,9 +103,9 @@ public abstract class GroupedElementsRenderer { } - protected final void setDeselected(JComponent aComponent) { + protected final void setDeselected(JComponent aComponent) { aComponent.setBackground(getBackground()); - aComponent.setForeground(Registry.is("ide.new.project.settings") ? Gray._60 : getForeground()); + aComponent.setForeground(getForeground()); } protected abstract Color getSelectionBackground(); @@ -154,7 +130,7 @@ public abstract class GroupedElementsRenderer { public abstract static class List extends GroupedElementsRenderer { @Override - protected final void layout() { + protected void layout() { myRendererComponent.add(mySeparatorComponent, BorderLayout.NORTH); myRendererComponent.add(myComponent, BorderLayout.CENTER); } |