javax.swing.border

## Class MatteBorder

- java.lang.Object
- - javax.swing.border.AbstractBorder
  - - javax.swing.border.EmptyBorder
    - - javax.swing.border.MatteBorder

All Implemented Interfaces:
  Serializable, Border

Direct Known Subclasses:
  BorderUIResource.MatteBorderUIResource

    public class MatteBorder
    extends EmptyBorder

A class which provides a matte-like border of either a solid color or a tiled icon.

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 JavaBeansTM has been added to the `java.beans` package. Please see `XMLEncoder`.

### Field Summary

Fields
`protected Color` `color`
`protected Icon` `tileIcon`

### Fields inherited from class javax.swing.border.EmptyBorder

`bottom, left, right, top`

### Constructor Summary

Constructors
Constructor and Description
`MatteBorder(Icon tileIcon)` Creates a matte border with the specified tile icon.
`MatteBorder(Insets borderInsets, Color matteColor)` Creates a matte border with the specified insets and color.
`MatteBorder(Insets borderInsets, Icon tileIcon)` Creates a matte border with the specified insets and tile icon.
`MatteBorder(int top, int left, int bottom, int right, Color matteColor)` Creates a matte border with the specified insets and color.
`MatteBorder(int top, int left, int bottom, int right, Icon tileIcon)` Creates a matte border with the specified insets and tile icon.

### Method Summary

Methods
`Insets` `getBorderInsets()` Returns the insets of the border.
`Insets` `getBorderInsets(Component c)` Returns the insets of the border.
`Insets` `getBorderInsets(Component c, Insets insets)` Reinitialize the insets parameter with this Border's current Insets.
`Color` `getMatteColor()` Returns the color used for tiling the border or null if a tile icon is being used.
`Icon` `getTileIcon()` Returns the icon used for tiling the border or null if a solid color is being used.
`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 matte border.

### Methods inherited from class javax.swing.border.AbstractBorder

`getBaseline, getBaselineResizeBehavior, getInteriorRectangle, getInteriorRectangle`

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

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

### Field Detail

#### color

    protected Color color

#### tileIcon

    protected Icon tileIcon

### Constructor Detail

#### MatteBorder

    public MatteBorder(int top,
               int left,
               int bottom,
               int right,
               Color matteColor)

Creates a matte border with the specified insets and color.

Parameters:
  `top` - the top inset of the border
  `left` - the left inset of the border
  `bottom` - the bottom inset of the border
  `right` - the right inset of the border
  `matteColor` - the color rendered for the border

#### MatteBorder

    public MatteBorder(Insets borderInsets,
               Color matteColor)

Creates a matte border with the specified insets and color.

Parameters:
  `borderInsets` - the insets of the border
  `matteColor` - the color rendered for the border
Since:
  1.3

#### MatteBorder

    public MatteBorder(int top,
               int left,
               int bottom,
               int right,
               Icon tileIcon)

Creates a matte border with the specified insets and tile icon.

Parameters:
  `top` - the top inset of the border
  `left` - the left inset of the border
  `bottom` - the bottom inset of the border
  `right` - the right inset of the border
  `tileIcon` - the icon to be used for tiling the border

#### MatteBorder

    public MatteBorder(Insets borderInsets,
               Icon tileIcon)

Creates a matte border with the specified insets and tile icon.

Parameters:
  `borderInsets` - the insets of the border
  `tileIcon` - the icon to be used for tiling the border
Since:
  1.3

#### MatteBorder

    public MatteBorder(Icon tileIcon)

Creates a matte border with the specified tile icon. The insets will be calculated dynamically based on the size of the tile icon, where the top and bottom will be equal to the tile icon's height, and the left and right will be equal to the tile icon's width.

Parameters:
  `tileIcon` - the icon to be used for tiling the border

### Method Detail

#### paintBorder

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

Paints the matte border.

Specified by:
  `paintBorder` in interface `Border`
Overrides:
  `paintBorder` in class `EmptyBorder`
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)

Returns the insets of the border.

Specified by:
  `getBorderInsets` in interface `Border`
Overrides:
  `getBorderInsets` in class `EmptyBorder`
Parameters:
  `c` - the component for which this border insets value applies
Returns:
  the new `Insets` object initialized to 0
Since:
  1.3

#### getBorderInsets

    public Insets getBorderInsets(Component c,
                         Insets insets)

Reinitialize the insets parameter with this Border's current Insets.

Overrides:
  `getBorderInsets` in class `EmptyBorder`
Parameters:
  `c` - the component for which this border insets value applies
  `insets` - the object to be reinitialized
Returns:
  the `insets` object
Since:
  1.3

#### getBorderInsets

    public Insets getBorderInsets()

Returns the insets of the border.

Overrides:
  `getBorderInsets` in class `EmptyBorder`
Since:
  1.3

#### getMatteColor

    public Color getMatteColor()

Returns the color used for tiling the border or null if a tile icon is being used.

Since:
  1.3

#### getTileIcon

    public Icon getTileIcon()

Returns the icon used for tiling the border or null if a solid color is being used.

Since:
  1.3

#### isBorderOpaque

    public boolean isBorderOpaque()

Returns whether or not the border is opaque.

Specified by:
  `isBorderOpaque` in interface `Border`
Overrides:
  `isBorderOpaque` in class `EmptyBorder`
Returns:
  false

Copyright © 1993, 2017, Oracle and/or its affiliates. All rights reserved.