Package org.eclipse.graphiti.ui.internal.figures

## Class GFAbstractPointListShape

- java.lang.Object
- - org.eclipse.draw2d.Figure
  - - org.eclipse.draw2d.Shape
    - - org.eclipse.graphiti.ui.internal.figures.GFAbstractShape
      - - org.eclipse.graphiti.ui.internal.figures.GFAbstractPointListShape

All Implemented Interfaces:
  `org.eclipse.draw2d.IFigure`, `org.eclipse.gef.handles.HandleBounds`, `IVisualStateChangeListener`, `IVisualStateHolder`

Direct Known Subclasses:
  `GFPolyline`

    public abstract class GFAbstractPointListShape
    extends GFAbstractShape

An abstract class for those Graphiti Shapes, which are based on a list of points, e.g. polyline and polygon.

This abstract class only adds the point-list and the setter/getter methods for it. It also takes care to reset the bounds and repaint the figure when the point-list changes. But it does not add any details how the Shape is outlined.

### Nested Class Summary

### Nested classes/interfaces inherited from class org.eclipse.draw2d.Figure

`org.eclipse.draw2d.Figure.FigureIterator, org.eclipse.draw2d.Figure.IdentitySearch`

### Nested classes/interfaces inherited from interface org.eclipse.draw2d.IFigure

`org.eclipse.draw2d.IFigure.NoInsets`

### Field Summary

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

`lineStyle, lineWidth`

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

`bgColor, border, bounds, fgColor, flags, font, MAX_FLAG, maxSize, minSize, NO_MANAGER, prefSize, toolTip`

### Fields inherited from interface org.eclipse.draw2d.IFigure

`MAX_DIMENSION, MIN_DIMENSION, NO_INSETS`

### Constructor Summary

Constructors
`GFAbstractPointListShape​(IPictogramElementDelegate pictogramElementDelegate, GraphicsAlgorithm graphicsAlgorithm)` Creates a new GFAbstractPointListShape.

### Method Summary

All Methods Instance Methods Concrete Methods
`void` `addPoint​(org.eclipse.draw2d.geometry.Point pt)` Adds the passed point to the point-list.
`org.eclipse.draw2d.geometry.Point` `getEnd()` Returns the last point in the point-list.
`org.eclipse.draw2d.geometry.PointList` `getPoints()` Returns the points in this Shape by reference.
`org.eclipse.draw2d.geometry.Point` `getStart()` Returns the first point in the point-list.
`void` `insertPoint​(org.eclipse.draw2d.geometry.Point pt, int index)` Inserts a given point at a specified index in the point-list.
`void` `removeAllPoints()` This method results in a recalculation of the Shapes bounding box.
`void` `removePoint​(int index)` Removes a point at a given index from the point-list.
`void` `setEnd​(org.eclipse.draw2d.geometry.Point end)` Sets the end point of the point-list.
`void` `setPoint​(org.eclipse.draw2d.geometry.Point pt, int index)` Overwrites the point at `index` with the Point `pt` .
`void` `setPoints​(org.eclipse.draw2d.geometry.PointList points)` Sets the list of points to be used by this Shape by reference.
`void` `setStart​(org.eclipse.draw2d.geometry.Point start)` Sets the start point of the point-list.

### Methods inherited from class org.eclipse.graphiti.ui.internal.figures.GFAbstractShape

`containsPoint, containsPointInArea, containsPointInFigure, createPath, fillPath, fillShape, getClickArea, getConfigurationProvider, getGraphicsAlgorithm, getHandleBounds, getLineWidth, getPictogramElementDelegate, getPreferences, getSelectionBorder, getVisualState, getZoomLevel, outlineShape, paintFigure, paintShape, setClickArea, setSelectionBorder, transformToFillBounds, visualStateChanged`

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

