Spec-Zone .ru
спецификации, руководства, описания, API
Please note that the specifications and other information contained herein are not final and are subject to change. The information is being made available to you solely for purpose of evaluation.

Java™ Platform
Standard Ed. 7

DRAFT ea-b118

javax.swing.border
Class CompoundBorder

java.lang.Object
  extended by javax.swing.border.AbstractBorder
      extended by javax.swing.border.CompoundBorder
All Implemented Interfaces:
Serializable, Border
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. 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
Modifier and Type Field and Description
protected  Border insideBorder
           
protected  Border outsideBorder
           
 
Constructor Summary
Constructor and Description
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
Modifier and Type Method and Description
 Insets getBorderInsets(Component c, 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 the compound border is opaque.
 void paintBorder(Component c, 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
getBaseline, getBaselineResizeBehavior, getBorderInsets, 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

@ConstructorProperties(value={"outsideBorder","insideBorder"})
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 the compound border is opaque.

Specified by:
isBorderOpaque in interface Border
Overrides:
isBorderOpaque in class AbstractBorder
Returns:
true if the inside and outside borders are each either null or opaque; or false otherwise

paintBorder

public void paintBorder(Component c,
                        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.

Specified by:
paintBorder in interface Border
Overrides:
paintBorder in class AbstractBorder
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,
                              Insets insets)
Reinitialize the insets parameter with this Border's current Insets.

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

getOutsideBorder

public Border getOutsideBorder()
Returns the outside border object.


getInsideBorder

public Border getInsideBorder()
Returns the inside border object.


Java™ Platform
Standard Ed. 7

DRAFT ea-b118

Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.

Copyright © 1993, 2010, Oracle Corporation. All rights reserved.
DRAFT ea-b118

Scripting on this page tracks web page traffic, but does not change the content in any way.