org.jvnet.substance.painter.border
public class DelegateBorderPainter extends StandardBorderPainter
Modifier and Type | Field and Description |
---|---|
protected int |
bottomMask
8-digit hexadecimal mask applied on the bottom color painted by
delegate . |
protected StandardBorderPainter |
delegate
The delegate border painter.
|
protected java.lang.String |
displayName
Display name of this border painter.
|
protected int |
midMask
8-digit hexadecimal mask applied on the middle color painted by
delegate . |
protected int |
topMask
8-digit hexadecimal mask applied on the top color painted by
delegate . |
protected ColorSchemeTransform |
transform
Transformation to be applied on the color schemes prior to compute the
colors to be used for border painting.
|
protected static LazyResettableHashMap<SubstanceColorScheme> |
transformMap
Map of transformed color schemes (to speed up the subsequent lookups).
|
Constructor and Description |
---|
DelegateBorderPainter(java.lang.String displayName,
StandardBorderPainter delegate,
ColorSchemeTransform transform)
Creates a new delegate border painter
|
DelegateBorderPainter(java.lang.String displayName,
StandardBorderPainter delegate,
int topMask,
int midMask,
int bottomMask,
ColorSchemeTransform transform)
Creates a new delegate border painter
|
Modifier and Type | Method and Description |
---|---|
java.awt.Color |
getBottomBorderColor(SubstanceColorScheme interpolationScheme1,
SubstanceColorScheme interpolationScheme2,
double cycleCoef,
boolean useCyclePosAsInterpolation)
Computes the color of the bottom portion of the border.
|
java.lang.String |
getDisplayName()
Returns the display name of
this trait. |
java.awt.Color |
getMidBorderColor(SubstanceColorScheme interpolationScheme1,
SubstanceColorScheme interpolationScheme2,
double cycleCoef,
boolean useCyclePosAsInterpolation)
Computes the color of the middle portion of the border.
|
java.awt.Color |
getTopBorderColor(SubstanceColorScheme interpolationScheme1,
SubstanceColorScheme interpolationScheme2,
double cycleCoef,
boolean useCyclePosAsInterpolation)
Computes the color of the top portion of the border.
|
void |
paintBorder(java.awt.Graphics g,
java.awt.Component c,
int width,
int height,
java.awt.Shape contour,
java.awt.Shape innerContour,
SubstanceColorScheme colorScheme1,
SubstanceColorScheme colorScheme2,
float cyclePos,
boolean useCyclePosAsInterpolation)
Paints the control border.
|
isPaintingInnerContour
protected java.lang.String displayName
protected StandardBorderPainter delegate
protected int topMask
delegate
. Can be used to apply custom translucency. For example,
value 0x80FFFFFF will result in 50% translucency of the original top
border color.protected int midMask
delegate
. Can be used to apply custom translucency. For example,
value 0x80FFFFFF will result in 50% translucency of the original middle
border color.protected int bottomMask
delegate
. Can be used to apply custom translucency. For example,
value 0x80FFFFFF will result in 50% translucency of the original bottom
border color.protected ColorSchemeTransform transform
protected static final LazyResettableHashMap<SubstanceColorScheme> transformMap
public DelegateBorderPainter(java.lang.String displayName, StandardBorderPainter delegate, ColorSchemeTransform transform)
displayName
- Display name of this border painter.delegate
- The delegate border painter.transform
- Transformation to be applied on the color schemes prior to
compute the colors to be used for border painting.public DelegateBorderPainter(java.lang.String displayName, StandardBorderPainter delegate, int topMask, int midMask, int bottomMask, ColorSchemeTransform transform)
displayName
- Display name of this border painter.delegate
- The delegate border painter.topMask
- 8-digit hexadecimal mask applied on the top color painted by
the delegate
.midMask
- 8-digit hexadecimal mask applied on the middle color painted
by the delegate
.bottomMask
- 8-digit hexadecimal mask applied on the bottom color painted
by the delegate
.transform
- Transformation to be applied on the color schemes prior to
compute the colors to be used for border painting.public java.awt.Color getTopBorderColor(SubstanceColorScheme interpolationScheme1, SubstanceColorScheme interpolationScheme2, double cycleCoef, boolean useCyclePosAsInterpolation)
StandardBorderPainter
getTopBorderColor
in class StandardBorderPainter
interpolationScheme1
- The first interpolation scheme.interpolationScheme2
- The second interpolation scheme.cycleCoef
- Cycle coefficient.useCyclePosAsInterpolation
- Indicates whether the cycle coefficient should be used as the
interpolation parameter.public java.awt.Color getMidBorderColor(SubstanceColorScheme interpolationScheme1, SubstanceColorScheme interpolationScheme2, double cycleCoef, boolean useCyclePosAsInterpolation)
StandardBorderPainter
getMidBorderColor
in class StandardBorderPainter
interpolationScheme1
- The first interpolation scheme.interpolationScheme2
- The second interpolation scheme.cycleCoef
- Cycle coefficient.useCyclePosAsInterpolation
- Indicates whether the cycle coefficient should be used as the
interpolation parameter.public java.awt.Color getBottomBorderColor(SubstanceColorScheme interpolationScheme1, SubstanceColorScheme interpolationScheme2, double cycleCoef, boolean useCyclePosAsInterpolation)
StandardBorderPainter
getBottomBorderColor
in class StandardBorderPainter
interpolationScheme1
- The first interpolation scheme.interpolationScheme2
- The second interpolation scheme.cycleCoef
- Cycle coefficient.useCyclePosAsInterpolation
- Indicates whether the cycle coefficient should be used as the
interpolation parameter.public void paintBorder(java.awt.Graphics g, java.awt.Component c, int width, int height, java.awt.Shape contour, java.awt.Shape innerContour, SubstanceColorScheme colorScheme1, SubstanceColorScheme colorScheme2, float cyclePos, boolean useCyclePosAsInterpolation)
SubstanceBorderPainter
paintBorder
in interface SubstanceBorderPainter
paintBorder
in class StandardBorderPainter
g
- Graphics.c
- Component.width
- Width of a UI component.height
- Height of a UI component.contour
- Contour of a UI component.innerContour
- Inner contour of a UI component. May be ignored if the
specific implementation paints only the outside border.colorScheme1
- The first color scheme.colorScheme2
- The second color scheme.cyclePos
- Cycle position. Is used for rollover and pulsation effects.
Must be in 0..1 range.useCyclePosAsInterpolation
- Indicates the algorithm to use for computing various colors.
If true
, the cyclePos
is used to
interpolate colors between different color components of both
color schemes. If false
, the
cyclePos
is used to interpolate colors between
different color components of the first color scheme.public java.lang.String getDisplayName()
SubstanceTrait
this
trait. This method is part
of officially supported API.getDisplayName
in interface SubstanceTrait
getDisplayName
in class StandardBorderPainter
this
trait.