`getAlpha, getAntialias, getLineAttributes, getLineCap, getLineDash, getLineDashOffset, getLineJoin, getLineMiterLimit, getLineStyle, getLineWidth, getLineWidthFloat, setAlpha, setAlpha, setAntialias, setAntialias, setFill, setFillXOR, setLineAttributes, setLineCap, setLineDash, setLineDashOffset, setLineJoin, setLineMiterLimit, setLineStyle, setLineWidth, setLineWidthFloat, setOutline, setOutlineXOR, setXOR`

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

`add, add, add, add, addAncestorListener, addCoordinateListener, addFigureListener, addFocusListener, addKeyListener, addLayoutListener, addListener, addMouseListener, addMouseMotionListener, addNotify, addPropertyChangeListener, addPropertyChangeListener, containsPoint, erase, findDescendantAtExcluding, findFigureAt, findFigureAt, findFigureAt, findFigureAtExcluding, findMouseEventTargetAt, findMouseEventTargetInDescendantsAt, fireCoordinateSystemChanged, fireFigureMoved, fireMoved, firePropertyChange, firePropertyChange, firePropertyChange, getBackgroundColor, getBorder, getBounds, getChildren, getClientArea, getClientArea, getClippingStrategy, getCursor, getFlag, getFont, getForegroundColor, getInsets, getLayoutManager, getListeners, getLocalBackgroundColor, getLocalFont, getLocalForegroundColor, getLocation, getMaximumSize, getMinimumSize, getMinimumSize, getParent, getPreferredSize, getPreferredSize, getSize, getToolTip, getUpdateManager, handleFocusGained, handleFocusLost, handleKeyPressed, handleKeyReleased, handleMouseDoubleClicked, handleMouseDragged, handleMouseEntered, handleMouseExited, handleMouseHover, handleMouseMoved, handleMousePressed, handleMouseReleased, hasFocus, internalGetEventDispatcher, intersects, invalidate, invalidateTree, isCoordinateSystem, isEnabled, isFocusTraversable, isMirrored, isMouseEventTarget, isOpaque, isRequestFocusEnabled, isShowing, isValid, isValidationRoot, isVisible, layout, paint, paintBorder, paintChildren, paintClientArea, primTranslate, remove, removeAll, removeAncestorListener, removeCoordinateListener, removeFigureListener, removeFocusListener, removeKeyListener, removeLayoutListener, removeListener, removeMouseListener, removeMouseMotionListener, removeNotify, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, revalidate, setBackgroundColor, setBorder, setBounds, setChildrenDirection, setChildrenEnabled, setChildrenOrientation, setClippingStrategy, setConstraint, setCursor, setEnabled, setFlag, setFocusTraversable, setFont, setForegroundColor, setLayoutManager, setLocation, setMaximumSize, setMinimumSize, setOpaque, setParent, setPreferredSize, setPreferredSize, setRequestFocusEnabled, setSize, setSize, setToolTip, setValid, setVisible, translate, translateFromParent, translateToAbsolute, translateToParent, translateToRelative, useLocalCoordinates, validate`

### 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.IFigure

`add, add, add, add, addAncestorListener, addCoordinateListener, addFigureListener, addFocusListener, addKeyListener, addLayoutListener, addMouseListener, addMouseMotionListener, addNotify, addPropertyChangeListener, addPropertyChangeListener, containsPoint, erase, findFigureAt, findFigureAt, findFigureAt, findFigureAtExcluding, findMouseEventTargetAt, getBackgroundColor, getBorder, getBounds, getChildren, getClientArea, getClientArea, getClippingStrategy, getCursor, getFont, getForegroundColor, getInsets, getLayoutManager, getLocalBackgroundColor, getLocalForegroundColor, getMaximumSize, getMinimumSize, getMinimumSize, getParent, getPreferredSize, getPreferredSize, getSize, getToolTip, getUpdateManager, handleFocusGained, handleFocusLost, handleKeyPressed, handleKeyReleased, handleMouseDoubleClicked, handleMouseDragged, handleMouseEntered, handleMouseExited, handleMouseHover, handleMouseMoved, handleMousePressed, handleMouseReleased, hasFocus, internalGetEventDispatcher, intersects, invalidate, invalidateTree, isCoordinateSystem, isEnabled, isFocusTraversable, isMirrored, isOpaque, isRequestFocusEnabled, isShowing, isVisible, paint, remove, removeAncestorListener, removeCoordinateListener, removeFigureListener, removeFocusListener, removeKeyListener, removeLayoutListener, removeMouseListener, removeMouseMotionListener, removeNotify, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, revalidate, setBackgroundColor, setBorder, setBounds, setClippingStrategy, setConstraint, setCursor, setEnabled, setFocusTraversable, setFont, setForegroundColor, setLayoutManager, setLocation, setMaximumSize, setMinimumSize, setOpaque, setParent, setPreferredSize, setRequestFocusEnabled, setSize, setSize, setToolTip, setVisible, translate, translateFromParent, translateToAbsolute, translateToParent, translateToRelative, validate`

