Module javafx.graphics
Package javafx.scene.layout

# Class BorderWidths

java.lang.Object
javafx.scene.layout.BorderWidths

public final class BorderWidths extends Object
Defines widths for four components (top, right, bottom, and left). Each width is defined as a non-negative value. This value might be interpreted either as an literal value, or as a percentage of the width or height of the Region, depending on the values for `topAsPercentage`, `rightAsPercentage`, `bottomAsPercentage`, `leftAsPercentage`. The only allowable negative value for top, right, bottom, and left is `AUTO`.

Because the BorderWidths is immutable, it can safely be used in any cache, and can safely be reused among multiple Regions.

Since:
  JavaFX 8.0

## Field Summary

Fields
Modifier and Type
Field
Description
`static final double`
`AUTO`
When used by a BorderStroke, the value of AUTO is interpreted as the value of `BorderStroke.MEDIUM` for the corresponding side.
`static final BorderWidths`
`DEFAULT`
The default BorderWidths that is used by a BorderImage when null is specified.
`static final BorderWidths`
`EMPTY`
An empty set of widths, such that all values are 0 and are literal values.
`static final BorderWidths`
`FULL`
A set of widths representing 100% on each side.

## Constructor Summary

Constructors
Constructor
Description
`BorderWidths(double width)`
Creates a new BorderWidths using the given width for all four borders, and treating this width as a literal value, and not a percentage.
`BorderWidths(double top, double right, double bottom, double left)`
Creates a new BorderWidths with the specified widths for top, right, bottom, and left.
`BorderWidths(double top, double right, double bottom, double left, boolean topAsPercentage, boolean rightAsPercentage, boolean bottomAsPercentage, boolean leftAsPercentage)`
Creates a new BorderWidths.

## Method Summary

Modifier and Type
Method
Description
`boolean`
`equals(Object o)`
`final double`
`getBottom()`
The non-negative value (with the exception of `AUTO`) indicating the border thickness on the bottom of the border.
`final double`
`getLeft()`
The non-negative value (with the exception of `AUTO`) indicating the border thickness on the left of the border.
`final double`
`getRight()`
The non-negative value (with the exception of `AUTO`) indicating the border thickness on the right of the border.
`final double`
`getTop()`
A non-negative value (with the exception of `AUTO`) indicating the border thickness on the top of the border.
`int`
`hashCode()`
`final boolean`
`isBottomAsPercentage()`
Specifies whether the `bottom` property should be interpreted as a percentage (`true`) of the region height or not (`false`).
`final boolean`
`isLeftAsPercentage()`
Specifies whether the `left` property should be interpreted as a percentage (`true`) of the region width or not (`false`).
`final boolean`
`isRightAsPercentage()`
Specifies whether the `right` property should be interpreted as a percentage (`true`) of the region width or not (`false`).
`final boolean`
`isTopAsPercentage()`
Specifies whether the `top` property should be interpreted as a percentage (`true`) of the region height or not (`false`).

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

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

## Field Details

### AUTO

public static final double AUTO
When used by a BorderStroke, the value of AUTO is interpreted as the value of `BorderStroke.MEDIUM` for the corresponding side. When used with a BorderImage, the value of AUTO means to read the corresponding value from the BorderStroke(s), and not to specify it manually.

See Also:
  - Constant Field Values

### DEFAULT

public static final BorderWidths DEFAULT
The default BorderWidths that is used by a BorderImage when null is specified. This width is a single 1 pixel top, right, bottom, and left, all interpreted as literal values.

### EMPTY

public static final BorderWidths EMPTY
An empty set of widths, such that all values are 0 and are literal values.

### FULL

public static final BorderWidths FULL
A set of widths representing 100% on each side.

## Constructor Details

### BorderWidths

public BorderWidths(double width)
Creates a new BorderWidths using the given width for all four borders, and treating this width as a literal value, and not a percentage.

Parameters:
  `width` - The border width. This cannot be negative.

### BorderWidths

public BorderWidths(double top, double right, double bottom, double left)
Creates a new BorderWidths with the specified widths for top, right, bottom, and left. None of these values may be negative. Each of these values is interpreted as a literal value, not as a percentage.

Parameters:
  `top` - The thickness of the border on the top. Must be non-negative.
  `right` - The thickness of the border on the right. Must be non-negative.
  `bottom` - The thickness of the border on the bottom. Must be non-negative.
  `left` - The thickness of the border on the left. Must be non-negative.

### BorderWidths

public BorderWidths(double top, double right, double bottom, double left, boolean topAsPercentage, boolean rightAsPercentage, boolean bottomAsPercentage, boolean leftAsPercentage)
Creates a new BorderWidths. None of the values for `top`, `right`, `bottom`, or `left` can be non-negative.

Parameters:
  `top` - The thickness of the border on the top. Must be non-negative.
  `right` - The thickness of the border on the right. Must be non-negative.
  `bottom` - The thickness of the border on the bottom. Must be non-negative.
  `left` - The thickness of the border on the left. Must be non-negative.
  `topAsPercentage` - Whether the top should be treated as a percentage.
  `rightAsPercentage` - Whether the right should be treated as a percentage.
  `bottomAsPercentage` - Whether the bottom should be treated as a percentage.
  `leftAsPercentage` - Whether the left should be treated as a percentage.

## Method Details

### getTop

public final double getTop()
A non-negative value (with the exception of `AUTO`) indicating the border thickness on the top of the border. This value can be a literal value, or can be treated as a percentage, based on the value of the `topAsPercentage` property.

Returns:
  the border thickness on the top of the border

### getRight

public final double getRight()
The non-negative value (with the exception of `AUTO`) indicating the border thickness on the right of the border. This value can be a literal value, or can be treated as a percentage, based on the value of the `rightAsPercentage` property.

Returns:
  the border thickness on the right of the border

### getBottom

public final double getBottom()
The non-negative value (with the exception of `AUTO`) indicating the border thickness on the bottom of the border. This value can be a literal value, or can be treated as a percentage, based on the value of the `bottomAsPercentage` property.

Returns:
  the border thickness on the bottom of the border

### getLeft

public final double getLeft()
The non-negative value (with the exception of `AUTO`) indicating the border thickness on the left of the border. This value can be an literal value, or can be treated as a percentage, based on the value of the `leftAsPercentage` property.

Returns:
  the border thickness on the left of the border

### isTopAsPercentage

public final boolean isTopAsPercentage()
Specifies whether the `top` property should be interpreted as a percentage (`true`) of the region height or not (`false`).

Returns:
  true if top should be interpreted as a percentage of the region height, otherwise false

### isRightAsPercentage

public final boolean isRightAsPercentage()
Specifies whether the `right` property should be interpreted as a percentage (`true`) of the region width or not (`false`).

Returns:
  true if right should be interpreted as a percentage of the region width, otherwise false

### isBottomAsPercentage

public final boolean isBottomAsPercentage()
Specifies whether the `bottom` property should be interpreted as a percentage (`true`) of the region height or not (`false`).

Returns:
  true if bottom should be interpreted as a percentage of the region height, otherwise false

### isLeftAsPercentage

public final boolean isLeftAsPercentage()
Specifies whether the `left` property should be interpreted as a percentage (`true`) of the region width or not (`false`).

Returns:
  true if left should be interpreted as a percentage of the region width, otherwise false

### equals

public boolean equals(Object o)

Overrides:
  `equals` in class `Object`

### hashCode

public int hashCode()

Overrides:
  `hashCode` in class `Object`