# Package org.eclipse.draw2d

Primary package containing general interfaces and implementation classes.

See: Description

Interface Summary
Interface | Description
--- | ---
ActionListener | A Listener interface for receiving `ActionEvents`.
AncestorListener | Classes which implement this interface provide methods to respond to changes in the ancestor properties of a Figure.
AnchorListener | Classes which implement this interface provide a method to notify that an anchor has moved.
Bendpoint | A helper used to calculate the point at which a `Connection` should bend.
Border | A decoration on a Figure.
ButtonBorder.SCHEMES | Interface defining commonly used schemes for the ButtonBorder.
ChangeListener | A generic state listener
ColorConstants | A collection of color-related constants.
Connection | A Connection is a figure that connects two objects.
ConnectionAnchor | An object to which a `Connection` will be anchored.
ConnectionRouter | Routes a `Connection`, possibly using a constraint.
CoordinateListener |
FigureListener | A listener interface for receiving notification that an IFigure has moved.
FocusListener | A listener interface for receiving `FocusEvents`.
FreeformFigure | A figure that allows its children to extend into negative coordinates.
FreeformListener | Listens for extent changes in `FreeformFigures`.
GraphicsSource | Provides a `Graphics` object for painting.
IClippingStrategy | A clipping strategy used to specify the clipping region for child figures.
IFigure | A lightweight graphical object.
IImageFigure | Interface for image figures WARNING: This interface is not intended to be implemented by clients.
IImageFigure.ImageChangedListener | Listener to the image figure to track changes to the containede SWT Image
IScrollableFigure | Interface to stereotype those figures that contain a ScrollPane with a nested Viewport.
KeyListener | A listener interface for receiving `KeyEvents` from the keyboard.
LabeledBorder | LabeledBorders have a text message somewhere on them.
LayoutListener | Classes which implement this interface provide callback hooks for various layout related events.
LayoutManager | A helper for positioning child figures and determining the ideal size for a figure with children.
Locator | Controls the location of an IFigure.
MouseListener | A listener interface for receiving mouse button events.
MouseMotionListener | A listener interface for receiving mouse motion events.
Orientable | An interface for objects that can be either horizontally or vertically oriented.
PositionConstants | Constants representing cardinal directions and relative positions.
RangeModel | This interface represents a range of possible values as well as the current values.
RotatableDecoration | An IFigure that can be rotated.
RoutingListener | Classes which implement this interface provide callback hooks for various routing related events.
ScalableFigure | A figure that can be scaled.
SchemeBorder.SCHEMES | Interface which defines some commonly used schemes for the border.
TreeSearch | A helper used in depth-first searches of a figure subgraph.
UpdateListener | An interface used to notify listeners that the listened to object is updating.

