Class GFPolygon

All Implemented Interfaces:
org.eclipse.draw2d.IFigure, org.eclipse.gef.handles.HandleBounds, IVisualStateChangeListener, IVisualStateHolder
Direct Known Subclasses:
GFPolygonDecoration

public class GFPolygon extends GFPolyline
A Graphiti Polygon Figure. Most functionality is handled in the super-class. This class only has to define the outline-path and fill-path for the figure-specific painting.
  • Nested Class Summary

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

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

    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
    Constructor
    Description
    GFPolygon(IPictogramElementDelegate pictogramElementDelegate, GraphicsAlgorithm graphicsAlgorithm)
    Creates a new GFPolygon.
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    containsPointInFigure(int x, int y)
    Returns true, if the given point is contained in this Polygon.
    protected org.eclipse.swt.graphics.Path
    createPath(org.eclipse.draw2d.geometry.Rectangle outerBoundss, org.eclipse.draw2d.Graphics graphics, boolean isFill)
    Returns the Path specifying a polygon for the adjusted point-list (see GFPolyline.getAdjustedPointList(PointList, double, double)) of this Shape.

    Methods inherited from class org.eclipse.graphiti.ui.internal.figures.GFAbstractPointListShape

    addPoint, getEnd, getPoints, getStart, insertPoint, removeAllPoints, removePoint, setEnd, setPoint, setPoints, setStart

    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, 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, getChildren, getChildrenRevIterable, getClientArea, getClientArea, getClippingStrategy, getCursor, getFlag, getFont, getForegroundColor, getInsets, getLayoutManager, getListeners, getListenersIterable, 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, optimizeClip, paint, paintBorder, paintChildren, paintClientArea, 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, getChildren, getClientArea, getClientArea, getClippingStrategy, getCursor, getFont, getForegroundColor, getInsets, getLayoutManager, getLocalBackgroundColor, 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, 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 Details

    • GFPolygon

      public GFPolygon(IPictogramElementDelegate pictogramElementDelegate, GraphicsAlgorithm graphicsAlgorithm)
      Creates a new GFPolygon.
      Parameters:
      pictogramElementDelegate - The PictogramElementDelegate which provides the GraphicsAlgorithm.
      graphicsAlgorithm - The GraphicsAlgorithm which provides the values to paint this Shape.
  • Method Details

    • containsPointInFigure

      public boolean containsPointInFigure(int x, int y)
      Returns true, if the given point is contained in this Polygon. This is the case if
      • The point is located in the Polygon
      • The point is contained in a child of this Shape
      Overrides:
      containsPointInFigure in class GFPolyline
      Parameters:
      x - The x-coordinate of the point to check.
      y - The y-coordinate of the point to check.
      Returns:
      true, if the given point is contained in this Polygon.
      See Also:
    • createPath

      protected org.eclipse.swt.graphics.Path createPath(org.eclipse.draw2d.geometry.Rectangle outerBoundss, org.eclipse.draw2d.Graphics graphics, boolean isFill)
      Returns the Path specifying a polygon for the adjusted point-list (see GFPolyline.getAdjustedPointList(PointList, double, double)) of this Shape. Note, that the outer bounds are ignored to calculate the Path, in contrast to most other Shapes. It does not differenciate between a fill Path and an outline Path.
      Overrides:
      createPath in class GFPolyline
      Parameters:
      outerBounds - The outer bounds which shall contain the Path. They are calculated from the bounds of this figure by GFFigureUtil.getAdjustedRectangle(Rectangle, double, int) . Note, that those outline-bounds are just a suggestion which works fine for many cases.
      graphics - The Graphics on which the outline Path shall be painted. It can be used to react on Graphics specific values, like the zoom-level of the Graphics.
      isFill - if true, the Path is used for filling the Shape, otherwise for outlining the Shape.
      Returns:
      The Path specifying a polygon for the point-list of this Shape.