Class DelegateBorderPainter
- java.lang.Object
-
- org.pushingpixels.substance.api.painter.border.StandardBorderPainter
-
- org.pushingpixels.substance.api.painter.border.DelegateBorderPainter
-
- All Implemented Interfaces:
SubstanceBorderPainter,SubstanceTrait
public class DelegateBorderPainter extends StandardBorderPainter
Delegate border painter that allows tweaking the visual appearance of borders.
-
-
Field Summary
Fields Modifier and Type Field Description protected intbottomMask8-digit hexadecimal mask applied on the bottom color painted bydelegate.protected StandardBorderPainterdelegateThe delegate border painter.protected java.lang.StringdisplayNameDisplay name of this border painter.protected intmidMask8-digit hexadecimal mask applied on the middle color painted bydelegate.protected inttopMask8-digit hexadecimal mask applied on the top color painted bydelegate.protected ColorSchemeTransformtransformTransformation to be applied on the color schemes prior to compute the colors to be used for border painting.protected static org.pushingpixels.substance.internal.utils.LazyResettableHashMap<SubstanceColorScheme>transformMapMap of transformed color schemes (to speed up the subsequent lookups).
-
Constructor Summary
Constructors Constructor Description DelegateBorderPainter(java.lang.String displayName, StandardBorderPainter delegate, int topMask, int midMask, int bottomMask, ColorSchemeTransform transform)Creates a new delegate border painterDelegateBorderPainter(java.lang.String displayName, StandardBorderPainter delegate, ColorSchemeTransform transform)Creates a new delegate border painter
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.awt.ColorgetBottomBorderColor(SubstanceColorScheme borderScheme)Computes the color of the bottom portion of the border.java.lang.StringgetDisplayName()Returns the display name ofthistrait.java.awt.ColorgetMidBorderColor(SubstanceColorScheme borderScheme)Computes the color of the middle portion of the border.java.awt.ColorgetRepresentativeColor(SubstanceColorScheme borderScheme)java.awt.ColorgetTopBorderColor(SubstanceColorScheme borderScheme)Computes the color of the top portion of the border.voidpaintBorder(java.awt.Graphics g, java.awt.Component c, float width, float height, java.awt.Shape contour, java.awt.Shape innerContour, SubstanceColorScheme borderScheme)Paints the control border.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from class org.pushingpixels.substance.api.painter.border.StandardBorderPainter
isPaintingInnerContour
-
-
-
-
Field Detail
-
displayName
protected java.lang.String displayName
Display name of this border painter.
-
delegate
protected StandardBorderPainter delegate
The delegate border painter.
-
topMask
protected int topMask
8-digit hexadecimal mask applied on the top color painted bydelegate. Can be used to apply custom translucency. For example, value 0x80FFFFFF will result in 50% translucency of the original top border color.
-
midMask
protected int midMask
8-digit hexadecimal mask applied on the middle color painted bydelegate. Can be used to apply custom translucency. For example, value 0x80FFFFFF will result in 50% translucency of the original middle border color.
-
bottomMask
protected int bottomMask
8-digit hexadecimal mask applied on the bottom color painted bydelegate. Can be used to apply custom translucency. For example, value 0x80FFFFFF will result in 50% translucency of the original bottom 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 org.pushingpixels.substance.internal.utils.LazyResettableHashMap<SubstanceColorScheme> transformMap
Map of transformed color schemes (to speed up the subsequent lookups).
-
-
Constructor Detail
-
DelegateBorderPainter
public DelegateBorderPainter(java.lang.String displayName, StandardBorderPainter delegate, ColorSchemeTransform transform)Creates a new delegate border painter- Parameters:
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.
-
DelegateBorderPainter
public DelegateBorderPainter(java.lang.String displayName, StandardBorderPainter delegate, int topMask, int midMask, int bottomMask, ColorSchemeTransform transform)Creates a new delegate border painter- Parameters:
displayName- Display name of this border painter.delegate- The delegate border painter.topMask- 8-digit hexadecimal mask applied on the top color painted by thedelegate.midMask- 8-digit hexadecimal mask applied on the middle color painted by thedelegate.bottomMask- 8-digit hexadecimal mask applied on the bottom color 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
-
getTopBorderColor
public java.awt.Color getTopBorderColor(SubstanceColorScheme borderScheme)
Description copied from class:StandardBorderPainterComputes the color of the top portion of the border. Override to provide different visual.- Overrides:
getTopBorderColorin classStandardBorderPainter- Parameters:
borderScheme- The border color scheme.- Returns:
- The color of the top portion of the border.
-
getMidBorderColor
public java.awt.Color getMidBorderColor(SubstanceColorScheme borderScheme)
Description copied from class:StandardBorderPainterComputes the color of the middle portion of the border. Override to provide different visual.- Overrides:
getMidBorderColorin classStandardBorderPainter- Parameters:
borderScheme- The border color scheme.- Returns:
- The color of the middle portion of the border.
-
getBottomBorderColor
public java.awt.Color getBottomBorderColor(SubstanceColorScheme borderScheme)
Description copied from class:StandardBorderPainterComputes the color of the bottom portion of the border. Override to provide different visual.- Overrides:
getBottomBorderColorin classStandardBorderPainter- Parameters:
borderScheme- The border color scheme.- Returns:
- The color of the bottom portion of the border.
-
paintBorder
public void paintBorder(java.awt.Graphics g, java.awt.Component c, float width, float height, java.awt.Shape contour, java.awt.Shape innerContour, SubstanceColorScheme borderScheme)Description copied from interface:SubstanceBorderPainterPaints the control border.- Specified by:
paintBorderin interfaceSubstanceBorderPainter- Overrides:
paintBorderin classStandardBorderPainter- 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 java.lang.String getDisplayName()
Description copied from interface:SubstanceTraitReturns the display name ofthistrait. This method is part of officially supported API.- Specified by:
getDisplayNamein interfaceSubstanceTrait- Overrides:
getDisplayNamein classStandardBorderPainter- Returns:
- The display name of
thistrait.
-
getRepresentativeColor
public java.awt.Color getRepresentativeColor(SubstanceColorScheme borderScheme)
- Specified by:
getRepresentativeColorin interfaceSubstanceBorderPainter- Overrides:
getRepresentativeColorin classStandardBorderPainter
-
-