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

# Class FractionBasedBorderPainter

java.lang.Object
org.pushingpixels.substance.api.painter.FractionBasedPainter
org.pushingpixels.substance.api.painter.border.FractionBasedBorderPainter

All Implemented Interfaces:
  `SubstanceBorderPainter`, `SubstanceTrait`

public class FractionBasedBorderPainter extends FractionBasedPainter implements SubstanceBorderPainter
Border painter with fraction-based stops and a color query associated with each stop. This class allows creating multi-gradient borders with exact control over which color is used at every gradient control point.

## Field Summary

### Fields inherited from class org.pushingpixels.substance.api.painter.FractionBasedPainter

`colorQueries, fractions`

## Constructor Summary

Constructors
Constructor
Description
`FractionBasedBorderPainter(String displayName, float[] fractions, ColorSchemeSingleColorQuery[] colorQueries)`
Creates a new fraction-based border painter.

## Method Summary

Modifier and Type
Method
Description
`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 org.pushingpixels.substance.api.painter.FractionBasedPainter

`getColorQueries, getDisplayName, getFractions`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Methods inherited from interface org.pushingpixels.substance.api.trait.SubstanceTrait

`getDisplayName`

## Constructor Details

### FractionBasedBorderPainter

public FractionBasedBorderPainter(String displayName, float[] fractions, ColorSchemeSingleColorQuery[] colorQueries)
Creates a new fraction-based border painter.

Parameters:
  `displayName` - The display name of this painter.
  `fractions` - The fractions of this painter. Must be strictly increasing, starting from 0.0 and ending at 1.0.
  `colorQueries` - The color queries of this painter. Must have the same size as the fractions array, and all entries must be non- `null`.

## Method Details

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

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