org.jvnet.substance.border
Interface SubstanceBorderPainter

All Superinterfaces:
SubstanceTrait
All Known Implementing Classes:
ClassicBorderPainter, ClassicInnerBorderPainter, FlatBorderPainter, FlatInnerBorderPainter, GlassBorderPainter, GlassInnerBorderPainter, InnerDelegateBorderPainter, NullBorderPainter, SimplisticSoftBorderPainter, StandardBorderPainter

public interface SubstanceBorderPainter
extends SubstanceTrait

Border painter interface for Substance look and feel. This class is part of officially supported API.

Starting from version 4.0, the borders of some controls (buttons, check boxes, tabs, scroll bars etc) are painted by border painters. Up until version 4.0 this has been done by gradient painters (SubstanceGradientPainter) instead. Note that a custom gradient painter may continue painting the borders, but these will be overriden by the current border painter. To allow easier migration, use NullBorderPainter.

Since:
version 4.0
Author:
Kirill Grouchnikov

Method Summary
 java.lang.String getDisplayName()
          Returns the display name of this trait.
 void paintBorder(java.awt.Graphics g, java.awt.Component c, int width, int height, java.awt.Shape contour, java.awt.Shape innerContour, ColorScheme colorScheme1, ColorScheme colorScheme2, float cyclePos, boolean useCyclePosAsInterpolation)
          Paints the control border.
 

Method Detail

getDisplayName

java.lang.String getDisplayName()
Description copied from interface: SubstanceTrait
Returns the display name of this trait. This method is part of officially supported API.

Specified by:
getDisplayName in interface SubstanceTrait
Returns:
The display name of this trait.

paintBorder

void paintBorder(java.awt.Graphics g,
                 java.awt.Component c,
                 int width,
                 int height,
                 java.awt.Shape contour,
                 java.awt.Shape innerContour,
                 ColorScheme colorScheme1,
                 ColorScheme colorScheme2,
                 float cyclePos,
                 boolean useCyclePosAsInterpolation)
Paints the control border.

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.
colorScheme1 - The first color scheme.
colorScheme2 - The second color scheme.
cyclePos - Cycle position. Is used for rollover and pulsation effects. Must be in 0..10 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.