org.jvnet.substance.painter.border
Interface SubstanceBorderPainter

All Superinterfaces:
SubstanceTrait
All Known Implementing Classes:
ClassicBorderPainter, ClassicInnerBorderPainter, CompositeBorderPainter, DelegateBorderPainter, DelegateFractionBasedBorderPainter, FlatBorderPainter, FlatInnerBorderPainter, FractionBasedBorderPainter, 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
 boolean isPaintingInnerContour()
          Returns boolean indication whether this border painter is painting the inner contours.
 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.
 
Methods inherited from interface org.jvnet.substance.api.trait.SubstanceTrait
getDisplayName
 

Method Detail

paintBorder

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.

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..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.

isPaintingInnerContour

boolean isPaintingInnerContour()
Returns boolean indication whether this border painter is painting the inner contours.

Returns:
true if this border painter is painting the inner contours, false otherwise.