Class Summary
Class | Description
--- | ---
AbsoluteBendpoint | AbsoluteBendpoint is a Bendpoint that defines its location simply as its X and Y coordinates.
AbstractBackground | A special border which can paint both underneath and on top of a Figure.
AbstractBorder | Provides generic support for borders.
AbstractConnectionAnchor | Provides support for anchors which depend on a figure for thier location.
AbstractHintLayout | The foundation for layout managers which are sensitive to width and/or height hints.
AbstractImageFigure | Abstract implementation of the image figure.
AbstractLabeledBorder | Provides support for a border with a label describing the contents of which it is surrounding.
AbstractLayout | Provides generic support for LayoutManagers.
AbstractLocator | Places a figure relative to a point determined by the subclass.
AbstractPointListShape | Base superclass for all polylines/polygons
AbstractRouter | Base class for implementing a connection router.
AccessibleBase | The base class for accessible objects which provides accesibilty clients with a unique ID.
ActionEvent | An event that occurs as a result of an action being performed.
AncestorListener.Stub | An empty implementation of AncestorListener for convenience.
Animation | A utility for coordinating figure animations.
Animator | Animates some aspect of a figure.
ArrowButton | A Button which displays a triangle pointing in a specified direction.
ArrowLocator | Locator used to place a `RotatableDecoration` on a `Connection`.
AutomaticRouter | An abstract router implementation which detects when multiple connections are overlapping.
BendpointConnectionRouter | Routes `Connection`s through a `List` of `Bendpoints`.
BendpointLocator | Places a figure relative to a specified bend in a `Connection`.
BorderLayout |
Button | A Button usually has a border and appears to move up and down in response to being pressed.
ButtonBorder | Creates a border for a clickable type of figure, which works in conjunction with the Figure and its model.
ButtonBorder.ButtonScheme | Provides for a scheme to represent the borders of clickable figures like buttons.
ButtonGroup | A ButtonGroup holds a group of `Clickable's` models and provides unique selection in them.
ButtonModel | A model for buttons containing several properties, including enabled, pressed, selected, rollover enabled and mouseover.
ChangeEvent | An event for property changes.
CheckBox | A Checkbox is a toggle figure which toggles between the checked and unchecked figures to simulate a check box.
ChopboxAnchor | The ChopboxAnchor's location is found by calculating the intersection of a line drawn from the center point of its owner's box to a reference point on that box.
Clickable | A Clickable responds to mouse clicks in some way (determined by a ClickBehavior) and fires action events.
ColorConstants.SystemColorFactory |
CompoundBorder | CompoundBorder allows for the nesting of two borders.
ConnectionAnchorBase | Provides support for a ConnectionAnchor.
ConnectionEndpointLocator | Used to place IFigures along the endpoint or starting point of a `Connection`.
ConnectionLayer | Layer designed specifically to handle the presence of connections.
ConnectionLocator | Repositions a `Figure` attached to a `Connection` when the Connection is moved.
ConnectionRouter.NullConnectionRouter | Routes Connections directly from the source anchor to the target anchor with no bendpoints in between.
Cursors | A collection of cursors.
DefaultRangeModel | Generic implementation for a RangeModel.
DeferredUpdateManager | An UpdateManager that asynchronously updates the affected figures.
DelegatingLayout | Figures using a DelegatingLayout as their layout manager give location responsibilities to their children.
Ellipse | An figure that draws an ellipse filling its bounds.
EllipseAnchor | Similar to a `ChopboxAnchor`, except this anchor is located on the ellipse defined by the owners bounding box.
EventDispatcher | Listens to various SWT events and dispatches these events to interested Draw2d objects.
EventDispatcher.AccessibilityDispatcher | Combines `AccessibleControlListener` and `AccessibleListener` .
EventListenerList | This class is intended for internal use only.
ExclusionSearch | A `TreeSearch` that excludes figures contained in a `Collection`.
FanRouter | Automatic router that spreads its `Connections` in a fan-like fashion upon collision.
Figure | The base implementation for graphical figures.
Figure.FigureIterator | Iterates over a Figure's children.
Figure.IdentitySearch | A search which does not filter any figures. since 3.0
FigureCanvas | A scrolling Canvas that contains `Figures` viewed through a `Viewport`.
FigureUtilities | Provides miscellaneous Figure operations.
FlowLayout | Lays out children in rows or columns, wrapping when the current row/column is filled.
FocusBorder | A Border that looks like the system's focus rectangle.
FocusEvent | An event that occurs when an `IFigure` gains or loses focus.
FocusListener.Stub | An empty implementation of FocusListener for convenience.
FocusTraverseManager | This class is a helper to the `SWTEventDispatcher`.
FrameBorder | Provides for a frame-like border which contains a title bar for holding the title of a Figure.
FreeformLayer | A Layer that can extend in all 4 directions.
FreeformLayeredPane | A LayeredPane that contains `FreeformLayers`.
FreeformLayout | A layout for `FreeformFigures`.
FreeformViewport | A viewport for `FreeformFigures`.
GhostImageFigure | A figure used to render a partly transparent copy of an original source figure.
Graphics | The Graphics class allows you to draw to a surface.
GridData | `GridData` is the layout data object associated with `GridLayout`.
GridLayout | Lays out children into a Grid arrangement in which overall aligment and spacing can be configured, as well as specific layout requirements for the each individual member of the GridLayout.
GroupBoxBorder | A labeled border intended to house a Figure with a group of children.
IFigure.NoInsets | Insets that are all 0.
ImageFigure | A Figure that simply contains an Image.
ImageUtilities |
InputEvent | The base class for Draw2d events.
KeyEvent | An event caused by the user interacting with the keyboard.
KeyListener.Stub | An empty implementation of KeyListener for convenience.
Label | A figure that can display text and/or an image.
LabelAnchor | LabelAnchors must have an owner of type `Label`.
LabeledContainer | A Container with a title bar describing the contents of the container.
Layer | A transparent figure intended to be added exclusively to a `LayeredPane`, who has the responsibilty of managing its layers.
LayeredPane | A figure capable of holding any number of layers.
LayoutAnimator | Animates the layout of a figure's children.
LayoutListener.Stub | A stub implementation which implements all of the declared methods.
LightweightSystem | The LightweightSystem is the link between SWT and Draw2d.
LineBorder | Provides for a line border with sides of equal widths.
ManhattanConnectionRouter | Provides a `Connection` with an orthogonal route between the Connection's source and target anchors.
MarginBorder | A border that provides blank padding.
MidpointLocator | A ConnectionLocator that is used to place figures at the midpoint between two points on a `Connection`.
MouseEvent | An event caused by the user interacting with the mouse.
MouseListener.Stub | An empty implementation of MouseListener for convenience.
MouseMotionListener.Stub | An empty implementation of MouseMotionListener for convenience.
NativeGraphicsSource | A graphics source that posts a paint request to the control rather than constructing GC on it directly.
OrderedLayout | Abstract superclass for layout managers that arrange their children in columns/rows.
Panel | A General purpose Container.
Polygon | Renders a `PointList` as a polygonal shape.
PolygonDecoration | A rotatable, polygon shaped decoration most commonly used for decorating the ends of `polylines`.
PolygonShape | Renders a `PointList` as a polygonal shape.
Polyline | Renders a `PointList` as a series of line segments.
PolylineConnection | An implementation of `Connection` based on Polyline.
PolylineDecoration | A decorative Figure intended to be placed on a `Polyline`.
PolylineShape | Renders a `PointList` as a series of line segments.
PopUpHelper | Provides abstract support for classes that manage popups.
PrinterGraphics | A scalable graphics object used to print to a printer.
PrintFigureOperation | Class responsible for printing Figures.
PrintOperation | Implementation of draw2d's printing capabilities.
PuristicScrollPane | A `ScrollPane` with transparent `ScrollBar`s.
RectangleFigure | Draws a rectangle whose size is determined by the bounds set to it.
RelativeBendpoint | RelativeBendpoint is a Bendpoint that calculates its location based on its distance from the start and end points of the `Connection`, as well as its weight.
RelativeLocator | Places a handle relative to a figure's bounds.
RoundedRectangle | Draws a Rectangle whose corners are rounded in appearance.
RoundedRectangleAnchor | Anchor for rounded rectangles which is always on a line between the center and the reference point.
RoutingAnimator | Animates the routing of a connection.
RoutingListener.Stub | A stub implementation which implements all required methods.
ScalableFreeformLayeredPane |
ScalableLayeredPane | A non-freeform, scalable layered pane.
ScalablePolygonShape | Renders a `PointList` as a polygonal shape scaled in accordance with bounds to fill whole figure.
ScaledGraphics | A Graphics object able to scale all operations based on the current scale factor.
ScaledGraphics.State | The internal state of the scaled graphics.
SchemeBorder | SchemeBorder allows the creation of borders based on `Schemes`.
SchemeBorder.Scheme | Holds a set of information about a border, which can be changed to create a wide range of schemes.
ScrollBar | Provides for the scrollbars used by the `ScrollPane`.
ScrollBarLayout | Lays out the Figures that make up a ScrollBar.
ScrollPane | A class which implements automatic horizontal and/or vertical scrolling for a single IFigure child.
ScrollPaneLayout | The ScrollPaneLayout is responsible for laying out the `Viewport` and `ScrollBars` of a `ScrollPane`.
ScrollPaneSolver | This class handles the calculation of solving for the area of a `ScrollPane`'s viewport and insets.
ScrollPaneSolver.Result | Container class for the results of ScrollPaneSolver's solve method
Shape | Provides abstract support for a variety of shapes.
ShortestPathConnectionRouter | Routes multiple connections around the children of a given container figure.
SimpleEtchedBorder | Provides a two pixel wide constant sized border, having an etched look.
SimpleLoweredBorder | Provides a lowered border.
SimpleRaisedBorder | Provides a raised border.
StackLayout | Figures using the StackLayout as their layout manager have their children placed on top of one another.
SubordinateUpdateManager | Deprecated this class is not used
SWTEventDispatcher | The SWTEventDispatcher provides draw2d with the ability to dispatch SWT Events.
SWTGraphics | A concrete implementation of `Graphics` using an SWT `GC`.
TextUtilities | Provides miscellaneous text operations.
TitleBarBorder | Border provides a title bar on the Figure for which this is the border of.
Toggle | Basic Rule for Toggle: Whoever creates the toggle is reponsible for response changes for it (selection, rollover, etc).
ToggleButton | A Toggle that appears like a 3-dimensional button.
ToggleModel | ButtonModel that supports toggle buttons.
ToolbarLayout | Arranges figures in a single row or column.
ToolTipHelper | This class is used by SWTEventDispatcher as support to display Figure tooltips on a mouse hover event.
Triangle | A triangular graphical figure.
UpdateManager | Update managers handle the job of laying out and repainting figures.
Viewport | A Viewport is a flexible window onto a `ScrollPane` and represents the visible portion of the ScrollPane.
ViewportAwareConnectionLayerClippingStrategy | Clipping strategy for connection layer, which takes into account nested view ports and truncates those parts of connections which reach outside and are thus not visible.
ViewportLayout | Layout for a viewport.
ViewportUtilities | Utility class to support working with `Viewport`s.
XYAnchor | Supports an anchor in the XY layout.
XYLayout | This class implements the `LayoutManager` interface using the XY Layout algorithm.

## Package org.eclipse.draw2d Description

Primary package containing general interfaces and implementation classes.