Class FractionBasedBorderPainter

java.lang.Object
org.pushingpixels.radiance.theming.api.painter.FractionBasedPainter
org.pushingpixels.radiance.theming.api.painter.border.FractionBasedBorderPainter
All Implemented Interfaces:
RadianceBorderPainter, RadianceTrait
Direct Known Subclasses:
ClassicBorderPainter, FlatBorderPainter, GlassBorderPainter, StandardBorderPainter

public class FractionBasedBorderPainter extends FractionBasedPainter implements RadianceBorderPainter
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.
  • 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, float width, float height, Shape contour, Shape innerContour, RadianceColorScheme borderScheme)
      Description copied from interface: RadianceBorderPainter
      Paints the control border.
      Specified by:
      paintBorder in interface RadianceBorderPainter
      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: RadianceBorderPainter
      Returns boolean indication whether this border painter is painting the inner contours.
      Specified by:
      isPaintingInnerContour in interface RadianceBorderPainter
      Returns:
      true if this border painter is painting the inner contours, false otherwise.
    • getRepresentativeColor

      public Color getRepresentativeColor(RadianceColorScheme borderScheme)
      Specified by:
      getRepresentativeColor in interface RadianceBorderPainter