javafx.scene.layout

## Class BorderStroke

- java.lang.Object
- - javafx.scene.layout.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 Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static BorderWidths` | `DEFAULT_WIDTHS` The default Insets to be used with a BorderStroke that does not otherwise define any.
    `static BorderWidths` | `MEDIUM` The default insets when "medium" is specified
    `static BorderWidths` | `THICK` The default insets when "thick" is specified
    `static BorderWidths` | `THIN` The default insets when "thin" is specified.

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `BorderStroke(Paint stroke, BorderStrokeStyle style, CornerRadii radii, BorderWidths widths)` Creates a new BorderStroke.
    `BorderStroke(Paint stroke, BorderStrokeStyle style, CornerRadii radii, BorderWidths widths, Insets insets)` Creates a new BorderStroke.
    `BorderStroke(Paint topStroke, Paint rightStroke, Paint bottomStroke, Paint leftStroke, BorderStrokeStyle topStyle, BorderStrokeStyle rightStyle, BorderStrokeStyle bottomStyle, BorderStrokeStyle leftStyle, CornerRadii radii, BorderWidths widths, Insets insets)` Create a new BorderStroke, specifying all construction parameters.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `equals(Object o)`
    `Paint` | `getBottomStroke()` Defines the fill of bottom side of this border.
    `BorderStrokeStyle` | `getBottomStyle()` Defines the style of bottom side of this border.
    `Insets` | `getInsets()` Defines the insets of each side of the BorderStroke.
    `Paint` | `getLeftStroke()` Defines the fill of left side of this border.
    `BorderStrokeStyle` | `getLeftStyle()` Defines the style of left side of this border.
    `CornerRadii` | `getRadii()` Defines the radii for each corner of this BorderStroke.
    `Paint` | `getRightStroke()` Defines the fill of right side of this border.
    `BorderStrokeStyle` | `getRightStyle()` Defines the style of right side of this border.
    `Paint` | `getTopStroke()` Defines the fill of top side of this border.
    `BorderStrokeStyle` | `getTopStyle()` Defines the style of top side of this border.
    `BorderWidths` | `getWidths()` Defines the thickness of each side of the BorderStroke.
    `int` | `hashCode()`
    `boolean` | `isStrokeUniform()` An uniform stroke has all (top, bottom, left, right) strokes of same color, width and style

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

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

- - ### 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, we default to Color.BLACK.
        `style` - The style to use for all sides. If null, we default to BorderStrokeStyle.NONE
        `radii` - The radii to use. If null, we default to CornerRadii.EMPTY
        `widths` - The widths to use. If null, we default 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, we default to Color.BLACK.
        `style` - The style to use for all sides. If null, we default to BorderStrokeStyle.NONE
        `radii` - The radii to use. If null, we default to CornerRadii.EMPTY
        `widths` - The widths to use. If null, we default to DEFAULT_WIDTHS
        `insets` - The insets indicating where to draw the border relative to the region edges.

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

      Create a new BorderStroke, specifying all construction parameters.
      Parameters:
        `topStroke` - The fill to use on the top. If null, defaults to 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 bottomStroke
        `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, we default to square corners by using CornerRadii.EMPTY
        `widths` - The thickness of each side. If null, we default to DEFAULT_WIDTHS.
        `insets` - The insets indicating where to draw the border relative to the region edges.

  - ### Method Detail

    - #### getTopStroke

          public final Paint getTopStroke()

      Defines the fill of top side of this border.
      Default value:
        black

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

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

    - #### 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 sa rightFill

    - #### getTopStyle

          public final BorderStrokeStyle getTopStyle()

      Defines the style of top side of this border.
      Default value:
        none

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

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

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

    - #### getWidths

          public final BorderWidths getWidths()

      Defines the thickness of each side of the BorderStroke. This will never be null, and defaults to DEFAULT_WIDTHS.

    - #### getInsets

          public final Insets getInsets()

      Defines the insets of each side of the BorderStroke. This will never be null, and defaults to EMPTY.

    - #### getRadii

          public final CornerRadii getRadii()

      Defines the radii for each corner of this BorderStroke. This will never be null, and defaults to CornerRadii.EMPTY.

    - #### isStrokeUniform

          public final boolean isStrokeUniform()

      An uniform stroke has all (top, bottom, left, right) strokes of same color, width and style
      Returns:
        true if border stroke is uniform as defined above

    - #### equals

          public boolean equals(Object o)

      Overrides:
        `equals` in class `Object`

    - #### hashCode

          public int hashCode()

      Overrides:
        `hashCode` in class `Object`

Copyright (c) 2008, 2015, Oracle and/or its affiliates. All rights reserved.