Package org.pushingpixels.substance.api.painter.border

# Class CompositeBorderPainter

java.lang.Object
org.pushingpixels.substance.api.painter.border.CompositeBorderPainter

All Implemented Interfaces:
  `SubstanceBorderPainter`, `SubstanceTrait`

public class CompositeBorderPainter extends Object implements SubstanceBorderPainter
Composite border painter that delegates the painting of outer and inner contours.

Since:
  version 5.2

## Constructor Summary

Constructors
Constructor
Description
`CompositeBorderPainter(String displayName, SubstanceBorderPainter outer, SubstanceBorderPainter inner)`
Creates a new composite border painter.

## Method Summary

Modifier and Type
Method
Description
`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(Graphics g, Component c, int width, int height, Shape contour, 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`

## Constructor Details

### CompositeBorderPainter

public CompositeBorderPainter(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 Details

### 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(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 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.
  `borderScheme` - The border color scheme.

### getDisplayName

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