# Deprecated API

## Contents

- Deprecated Classes
- Deprecated Fields
- Deprecated Methods
- Deprecated Constructors

Deprecated Classes
Class and Description
org.eclipse.draw2d.geometry.Ray Use `Vector` instead, which offers double precision instead of integer precision.
org.eclipse.draw2d.SubordinateUpdateManager this class is not used
org.eclipse.draw2d.graph.VirtualNode virtual nodes of an edge should be cast to Node.

Deprecated Fields
Field and Description
org.eclipse.draw2d.FlowLayout.ALIGN_LEFTTOP Use `OrderedLayout.ALIGN_TOPLEFT` instead.
org.eclipse.draw2d.FlowLayout.ALIGN_RIGHTBOTTOM Use `OrderedLayout.ALIGN_BOTTOMRIGHT` instead.
org.eclipse.draw2d.InputEvent.ALT Use `SWT.ALT` instead.
org.eclipse.draw2d.InputEvent.ANY_BUTTON Use `SWT.BUTTON_MASK` instead.
org.eclipse.draw2d.SWTEventDispatcher.ANY_BUTTON Use `SWT.BUTTON_MASK` instead.
org.eclipse.draw2d.Figure.bgColor access using `Figure.getLocalBackgroundColor()`.
org.eclipse.draw2d.Figure.border access using `Figure.getBorder()`
org.eclipse.draw2d.InputEvent.BUTTON1 Use `SWT.BUTTON1` instead.
org.eclipse.draw2d.InputEvent.BUTTON2 Use `SWT.BUTTON2` instead.
org.eclipse.draw2d.InputEvent.BUTTON3 Use `SWT.BUTTON3` instead.
org.eclipse.draw2d.InputEvent.BUTTON4 Use `SWT.BUTTON4` instead.
org.eclipse.draw2d.InputEvent.BUTTON5 Use `SWT.BUTTON5` instead.
org.eclipse.draw2d.InputEvent.CONTROL Use `SWT.CONTROL` instead.
org.eclipse.draw2d.RoundedRectangle.corner Use `RoundedRectangle.getCornerDimensions()` instead.
org.eclipse.draw2d.graph.Edge.delta use accessors instead
org.eclipse.draw2d.graph.Edge.end use `Edge.getPoints()`
org.eclipse.draw2d.ConnectionLocator.END Use `ConnectionLocator.TARGET`
org.eclipse.draw2d.Figure.fgColor access using `Figure.getLocalForegroundColor()`.
org.eclipse.draw2d.FlowLayout.fill Use `OrderedLayout.setStretchMinorAxis(boolean)` and `OrderedLayout.isStretchMinorAxis()` instead.
org.eclipse.draw2d.Figure.font access using `Figure.getLocalFont()`
org.eclipse.draw2d.OrderedLayout.horizontal Use `OrderedLayout.setHorizontal(boolean)` and `OrderedLayout.isHorizontal()` instead.
org.eclipse.draw2d.ToolbarLayout.HORIZONTAL Unused.
org.eclipse.draw2d.OrderedLayout.HORIZONTAL Pulled up from derived layout manager and deprecated here because unused.
org.eclipse.draw2d.graph.Edge.isFeedback INTERNAL field, use accessor method Indicates an edge was inverted during the layout
org.eclipse.draw2d.Shape.lineStyle Use `Shape.setLineStyle(int)` instead.
org.eclipse.draw2d.Shape.lineWidth Use `Shape.setLineWidth(int)` or `Shape.setLineWidthFloat(float)` instead.
org.eclipse.draw2d.FlowLayout.majorAlignment Use `FlowLayout.getMajorAlignment()` and `FlowLayout.setMajorAlignment(int)` instead.
org.eclipse.draw2d.FlowLayout.majorSpacing Use `FlowLayout.getMajorSpacing()` and `FlowLayout.setMajorSpacing(int)` instead.
org.eclipse.draw2d.ToolbarLayout.matchWidth Use `OrderedLayout.setStretchMinorAxis(boolean)` and `OrderedLayout.isStretchMinorAxis()` instead.
org.eclipse.draw2d.ConnectionLocator.MIDPOINT Use `ConnectionLocator.MIDDLE` instead, since the location is not the midpoint of a line-segment, but the middle of a polyline.
org.eclipse.draw2d.OrderedLayout.minorAlignment Use `OrderedLayout.getMinorAlignment()` and `OrderedLayout.setMinorAlignment(int)` instead.
org.eclipse.draw2d.FlowLayout.minorSpacing Use `FlowLayout.getMinorSpacing()` and `FlowLayout.setMinorSpacing(int)` instead.
org.eclipse.draw2d.graph.Edge.offsetSource use accessors instead
org.eclipse.draw2d.graph.Edge.offsetTarget use accessors instead
org.eclipse.draw2d.graph.Edge.padding use accessors instead
org.eclipse.draw2d.geometry.PrecisionDimension.preciseHeight Use `PrecisionDimension.setPreciseHeight(double)` and `PrecisionDimension.preciseHeight()` instead. This field will become private in the future.
org.eclipse.draw2d.geometry.PrecisionRectangle.preciseHeight Use `PrecisionRectangle.setPreciseHeight(double)` and `PrecisionRectangle.preciseHeight()` instead. This field will become private in the future.
org.eclipse.draw2d.geometry.PrecisionDimension.preciseWidth Use `PrecisionDimension.setPreciseWidth(double)` and `PrecisionDimension.preciseWidth()` instead. This field will become private in the future.
org.eclipse.draw2d.geometry.PrecisionRectangle.preciseWidth Use `PrecisionRectangle.setPreciseWidth(double)` and `PrecisionRectangle.preciseWidth()` instead. This field will become private in the future.
org.eclipse.draw2d.geometry.PrecisionPoint.preciseX Use `PrecisionPoint.setPreciseX(double)` and `PrecisionPoint.preciseX()` instead. This field will become private in future versions.
org.eclipse.draw2d.geometry.PrecisionRectangle.preciseX Use `PrecisionRectangle.setPreciseX(double)` and `PrecisionRectangle.preciseX()` instead. This field will become private in the future.
org.eclipse.draw2d.geometry.PrecisionPoint.preciseY Use `PrecisionPoint.setPreciseY(double)` and `PrecisionPoint.preciseY()` instead. This field will become private in future versions.
org.eclipse.draw2d.geometry.PrecisionRectangle.preciseY Use `PrecisionRectangle.setPreciseX(double)` and `PrecisionRectangle.preciseY()` instead. This field will become private in the future.
org.eclipse.draw2d.graph.DirectedGraph.ranks
org.eclipse.draw2d.graph.Node.rowOrder use `Node.setRowConstraint(int)` and `Node.getRowConstraint()`
org.eclipse.draw2d.InputEvent.SHIFT Use `SWT.SHIFT` instead.
org.eclipse.draw2d.graph.Node.sortValue for internal use only
org.eclipse.draw2d.ToolbarLayout.spacing Use `ToolbarLayout.getSpacing()` and `ToolbarLayout.setSpacing(int)` instead.
org.eclipse.draw2d.graph.Edge.start use `Edge.getPoints()`
org.eclipse.draw2d.ConnectionLocator.START Use `ConnectionLocator.SOURCE`
org.eclipse.draw2d.Figure.toolTip access using `Figure.getToolTip()`
org.eclipse.draw2d.ToolbarLayout.VERTICAL Unused.
org.eclipse.draw2d.OrderedLayout.VERTICAL Pulled up from derived layout manager and deprecated here because unused.
org.eclipse.draw2d.graph.Edge.width use accessors instead

