Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Swing 1.1
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## javax.swing.border
Class CompoundBorder

    java.lang.Object
      |
      +--javax.swing.border.AbstractBorder
            |
            +--javax.swing.border.CompoundBorder

Direct Known Subclasses:
  BorderUIResource.CompoundBorderUIResource

public class CompoundBorder
extends AbstractBorder

A composite Border class used to compose two Border objects into a single border by nesting an inside Border object within the insets of an outside Border object. For example, this class may be used to add blank margin space to a component with an existing decorative border:

``

        Border border = comp.getBorder();
        Border margin = new EmptyBorder(10,10,10,10);
        comp.setBorder(new CompoundBorder(border, margin));

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. A future release of Swing will provide support for long term persistence.

See Also:
  Serialized Form

Field Summary
`protected Border` | `insideBorder`
`protected Border` | `outsideBorder`

Constructor Summary
`CompoundBorder()` Creates a compound border with null outside and inside borders.
`CompoundBorder(Border outsideBorder, Border insideBorder)` Creates a compound border with the specified outside and inside borders.

Method Summary
`java.awt.Insets` | `getBorderInsets(java.awt.Component c)` Returns the insets of the composite border by adding the insets of the outside border to the insets of the inside border.
`java.awt.Insets` | `getBorderInsets(java.awt.Component c, java.awt.Insets insets)` Reinitialize the insets parameter with this Border's current Insets.
`Border` | `getInsideBorder()` Returns the inside border object.
`Border` | `getOutsideBorder()` Returns the outside border object.
`boolean` | `isBorderOpaque()` Returns whether or not this compound border is opaque.
`void` | `paintBorder(java.awt.Component c, java.awt.Graphics g, int x, int y, int width, int height)` Paints the compound border by painting the outside border with the specified position and size and then painting the inside border at the specified position and size offset by the insets of the outside border.

Methods inherited from class javax.swing.border.AbstractBorder
`getInteriorRectangle, getInteriorRectangle`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### outsideBorder

    protected Border outsideBorder

### insideBorder

    protected Border insideBorder

Constructor Detail

### CompoundBorder

    public CompoundBorder()

  Creates a compound border with null outside and inside borders.

### CompoundBorder

    public CompoundBorder(Border outsideBorder,
                          Border insideBorder)

  Creates a compound border with the specified outside and inside borders. Either border may be null.
  Parameters:
    `outsideBorder` - the outside border
    `insideBorder` - the inside border to be nested

Method Detail

### isBorderOpaque

    public boolean isBorderOpaque()

  Returns whether or not this compound border is opaque. Returns true if both the inside and outside borders are non-null and opaque; returns false otherwise.
  Overrides:
    isBorderOpaque in class AbstractBorder

### paintBorder

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

  Paints the compound border by painting the outside border with the specified position and size and then painting the inside border at the specified position and size offset by the insets of the outside 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
  Overrides:
    paintBorder in class AbstractBorder

### getBorderInsets

    public java.awt.Insets getBorderInsets(java.awt.Component c,
                                           java.awt.Insets insets)

  Reinitialize the insets parameter with this Border's current Insets.
  Parameters:
    `c` - the component for which this border insets value applies
    `insets` - the object to be reinitialized
  Overrides:
    getBorderInsets in class AbstractBorder

### getBorderInsets

    public java.awt.Insets getBorderInsets(java.awt.Component c)

  Returns the insets of the composite border by adding the insets of the outside border to the insets of the inside border.
  Parameters:
    `c` - the component for which this border insets value applies
  Overrides:
    getBorderInsets in class AbstractBorder

### getOutsideBorder

    public Border getOutsideBorder()

  Returns the outside border object.

### getInsideBorder

    public Border getInsideBorder()

  Returns the inside border object.

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Swing 1.1
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Submit a bug or feature
Java is a trademark or registered trademark of Sun Microsystems, Inc. in the US and other countries.
Copyright 1993-1998 Sun Microsystems, Inc. 901 San Antonio Road,
Palo Alto, California, 94303, U.S.A. All Rights Reserved.