### Constructor Detail

#### GFAbstractPointListShape

    public GFAbstractPointListShape​(IPictogramElementDelegate pictogramElementDelegate,
                                    GraphicsAlgorithm graphicsAlgorithm)

Creates a new GFAbstractPointListShape.

Parameters:
  `pictogramElementDelegate` - The PictogramElementDelegate which provides the GraphicsAlgorithm.
  `graphicsAlgorithm` - The GraphicsAlgorithm which provides the values to paint this Shape.

### Method Detail

#### getPoints

    public final org.eclipse.draw2d.geometry.PointList getPoints()

Returns the points in this Shape by reference. If the returned list is modified, this Shape must be informed by calling `setPoints(PointList)`. Failure to do so will result in layout and paint problems.

Returns:
  The points in this Shape by reference.

#### getStart

    public org.eclipse.draw2d.geometry.Point getStart()

Returns the first point in the point-list.

Returns:
  the first point in the point-list.

#### getEnd

    public org.eclipse.draw2d.geometry.Point getEnd()

Returns the last point in the point-list.

Returns:
  the last point in the point-list.

#### addPoint

    public void addPoint​(org.eclipse.draw2d.geometry.Point pt)

Adds the passed point to the point-list. This method results in a recalculation of the Shapes bounding box.

Parameters:
  `pt` - The Point to be added to the point-list.

#### insertPoint

    public void insertPoint​(org.eclipse.draw2d.geometry.Point pt,
                            int index)

Inserts a given point at a specified index in the point-list. This method results in a recalculation of the Shapes bounding box.

Parameters:
  `pt` - The point to be added.
  `index` - the position in the point-list where the point is to be added.

#### setPoint

    public void setPoint​(org.eclipse.draw2d.geometry.Point pt,
                         int index)

Overwrites the point at `index` with the Point `pt` . If you're going to set multiple Points, use `setPoints(PointList)`. This method results in a recalculation of the Shapes bounding box.

Parameters:
  `pt` - The point to set.
  `index` - The index, at which to set the point.

#### setPoints

    public void setPoints​(org.eclipse.draw2d.geometry.PointList points)

Sets the list of points to be used by this Shape by reference. The previous PointList used by this Shape is not used anymore. This method results in a recalculation of the Shapes bounding box.

Parameters:
  `points` - The new PointList used by this Shape.

#### setStart

    public void setStart​(org.eclipse.draw2d.geometry.Point start)

Sets the start point of the point-list. This method results in a recalculation of the Shapes bounding box.

Parameters:
  `start` - The point that will become the first point in the point-list.

#### setEnd

    public void setEnd​(org.eclipse.draw2d.geometry.Point end)

Sets the end point of the point-list. This method results in a recalculation of the Shapes bounding box.

Parameters:
  `end` - The point that will become the last point in the point-list.

#### removePoint

    public void removePoint​(int index)

Removes a point at a given index from the point-list. This method results in a recalculation of the Shapes bounding box.

Parameters:
  `index` - The position of the point to be removed.

#### removeAllPoints

    public void removeAllPoints()

This method results in a recalculation of the Shapes bounding box. Removes all points from the point-list.