Class RadianceColorUtilities
- java.lang.Object
-
- org.pushingpixels.radiance.theming.internal.utils.RadianceColorUtilities
-
public class RadianceColorUtilities extends java.lang.Object
Various color-related utilities. This class is for internal use only.
-
-
Constructor Summary
Constructors Constructor Description RadianceColorUtilities()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static java.awt.Color
deriveByBrightness(java.awt.Color original, float brightnessFactor)
static java.awt.Color
deriveByBrightness(java.awt.Color original, java.awt.Color brightnessSource)
Derives a color based on the original color and a brightness source.static java.lang.String
encode(int number)
static java.lang.String
encode(java.awt.Color color)
private static double
EOCF_sRGB(double srgb)
static java.awt.Color
getAlphaColor(java.awt.Color color, int alpha)
Returns a translucent of the specified color.static java.awt.Color
getBackgroundFillColor(java.awt.Component component)
Returns the background fill color of the specified component.static java.awt.Color
getBackgroundFillColorScrollBar(javax.swing.JScrollBar scrollbar)
static int
getColorBrightness(int rgb)
Returns the brightness of the specified color.static float
getColorStrength(java.awt.Color color)
Returns the color strength.static java.awt.Color
getDarkerColor(java.awt.Color color, double diff)
Returns darker version of the specified color.private static javax.swing.plaf.ColorUIResource
getDefaultBackgroundColor(java.awt.Component comp, ComponentState compState)
Returns the default background color for the specified component.static java.awt.Color
getFocusColor(java.awt.Component comp, TransitionAwareUI transitionAwareUI)
Returns the color of the focus ring for the specified component.static java.awt.Color
getForegroundColor(java.awt.Component component, StateTransitionTracker.ModelStateInfo modelStateInfo)
Returns the foreground text color of the specified component.static javax.swing.plaf.ColorUIResource
getForegroundColor(RadianceColorScheme scheme)
Returns the foreground color of the specified color scheme.static java.awt.Color
getHueShiftedColor(java.awt.Color color, double hueShift)
Returns hue-shifted (in HSV space) version of the specified color.private static int
getInterpolatedChannelValue(int value1, int value2, double value1Likeness)
static java.awt.Color
getInterpolatedColor(java.awt.Color color1, java.awt.Color color2, double color1Likeness)
Interpolates color.static int
getInterpolatedRGB(java.awt.Color color1, java.awt.Color color2, double color1Likeness)
Interpolates color.static java.awt.Color
getLighterColor(java.awt.Color color, double diff)
Returns lighter version of the specified color.static java.awt.Color
getMenuComponentForegroundColor(javax.swing.JMenuItem menuComponent, StateTransitionTracker.ModelStateInfo modelStateInfo)
Returns the foreground text color of the specified menu component.static int
getNegativeColor(int rgb)
Returns a negative of the specified color.static java.awt.Color
getSaturatedColor(java.awt.Color color, double factor)
Returns saturated version of the specified color.static java.awt.Color
getStripedBackground(javax.swing.JComponent component, int rowIndex)
Returns the striped background for the specified component.static java.awt.Color
invertColor(java.awt.Color color)
Inverts the specified color.private static double
OECF_sRGB(double linear)
-
-
-
Method Detail
-
getInterpolatedRGB
public static int getInterpolatedRGB(java.awt.Color color1, java.awt.Color color2, double color1Likeness)
Interpolates color.- Parameters:
color1
- The first colorcolor2
- The second colorcolor1Likeness
- The closer this value is to 0.0, the closer the resulting color will be tocolor2
.- Returns:
- Interpolated RGB value.
-
getInterpolatedChannelValue
private static int getInterpolatedChannelValue(int value1, int value2, double value1Likeness)
-
OECF_sRGB
private static double OECF_sRGB(double linear)
-
EOCF_sRGB
private static double EOCF_sRGB(double srgb)
-
getInterpolatedColor
public static java.awt.Color getInterpolatedColor(java.awt.Color color1, java.awt.Color color2, double color1Likeness)
Interpolates color.- Parameters:
color1
- The first colorcolor2
- The second colorcolor1Likeness
- The closer this value is to 0.0, the closer the resulting color will be tocolor2
.- Returns:
- Interpolated color.
-
invertColor
public static java.awt.Color invertColor(java.awt.Color color)
Inverts the specified color.- Parameters:
color
- The original color.- Returns:
- The inverted color.
-
getNegativeColor
public static int getNegativeColor(int rgb)
Returns a negative of the specified color.- Parameters:
rgb
- Color RGB.- Returns:
- Negative of the specified color.
-
getAlphaColor
public static java.awt.Color getAlphaColor(java.awt.Color color, int alpha)
Returns a translucent of the specified color.- Parameters:
color
- Color.alpha
- Alpha channel value.- Returns:
- Translucent of the specified color that matches the requested alpha channel value.
-
getSaturatedColor
public static java.awt.Color getSaturatedColor(java.awt.Color color, double factor)
Returns saturated version of the specified color.- Parameters:
color
- Color.factor
- Saturation factor.- Returns:
- Saturated color.
-
getHueShiftedColor
public static java.awt.Color getHueShiftedColor(java.awt.Color color, double hueShift)
Returns hue-shifted (in HSV space) version of the specified color.- Parameters:
color
- Color.hueShift
- hue shift factor.- Returns:
- Hue-shifted (in HSV space) color.
-
deriveByBrightness
public static java.awt.Color deriveByBrightness(java.awt.Color original, java.awt.Color brightnessSource)
Derives a color based on the original color and a brightness source. The resulting color has the same hue and saturation as the original color, but its brightness is shifted towards the brightness of the brightness source. Thus, a light red color shifted towards dark green will become dark red.- Parameters:
original
- Original color.brightnessSource
- Brightness source.- Returns:
- Derived color that has the same hue and saturation as the original color, but its brightness is shifted towards the brightness of the brightness source.
-
deriveByBrightness
public static java.awt.Color deriveByBrightness(java.awt.Color original, float brightnessFactor)
-
getForegroundColor
public static javax.swing.plaf.ColorUIResource getForegroundColor(RadianceColorScheme scheme)
Returns the foreground color of the specified color scheme.- Parameters:
scheme
- Color scheme.- Returns:
- Color scheme foreground color.
-
getLighterColor
public static java.awt.Color getLighterColor(java.awt.Color color, double diff)
Returns lighter version of the specified color.- Parameters:
color
- Color.diff
- Difference factor (values closer to 1.0 will produce results closer to white color).- Returns:
- Lighter version of the specified color.
-
getDarkerColor
public static java.awt.Color getDarkerColor(java.awt.Color color, double diff)
Returns darker version of the specified color.- Parameters:
color
- Color.diff
- Difference factor (values closer to 1.0 will produce results closer to black color).- Returns:
- Darker version of the specified color.
-
getColorBrightness
public static int getColorBrightness(int rgb)
Returns the brightness of the specified color.- Parameters:
rgb
- RGB value of a color.- Returns:
- The brightness of the specified color.
-
getFocusColor
public static java.awt.Color getFocusColor(java.awt.Component comp, TransitionAwareUI transitionAwareUI)
Returns the color of the focus ring for the specified component.- Parameters:
comp
- Component.- Returns:
- The color of the focus ring for the specified component.
-
getColorStrength
public static float getColorStrength(java.awt.Color color)
Returns the color strength.- Parameters:
color
- Color.- Returns:
- Color strength.
-
getForegroundColor
public static java.awt.Color getForegroundColor(java.awt.Component component, StateTransitionTracker.ModelStateInfo modelStateInfo)
Returns the foreground text color of the specified component.- Parameters:
component
- Component.modelStateInfo
- Component model state info.- Returns:
- The foreground text color of the specified component.
-
getMenuComponentForegroundColor
public static java.awt.Color getMenuComponentForegroundColor(javax.swing.JMenuItem menuComponent, StateTransitionTracker.ModelStateInfo modelStateInfo)
Returns the foreground text color of the specified menu component.- Parameters:
menuComponent
- Menu component.modelStateInfo
- Model state info for the component.- Returns:
- The foreground text color of the specified menu component.
-
getBackgroundFillColor
public static java.awt.Color getBackgroundFillColor(java.awt.Component component)
Returns the background fill color of the specified component.- Parameters:
component
- Component.- Returns:
- The background fill color of the specified component.
-
getBackgroundFillColorScrollBar
public static java.awt.Color getBackgroundFillColorScrollBar(javax.swing.JScrollBar scrollbar)
-
getDefaultBackgroundColor
private static javax.swing.plaf.ColorUIResource getDefaultBackgroundColor(java.awt.Component comp, ComponentState compState)
Returns the default background color for the specified component.- Parameters:
comp
- Component.compState
- Component state.- Returns:
- The default background color for the components of the specified class.
-
getStripedBackground
public static java.awt.Color getStripedBackground(javax.swing.JComponent component, int rowIndex)
Returns the striped background for the specified component. This method is relevant for components such as trees, tables and lists that use odd-even striping for the alternating rows.- Parameters:
component
- Component.rowIndex
- Row index.- Returns:
- The striped background for the specified component.
-
encode
public static java.lang.String encode(int number)
-
encode
public static java.lang.String encode(java.awt.Color color)
-
-