org.jvnet.substance.painter.border
Class CompositeBorderPainter

java.lang.Object
  extended by org.jvnet.substance.painter.border.CompositeBorderPainter
All Implemented Interfaces:
SubstanceTrait, SubstanceBorderPainter

public class CompositeBorderPainter
extends java.lang.Object
implements SubstanceBorderPainter

Composite border painter that delegates the painting of outer and inner contours.

Since:
version 5.2
Author:
Kirill Grouchnikov

Constructor Summary
CompositeBorderPainter(java.lang.String displayName, SubstanceBorderPainter outer, SubstanceBorderPainter inner)
          Creates a new composite border painter.
 
Method Summary
 java.lang.String getDisplayName()
          Returns the display name of this trait.
 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 class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CompositeBorderPainter

public CompositeBorderPainter(java.lang.String displayName,
                              SubstanceBorderPainter outer,
                              SubstanceBorderPainter inner)
Creates a new composite border painter.

Parameters:
displayName - Display name.
outer - Delegate painter for painting the outer contours.
inner - Delegate painter for painting the inner contrours.
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 interface SubstanceBorderPainter
Returns:
true if this border painter is painting the inner contours, false otherwise.

paintBorder

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)
Description copied from interface: SubstanceBorderPainter
Paints the control border.

Specified by:
paintBorder in interface SubstanceBorderPainter
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.

getDisplayName

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