Module java.desktop
Package javax.swing.plaf

## Class BorderUIResource

- java.lang.Object
- - javax.swing.plaf.BorderUIResource

- All Implemented Interfaces:
    `Serializable`, `Border`, `UIResource`

      public class BorderUIResource
      extends Object
      implements Border, UIResource, Serializable

  A Border wrapper class which implements UIResource. UI classes which set border properties should use this class to wrap any borders specified as defaults. This class delegates all method invocations to the Border "delegate" object specified at construction.

  Warning: Serialized objects of this class will not be compatible with future Swing releases. The current serialization support is appropriate for short term storage or RMI between applications running the same version of Swing. As of 1.4, support for long term storage of all JavaBeans™ has been added to the `java.beans` package. Please see `XMLEncoder`.

  See Also:
    `UIResource`, Serialized Form

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class | Description
    --- | --- | ---
    `static class` | `BorderUIResource.BevelBorderUIResource` | A bevel border UI resource.
    `static class` | `BorderUIResource.CompoundBorderUIResource` | A compound border UI resource.
    `static class` | `BorderUIResource.EmptyBorderUIResource` | An empty border UI resource.
    `static class` | `BorderUIResource.EtchedBorderUIResource` | An etched border UI resource.
    `static class` | `BorderUIResource.LineBorderUIResource` | A line border UI resource.
    `static class` | `BorderUIResource.MatteBorderUIResource` | A matte border UI resource.
    `static class` | `BorderUIResource.TitledBorderUIResource` | A titled border UI resource.

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `BorderUIResource​(Border delegate)` | Creates a UIResource border object which wraps an existing Border instance.

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `static Border` | `getBlackLineBorderUIResource​()` | Returns a black line border UI resource.
    `Insets` | `getBorderInsets​(Component c)` | Returns the insets of the border.
    `static Border` | `getEtchedBorderUIResource​()` | Returns a etched border UI resource.
    `static Border` | `getLoweredBevelBorderUIResource​()` | Returns a lowered bevel border UI resource.
    `static Border` | `getRaisedBevelBorderUIResource​()` | Returns a raised bevel border UI resource.
    `boolean` | `isBorderOpaque​()` | Returns whether or not the border is opaque.
    `void` | `paintBorder​(Component c, Graphics g, int x, int y, int width, int height)` | Paints the border for the specified component with the specified position and size.

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

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

- - ### Constructor Detail

    - #### BorderUIResource

          public BorderUIResource​(Border delegate)

      Creates a UIResource border object which wraps an existing Border instance.
      Parameters:
        `delegate` - the border being wrapped

  - ### Method Detail

    - #### getEtchedBorderUIResource

          public static Border getEtchedBorderUIResource​()

      Returns a etched border UI resource.
      Returns:
        a etched border UI resource

    - #### getLoweredBevelBorderUIResource

          public static Border getLoweredBevelBorderUIResource​()

      Returns a lowered bevel border UI resource.
      Returns:
        a lowered bevel border UI resource

    - #### getRaisedBevelBorderUIResource

          public static Border getRaisedBevelBorderUIResource​()

      Returns a raised bevel border UI resource.
      Returns:
        a raised bevel border UI resource

    - #### getBlackLineBorderUIResource

          public static Border getBlackLineBorderUIResource​()

      Returns a black line border UI resource.
      Returns:
        a black line border UI resource

    - #### paintBorder

          public void paintBorder​(Component c,
                                  Graphics g,
                                  int x,
                                  int y,
                                  int width,
                                  int height)

      Description copied from interface: `Border`
      Paints the border for the specified component with the specified position and size.
      Specified by:
        `paintBorder` in interface `Border`
      Parameters:
        `c` - the component for which this border is being painted
        `g` - the paint graphics
        `x` - the x position of the painted border
        `y` - the y position of the painted border
        `width` - the width of the painted border
        `height` - the height of the painted border

    - #### getBorderInsets

          public Insets getBorderInsets​(Component c)

      Description copied from interface: `Border`
      Returns the insets of the border.
      Specified by:
        `getBorderInsets` in interface `Border`
      Parameters:
        `c` - the component for which this border insets value applies
      Returns:
        an `Insets` object containing the insets from top, left, bottom and right of this `Border`

    - #### isBorderOpaque

          public boolean isBorderOpaque​()

      Description copied from interface: `Border`
      Returns whether or not the border is opaque. If the border is opaque, it is responsible for filling in it's own background when painting.
      Specified by:
        `isBorderOpaque` in interface `Border`
      Returns:
        true if this `Border` is opaque