Package org.eclipse.draw2d.text

# Class AbstractFlowBorder

java.lang.Object
org.eclipse.draw2d.AbstractBorder
org.eclipse.draw2d.text.AbstractFlowBorder

All Implemented Interfaces:
  `Border`, `FlowBorder`

public abstract class AbstractFlowBorder extends AbstractBorder implements FlowBorder
A basis for implementing `FlowBorder`. Subclassing this class will possibly guarantee compatibility with future changes to the FlowBorder interface. This class also returns default values for many of the required methods as a convenience.

Since:
  3.1

## Field Summary

### Fields inherited from class org.eclipse.draw2d.AbstractBorder

`tempRect`

## Constructor Summary

Constructors
Constructor
Description
`AbstractFlowBorder()`

## Method Summary

Modifier and Type
Method
Description
`int`
`getBottomMargin()`
Returns the collapsable bottom margin in pixels.
`Insets`
`getInsets(IFigure figure)`
Returns the Insets for this Border for the given Figure.
`int`
`getLeftMargin()`
Returns the left margin in pixels.
`int`
`getRightMargin()`
Returns the right margin in pixels.
`int`
`getTopMargin()`
Returns the collapsable top margin in pixels.
`final void`
`paint(IFigure figure, Graphics graphics, Insets insets)`
This method is not called on FlowBorders.
`void`
`paint(FlowFigure figure, Graphics g, Rectangle where, int sides)`
Subclasses should override this method to paint each box's border.

### Methods inherited from class org.eclipse.draw2d.AbstractBorder

`getPaintRectangle, getPreferredSize, isOpaque`

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

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

### Methods inherited from interface org.eclipse.draw2d.Border

`getPreferredSize, isOpaque`

## Constructor Details

### AbstractFlowBorder

public AbstractFlowBorder()

## Method Details

### getBottomMargin

public int getBottomMargin()
Description copied from interface: `FlowBorder`
Returns the collapsable bottom margin in pixels. Margin is the space external to the border and the flow box on which it is rendered. Vertical margins (top and bottom) may collapse in some situations, such as adjacent or nested blocks.

Specified by:
  `getBottomMargin` in interface `FlowBorder`
Returns:
  the bottom margin
See Also:
  - `FlowBorder.getBottomMargin()`

### 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)`

### getLeftMargin

public int getLeftMargin()
Description copied from interface: `FlowBorder`
Returns the left margin in pixels. Margin is the space external to the border and the flow box on which it is rendered.

Specified by:
  `getLeftMargin` in interface `FlowBorder`
Returns:
  the left margin
See Also:
  - `FlowBorder.getLeftMargin()`

### getRightMargin

public int getRightMargin()
Description copied from interface: `FlowBorder`
Returns the right margin in pixels. Margin is the space external to the border and the flow box on which it is rendered.

Specified by:
  `getRightMargin` in interface `FlowBorder`
Returns:
  the right margin
See Also:
  - `FlowBorder.getRightMargin()`

### getTopMargin

public int getTopMargin()
Description copied from interface: `FlowBorder`
Returns the collapsable top margin in pixels. Margin is the space external to the border and the flow box on which it is rendered. Vertical margins (top and bottom) may collapse in some situations, such as adjacent or nested blocks.

Specified by:
  `getTopMargin` in interface `FlowBorder`
Returns:
  the top margin
See Also:
  - `FlowBorder.getTopMargin()`

### paint

public final void paint(IFigure figure, Graphics graphics, Insets insets)
This method is not called on FlowBorders. For this reason it is implemented here and made `final` so that clients override the correct method.

Specified by:
  `paint` in interface `Border`
Parameters:
  `figure` - the figure
  `graphics` - the graphics
  `insets` - the insets
See Also:
  - `FlowBorder.paint(FlowFigure, Graphics, Rectangle, int)`

### paint

public void paint(FlowFigure figure, Graphics g, Rectangle where, int sides)
Subclasses should override this method to paint each box's border.

Specified by:
  `paint` in interface `FlowBorder`
Parameters:
  `figure` - the flow figure whose border is being painted
  `g` - the graphics
  `where` - the relative location of the box
  `sides` - bits indicating sides and bidi orientation
See Also:
  - `FlowBorder.paint(FlowFigure, Graphics, Rectangle, int)`