Eclipse Draw2d 3.3

## org.eclipse.draw2d
Class SchemeBorder

    java.lang.Object
      org.eclipse.draw2d.AbstractBorder
          org.eclipse.draw2d.SchemeBorder

All Implemented Interfaces:
  Border, ColorConstants

Direct Known Subclasses:
  ButtonBorder, SimpleEtchedBorder, SimpleLoweredBorder, SimpleRaisedBorder

    public class SchemeBorder

extends AbstractBorder
implements ColorConstants

SchemeBorder allows the creation of borders based on `Schemes`. A Scheme is a class whose only purpose is to carry border specific information. SchemeBorder renders the border based on the information given by the Scheme set to it.

Nested Class Summary
`static class` `SchemeBorder.Scheme` Holds a set of information about a border, which can be changed to create a wide range of schemes.
`static interface` `SchemeBorder.SCHEMES` Interface which defines some commonly used schemes for the border.

Nested classes/interfaces inherited from interface org.eclipse.draw2d.ColorConstants
`ColorConstants.SystemColorFactory`

Field Summary
`protected static Color[]` `DARKER_LIGHTER` Arrays of Colors, used for shadow or highlight effects
`protected static Color[]` `DARKEST_DARKER` Arrays of Colors, used for shadow or highlight effects
`protected static Color[]` `LIGHTER_DARKER` Arrays of Colors, used for shadow or highlight effects
`protected SchemeBorder.Scheme` `scheme` The `SchemeBorder.Scheme` associated with this SchemeBorder

Fields inherited from class org.eclipse.draw2d.AbstractBorder
`tempRect`

Fields inherited from interface org.eclipse.draw2d.ColorConstants

`black, blue, button, buttonDarker, buttonDarkest, buttonLightest, cyan, darkBlue, darkGray, darkGreen, gray, green, lightBlue, lightGray, lightGreen, listBackground, listForeground, menuBackground, menuBackgroundSelected, menuForeground, menuForegroundSelected, orange, red, titleBackground, titleForeground, titleGradient, titleInactiveBackground, titleInactiveForeground, titleInactiveGradient, tooltipBackground, tooltipForeground, white, yellow`

Constructor Summary
`protected` `SchemeBorder()` Constructs a default SchemeBorder with no scheme defined.
`` `SchemeBorder(SchemeBorder.Scheme scheme)` Constructs a SchemeBorder with the Scheme given as input.

Method Summary
`Insets` `getInsets(IFigure figure)` Returns the Insets for this Border for the given Figure.
`protected SchemeBorder.Scheme` `getScheme()` Returns the scheme used by this border.
`boolean` `isOpaque()` Returns the opaque state of this border.
`protected void` `paint(Graphics graphics, IFigure fig, Insets insets, Color[] tl, Color[] br)` Paints the border using the information in the set Scheme and the inputs given.
`void` `paint(IFigure figure, Graphics g, Insets insets)` Paints the border.
`protected void` `setScheme(SchemeBorder.Scheme scheme)` Sets the Scheme for this border to the Scheme given as input.

Methods inherited from class org.eclipse.draw2d.AbstractBorder
`getPaintRectangle, getPreferredSize`

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

Field Detail

### scheme

    protected SchemeBorder.Scheme scheme

  The `SchemeBorder.Scheme` associated with this SchemeBorder

### DARKEST_DARKER

    protected static final Color[] DARKEST_DARKER

  Arrays of Colors, used for shadow or highlight effects

### LIGHTER_DARKER

    protected static final Color[] LIGHTER_DARKER

  Arrays of Colors, used for shadow or highlight effects

### DARKER_LIGHTER

    protected static final Color[] DARKER_LIGHTER

  Arrays of Colors, used for shadow or highlight effects

Constructor Detail

### SchemeBorder

    protected SchemeBorder()

  Constructs a default SchemeBorder with no scheme defined.

  Since:
    2.0

### SchemeBorder

    public SchemeBorder(SchemeBorder.Scheme scheme)

  Constructs a SchemeBorder with the Scheme given as input.

  Parameters:
    `scheme` - the Scheme to be used by this border
  Since:
    2.0

Method Detail

### getInsets

    public Insets getInsets(IFigure figure)

  Description copied from interface: `Border`
  Returns the Insets for this Border for the given Figure.

  Specified by:
    `getInsets` in interface `Border`
  Parameters:
    `figure` - The figure this border belongs to
  Returns:
    The insets
  See Also:
    `Border.getInsets(IFigure)`

### getScheme

    protected SchemeBorder.Scheme getScheme()

  Returns the scheme used by this border.

  Returns:
    the Scheme used by this border
  Since:
    2.0

### isOpaque

    public boolean isOpaque()

  Returns the opaque state of this border. Returns `true` indicating that this will fill in the area enclosed by the border.

  Specified by:
    `isOpaque` in interface `Border`
  Overrides:
    `isOpaque` in class `AbstractBorder`
  Returns:
    `true` if this border is opaque
  See Also:
    `Border.isOpaque()`

### setScheme

    protected void setScheme(SchemeBorder.Scheme scheme)

  Sets the Scheme for this border to the Scheme given as input.

  Parameters:
    `scheme` - the Scheme for this border
  Since:
    2.0

### paint

    public void paint(IFigure figure,
                      Graphics g,
                      Insets insets)

  Description copied from interface: `Border`
  Paints the border. The border should paint inside figure's `IFigure.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(int, int)`.

  Specified by:
    `paint` in interface `Border`
  Parameters:
    `figure` - The figure this border belongs to
    `g` - The graphics object used for painting
    `insets` - The insets
  See Also:
    `Border.paint(IFigure, Graphics, Insets)`

### paint

    protected void paint(Graphics graphics,
                         IFigure fig,
                         Insets insets,
                         Color[] tl,
                         Color[] br)

  Paints the border using the information in the set Scheme and the inputs given. Side widths are determined by the number of colors in the Scheme for each side.

  Parameters:
    `graphics` - the graphics object
    `fig` - the figure this border belongs to
    `insets` - the insets
    `tl` - the highlight (top/left) colors
    `br` - the shadow (bottom/right) colors

Eclipse Draw2d 3.3

Copyright (c) IBM Corp. and others 2000, 2007. All Rights Reserved.