Deprecated Methods
Method and Description
org.eclipse.draw2d.geometry.Rectangle.crop(Insets) Use `Rectangle.shrink(Insets)` instead.
org.eclipse.draw2d.geometry.Dimension.expand(Point) Use `Dimension.expand(int, int)` instead.
org.eclipse.draw2d.Figure.fireMoved() call fireFigureMoved() or fireCoordinateSystemChanged() as appropriate
org.eclipse.draw2d.geometry.Rectangle.getCropped(Insets) Use `Rectangle.getShrinked(Insets)` instead.
org.eclipse.draw2d.geometry.Dimension.getDifference(Dimension) Use `Dimension.getShrinked(Dimension)` instead.
org.eclipse.draw2d.geometry.Point.getDistance2(Point) Use `Point.getDistance(Point)` and square the result instead.
org.eclipse.draw2d.geometry.Point.getDistanceOrthogonal(Point) May not be guaranteed by precision subclasses and should thus not be used any more.
org.eclipse.draw2d.FigureUtilities.getGC() do not mess with this GC
org.eclipse.draw2d.ToolbarLayout.getStretchMinorAxis() Use `ToolbarLayout.isStretchMinorAxis()` instead.
org.eclipse.draw2d.ScrollPane.getView() use getContents()
org.eclipse.draw2d.LayeredPane.removeLayer(IFigure) call `IFigure.remove(IFigure)` instead
org.eclipse.draw2d.geometry.PrecisionRectangle.setHeight(double) Use `PrecisionRectangle.setPreciseHeight(double)` instead.
org.eclipse.draw2d.Label.setIconDimension(Dimension) the icon is automatically displayed at 1:1
org.eclipse.draw2d.ToolbarLayout.setMatchWidth(boolean) use `ToolbarLayout.setStretchMinorAxis(boolean)`
org.eclipse.draw2d.ToolbarLayout.setVertical(boolean) Use `OrderedLayout.setHorizontal(boolean)` with argument `false` instead.
org.eclipse.draw2d.ScrollPane.setView(IFigure) call setContents(IFigure) instead
org.eclipse.draw2d.geometry.PrecisionRectangle.setWidth(double) Use `PrecisionRectangle.setPreciseWidth(double)` instead.
org.eclipse.draw2d.geometry.PrecisionRectangle.setX(double) Use `PrecisionRectangle.setPreciseX(double)` instead.
org.eclipse.draw2d.geometry.PrecisionRectangle.setY(double) Use `PrecisionRectangle.setPreciseX(double)` instead.
org.eclipse.draw2d.graph.Rank.sort() Do not call
org.eclipse.draw2d.geometry.Rectangle.union(Dimension) Union with a dimension generally does not make much sense, thus deprecating this. Use `Dimension.max(Dimension, Dimension)` and `Rectangle.setSize(Dimension)` to implement the desired behavior instead.
org.eclipse.draw2d.geometry.PrecisionRectangle.union(PrecisionRectangle) Use `PrecisionRectangle.union(Rectangle)` instead
org.eclipse.draw2d.geometry.PrecisionPoint.updateInts() This method should not be accessed by clients any more (it will be made private in future releases). The update of integer and precision fields is performed automatically if `PrecisionPoint.preciseX` and `PrecisionPoint.preciseY` field values are not manipulated directly, but only via respective methods offered by this class.

org.eclipse.draw2d.geometry.PrecisionDimension.updateInts()
This method should not be accessed by clients any more (it will be made private in future releases). The update of integer and precision fields is performed automatically if `PrecisionDimension.preciseWidth` and `PrecisionDimension.preciseHeight` field values are not manipulated directly, but only via respective methods offered by this class.

org.eclipse.draw2d.geometry.PrecisionRectangle.updateInts()
This method should not be accessed by clients any more (it will be made private in future releases). The update of integer and precision fields is performed automatically if `PrecisionRectangle.preciseX`, `PrecisionRectangle.preciseY`, `PrecisionRectangle.preciseWidth`, and `PrecisionRectangle.preciseHeight` field values are not manipulated directly, but only via respective methods offered by this class.

Deprecated Constructors
Constructor and Description
org.eclipse.draw2d.MouseEvent(int, int, EventDispatcher, IFigure, int, int) Use `MouseEvent.MouseEvent(EventDispatcher, IFigure, org.eclipse.swt.events.MouseEvent)` instead.
org.eclipse.draw2d.geometry.Point(double, double) Use `PrecisionPoint` or `Point.Point(int, int)` instead.
org.eclipse.draw2d.graph.VirtualNode(Edge, int) This class is for internal use only.