Class BorderStroke


  • public class BorderStroke
    extends Object
    Defines the stroke to use on a Border for styling a Region. The stroke is a vector-based rendering that outlines the border area. It can be inset (or outset) from the Region's edge, and the values of the stroke are taken into account when computing the Region's insets (for defining the content area). The stroke visuals are not used when any BorderImages are in use.

    When applied to a Region with a defined shape, the border width and stroking information for the top is used, while the other attributes are ignored.

    Since:
    JavaFX 8.0
    • Field Detail

      • THIN

        public static final BorderWidths THIN
        The default insets when "thin" is specified.
      • MEDIUM

        public static final BorderWidths MEDIUM
        The default insets when "medium" is specified
      • THICK

        public static final BorderWidths THICK
        The default insets when "thick" is specified
      • DEFAULT_WIDTHS

        public static final BorderWidths DEFAULT_WIDTHS
        The default Insets to be used with a BorderStroke that does not otherwise define any.
    • Constructor Detail

      • BorderStroke

        public BorderStroke​(Paint stroke,
                            BorderStrokeStyle style,
                            CornerRadii radii,
                            BorderWidths widths)
        Creates a new BorderStroke.
        Parameters:
        stroke - The stroke to use for all sides. If null, defaults to Color.BLACK.
        style - The style to use for all sides. If null, defaults to BorderStrokeStyle.NONE.
        radii - The radii to use. If null, defaults to CornerRadii.EMPTY.
        widths - The widths to use. If null, defaults to DEFAULT_WIDTHS.
      • BorderStroke

        public BorderStroke​(Paint stroke,
                            BorderStrokeStyle style,
                            CornerRadii radii,
                            BorderWidths widths,
                            Insets insets)
        Creates a new BorderStroke.
        Parameters:
        stroke - The stroke to use for all sides. If null, defaults to Color.BLACK.
        style - The style to use for all sides. If null, defaults to BorderStrokeStyle.NONE.
        radii - The radii to use. If null, defaults to CornerRadii.EMPTY.
        widths - The widths to use. If null, defaults to DEFAULT_WIDTHS.
        insets - The insets indicating where to draw the border relative to the region edges. If null, defaults to Insets.EMPTY.
      • BorderStroke

        public BorderStroke​(Paint topStroke,
                            Paint rightStroke,
                            Paint bottomStroke,
                            Paint leftStroke,
                            BorderStrokeStyle topStyle,
                            BorderStrokeStyle rightStyle,
                            BorderStrokeStyle bottomStyle,
                            BorderStrokeStyle leftStyle,
                            CornerRadii radii,
                            BorderWidths widths,
                            Insets insets)
        Creates a new BorderStroke, specifying all construction parameters.
        Parameters:
        topStroke - The fill to use on the top. If null, defaults to Color.BLACK.
        rightStroke - The fill to use on the right. If null, defaults to the same value as topStroke.
        bottomStroke - The fill to use on the bottom. If null, defaults to the same value as topStroke.
        leftStroke - The fill to use on the left. If null, defaults to the same value as rightStroke.
        topStyle - The style to use on the top. If null, defaults to BorderStrokeStyle.NONE.
        rightStyle - The style to use on the right. If null, defaults to the same value as topStyle.
        bottomStyle - The style to use on the bottom. If null, defaults to the same value as topStyle.
        leftStyle - The style to use on the left. If null, defaults to the same value as rightStyle.
        radii - The radii. If null, defaults to square corners by using CornerRadii.EMPTY.
        widths - The thickness of each side. If null, defaults to DEFAULT_WIDTHS.
        insets - The insets indicating where to draw the border relative to the region edges. If null, defaults to Insets.EMPTY.
    • Method Detail

      • getTopStroke

        public final Paint getTopStroke()
        Defines the fill of top side of this border.
        Default value:
        Color.BLACK
        Returns:
        the fill of top side of this border
      • getRightStroke

        public final Paint getRightStroke()
        Defines the fill of right side of this border. If null, then the topFill is used.
        Default value:
        null (same as topFill)
        Returns:
        the fill of right side of this border
      • getBottomStroke

        public final Paint getBottomStroke()
        Defines the fill of bottom side of this border. If null, then the topFill is used.
        Default value:
        null (same as topFill)
        Returns:
        the fill of bottom side of this border
      • getLeftStroke

        public final Paint getLeftStroke()
        Defines the fill of left side of this border. If null, then the rightFill is used.
        Default value:
        null (same as rightFill)
        Returns:
        the fill of left side of this border
      • getTopStyle

        public final BorderStrokeStyle getTopStyle()
        Defines the style of top side of this border.
        Default value:
        BorderStrokeStyle.NONE
        Returns:
        the style of top side of this border
      • getRightStyle

        public final BorderStrokeStyle getRightStyle()
        Defines the style of right side of this border. If null, then topStyle is used;
        Default value:
        null (same as topStyle)
        Returns:
        the style of right side of this border
      • getBottomStyle

        public final BorderStrokeStyle getBottomStyle()
        Defines the style of bottom side of this border. If null, then topStyle is used; Use BorderStyle.NONE to set the border to have no border style.
        Default value:
        null (same as topStyle)
        Returns:
        the style of bottom side of this border
      • getLeftStyle

        public final BorderStrokeStyle getLeftStyle()
        Defines the style of left side of this border. If null, then rightStyle is used. Use BorderStyle.NONE to set the border to have no border style.
        Default value:
        null (same as rightStyle)
        Returns:
        the style of left side of this border
      • getWidths

        public final BorderWidths getWidths()
        Defines the thickness of each side of the BorderStroke. This will never be null, and defaults to DEFAULT_WIDTHS.
        Returns:
        the thickness of each side of the BorderStroke
      • getInsets

        public final Insets getInsets()
        Defines the insets of each side of the BorderStroke. This will never be null, and defaults to Insets.EMPTY.
        Returns:
        the insets of each side of the BorderStroke
      • getRadii

        public final CornerRadii getRadii()
        Defines the radii for each corner of this BorderStroke. This will never be null, and defaults to CornerRadii.EMPTY.
        Returns:
        the radii for each corner of this BorderStroke
      • isStrokeUniform

        public final boolean isStrokeUniform()
        Checks if the stroke of this region is uniform. A uniform stroke has all its side strokes (top, bottom, left, right) of same color, width and style.
        Returns:
        true if border stroke is uniform
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object