Draw2D v2.0

org.eclipse.draw2d
Class CompoundBorder

java.lang.Object
  |
  +--org.eclipse.draw2d.AbstractBorder
        |
        +--org.eclipse.draw2d.CompoundBorder
All Implemented Interfaces:
Border
Direct Known Subclasses:
FrameBorder

public class CompoundBorder
extends AbstractBorder

CompoundBorder allows for the nesting of two borders. The nested borders are referred to as the inner and outer borders.


Field Summary
protected  Border inner
           
protected  Border outer
           
 
Fields inherited from class org.eclipse.draw2d.AbstractBorder
tempRect
 
Constructor Summary
CompoundBorder()
          Constructs a default CompoundBorder with no borders under it.
CompoundBorder(Border outer, Border inner)
          Constructs a CompoundBorder with the two borders specified as input.
 
Method Summary
 Border getInnerBorder()
          Returns the inner border of this CompoundBorder.
 Insets getInsets(IFigure figure)
          Returns the total insets required to hold both the inner and outer borders of this CompoundBorder.
 Border getOuterBorder()
          Returns the outer border of this CompoundBorder.
 Dimension getPreferredSize(IFigure fig)
          Returns the preferred width and height that this border would like to display itself properly.
 boolean isOpaque()
          Returns true if the Border completely fills the region defined above in paint.
 void paint(IFigure figure, Graphics g, Insets insets)
          paint the Border.
 
Methods inherited from class org.eclipse.draw2d.AbstractBorder
getPaintRectangle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

inner

protected Border inner

outer

protected Border outer
Constructor Detail

CompoundBorder

public CompoundBorder()
Constructs a default CompoundBorder with no borders under it.
Since:
2.0

CompoundBorder

public CompoundBorder(Border outer,
                      Border inner)
Constructs a CompoundBorder with the two borders specified as input.
Parameters:
outer - Border which is drawn on the outside.
inner - Border which is drawn inside the outer border.
Since:
2.0
Method Detail

getInnerBorder

public Border getInnerBorder()
Returns the inner border of this CompoundBorder.
Since:
2.0

getInsets

public Insets getInsets(IFigure figure)
Returns the total insets required to hold both the inner and outer borders of this CompoundBorder.
Parameters:
figure - Figure for which this is the border.
Returns:
The total insets for this border.
Since:
2.0

getPreferredSize

public Dimension getPreferredSize(IFigure fig)
Description copied from interface: Border
Returns the preferred width and height that this border would like to display itself properly.
Overrides:
getPreferredSize in class AbstractBorder

getOuterBorder

public Border getOuterBorder()
Returns the outer border of this CompoundBorder.
Since:
2.0

isOpaque

public boolean isOpaque()
Description copied from interface: Border
Returns true if the Border completely fills the region defined above in paint.

paint

public void paint(IFigure figure,
                  Graphics g,
                  Insets insets)
Description copied from interface: Border
paint the Border. The border should paint inside figure's getBounds(), inset by the parameter insets. The border generally should not paint inside its own insets. More specifically, Border b should paint inside the rectangle: figure.getBounds().getCropped(insets) and outside of the rectangle: figure.getBounds().getCropped(insets).getCropped(getInsets()) where inside is defined as rectangle.contains(x,y);

Draw2D v2.0