/** * Creates a new version of the specified icon that is rendered in the * colors of the specified color scheme. * * @param comp * Component. * @param original * The original icon. * @param colorScheme * Color scheme. * @return Scheme-based version of the original icon. */ public static BufferedImage getColorSchemeImage(Component comp, Icon original, SubstanceColorScheme colorScheme, float originalBrightnessFactor) { int w = original.getIconWidth(); int h = original.getIconHeight(); BufferedImage origImage = SubstanceCoreUtilities.getBlankImage(w, h); original.paintIcon(comp, origImage.getGraphics(), 0, 0); return getColorSchemeImage(origImage, colorScheme, originalBrightnessFactor); }
/** * Creates a new version of the specified icon that is rendered in the * colors of the specified color scheme. * * @param comp * Component. * @param original * The original icon. * @param colorScheme * Color scheme. * @return Scheme-based version of the original icon. */ public static BufferedImage getColorSchemeImage(Component comp, Icon original, SubstanceColorScheme colorScheme, float originalBrightnessFactor) { int w = original.getIconWidth(); int h = original.getIconHeight(); BufferedImage origImage = SubstanceCoreUtilities.getBlankImage(w, h); original.paintIcon(comp, origImage.getGraphics(), 0, 0); return getColorSchemeImage(origImage, colorScheme, originalBrightnessFactor); }
public static Icon getThemedIcon(JTabbedPane tab, int tabIndex, Icon orig) { SubstanceColorScheme colorScheme = SubstanceColorSchemeUtilities .getColorScheme(tab, tabIndex, ColorSchemeAssociationKind.TAB, ComponentState.ENABLED); float brightnessFactor = colorScheme.isDark() ? 0.2f : 0.8f; return new ImageIcon(SubstanceImageCreator.getColorSchemeImage(tab, orig, colorScheme, brightnessFactor)); }
public static Icon getThemedIcon(JTabbedPane tab, int tabIndex, Icon orig) { SubstanceColorScheme colorScheme = SubstanceColorSchemeUtilities .getColorScheme(tab, tabIndex, ColorSchemeAssociationKind.TAB, ComponentState.ENABLED); float brightnessFactor = colorScheme.isDark() ? 0.2f : 0.8f; return new ImageIcon(SubstanceImageCreator.getColorSchemeImage(tab, orig, colorScheme, brightnessFactor)); }
public static Icon getThemedIcon(Component comp, Icon orig) { SubstanceColorScheme colorScheme = SubstanceColorSchemeUtilities .getColorScheme(comp, ComponentState.ENABLED); float brightnessFactor = colorScheme.isDark() ? 0.2f : 0.8f; return new ImageIcon(SubstanceImageCreator.getColorSchemeImage(comp, orig, colorScheme, brightnessFactor)); }
public static Icon getThemedIcon(Component comp, Icon orig) { SubstanceColorScheme colorScheme = SubstanceColorSchemeUtilities .getColorScheme(comp, ComponentState.ENABLED); float brightnessFactor = colorScheme.isDark() ? 0.2f : 0.8f; return new ImageIcon(SubstanceImageCreator.getColorSchemeImage(comp, orig, colorScheme, brightnessFactor)); }
/** * Returns a colorized image tile. * * @param scheme * Color scheme for the colorization. * @return Colorized tile. */ protected Image getColorizedTile(SubstanceColorScheme scheme) { Image result = this.colorizedTileMap.get(scheme.getDisplayName()); if (result == null) { BufferedImage tileBi = new BufferedImage(this.originalTile .getWidth(null), this.originalTile.getHeight(null), BufferedImage.TYPE_INT_ARGB); tileBi.getGraphics().drawImage(this.originalTile, 0, 0, null); result = SubstanceImageCreator.getColorSchemeImage(tileBi, scheme, 0.0f); this.colorizedTileMap.put(scheme.getDisplayName(), result); } return result; } }
/** * Returns a colorized image tile. * * @param scheme * Color scheme for the colorization. * @return Colorized tile. */ protected Image getColorizedTile(SubstanceColorScheme scheme) { Image result = this.colorizedTileMap.get(scheme.getDisplayName()); if (result == null) { BufferedImage tileBi = new BufferedImage(this.originalTile .getWidth(null), this.originalTile.getHeight(null), BufferedImage.TYPE_INT_ARGB); tileBi.getGraphics().drawImage(this.originalTile, 0, 0, null); result = SubstanceImageCreator.getColorSchemeImage(tileBi, scheme, 0.0f); this.colorizedTileMap.put(scheme.getDisplayName(), result); } return result; } }
@Override public Icon getDisabledIcon(JComponent component, Icon icon) { if (icon == null) return null; SubstanceColorScheme colorScheme = SubstanceColorSchemeUtilities .getColorScheme(component, ComponentState.DISABLED_UNSELECTED); BufferedImage result = SubstanceImageCreator.getColorSchemeImage( component, icon, colorScheme, 0.5f); float alpha = SubstanceColorSchemeUtilities.getAlpha(component, ComponentState.DISABLED_UNSELECTED); if (alpha < 1.0f) { BufferedImage intermediate = SubstanceCoreUtilities.getBlankImage( result.getWidth(), result.getHeight()); Graphics2D g2d = intermediate.createGraphics(); g2d.setComposite(AlphaComposite.SrcOver.derive(alpha)); g2d.drawImage(result, 0, 0, null); g2d.dispose(); result = intermediate; } return new IconUIResource(new ImageIcon(result)); } }
@Override public Icon getDisabledIcon(JComponent component, Icon icon) { if (icon == null) return null; SubstanceColorScheme colorScheme = SubstanceColorSchemeUtilities .getColorScheme(component, ComponentState.DISABLED_UNSELECTED); BufferedImage result = SubstanceImageCreator.getColorSchemeImage( component, icon, colorScheme, 0.5f); float alpha = SubstanceColorSchemeUtilities.getAlpha(component, ComponentState.DISABLED_UNSELECTED); if (alpha < 1.0f) { BufferedImage intermediate = SubstanceCoreUtilities.getBlankImage( result.getWidth(), result.getHeight()); Graphics2D g2d = intermediate.createGraphics(); g2d.setComposite(AlphaComposite.SrcOver.derive(alpha)); g2d.drawImage(result, 0, 0, null); g2d.dispose(); result = intermediate; } return new IconUIResource(new ImageIcon(result)); } }