Class DelegateFractionBasedBorderPainter
- java.lang.Object
-
- org.pushingpixels.substance.api.painter.border.DelegateFractionBasedBorderPainter
-
- All Implemented Interfaces:
SubstanceBorderPainter
,SubstanceTrait
public class DelegateFractionBasedBorderPainter extends Object implements SubstanceBorderPainter
Delegate border painter that allows tweaking the visual appearance of borders.
-
-
Field Summary
Fields Modifier and Type Field Description protected FractionBasedBorderPainter
delegate
The delegate border painter.protected String
displayName
Display name of this border painter.protected int[]
masks
8-digit hexadecimal masks applied on the colors painted bydelegate
.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 Summary
Constructors Constructor Description DelegateFractionBasedBorderPainter(String displayName, FractionBasedBorderPainter delegate, int[] masks, ColorSchemeTransform transform)
Creates a new delegate border painter
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description String
getDisplayName()
Returns the display name ofthis
trait.boolean
isPaintingInnerContour()
Returns boolean indication whether this border painter is painting the inner contours.void
paintBorder(Graphics g, Component c, int width, int height, Shape contour, Shape innerContour, SubstanceColorScheme borderScheme)
Paints the control border.
-
-
-
Field Detail
-
displayName
protected String displayName
Display name of this border painter.
-
delegate
protected FractionBasedBorderPainter delegate
The delegate border painter.
-
masks
protected int[] masks
8-digit hexadecimal masks applied on the colors painted bydelegate
. Can be used to apply custom translucency. For example, value 0x80FFFFFF will result in 50% translucency of the original border color.
-
transform
protected ColorSchemeTransform transform
Transformation to be applied on the color schemes prior to compute the colors to be used for border painting.
-
transformMap
protected static final LazyResettableHashMap<SubstanceColorScheme> transformMap
Map of transformed color schemes (to speed up the subsequent lookups).
-
-
Constructor Detail
-
DelegateFractionBasedBorderPainter
public DelegateFractionBasedBorderPainter(String displayName, FractionBasedBorderPainter delegate, int[] masks, ColorSchemeTransform transform)
Creates a new delegate border painter- Parameters:
displayName
- Display name of this border painter.delegate
- The delegate border painter.masks
- Array of 8-digit hexadecimal masks applied on the relevant colors painted by thedelegate
.transform
- Transformation to be applied on the color schemes prior to compute the colors to be used for border painting.
-
-
Method Detail
-
isPaintingInnerContour
public boolean isPaintingInnerContour()
Description copied from interface:SubstanceBorderPainter
Returns boolean indication whether this border painter is painting the inner contours.- Specified by:
isPaintingInnerContour
in interfaceSubstanceBorderPainter
- Returns:
true
if this border painter is painting the inner contours,false
otherwise.
-
paintBorder
public void paintBorder(Graphics g, Component c, int width, int height, Shape contour, Shape innerContour, SubstanceColorScheme borderScheme)
Description copied from interface:SubstanceBorderPainter
Paints the control border.- Specified by:
paintBorder
in interfaceSubstanceBorderPainter
- Parameters:
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.borderScheme
- The border color scheme.
-
getDisplayName
public String getDisplayName()
Description copied from interface:SubstanceTrait
Returns the display name ofthis
trait. This method is part of officially supported API.- Specified by:
getDisplayName
in interfaceSubstanceTrait
- Returns:
- The display name of
this
trait.
-
-