Class PolylineFigure

java.lang.Object
org.eclipse.draw2d.Figure
org.eclipse.draw2d.Shape
org.eclipse.draw2d.AbstractPointListShape
org.eclipse.draw2d.Polyline
org.csstudio.swt.widgets.figures.PolylineFigure
All Implemented Interfaces:
Introspectable, org.eclipse.draw2d.IFigure, org.eclipse.gef.handles.HandleBounds

public final class PolylineFigure extends org.eclipse.draw2d.Polyline implements org.eclipse.gef.handles.HandleBounds, Introspectable
A polyline figure.
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static enum 
     

    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
    Modifier and Type
    Field
    Description
    static double
     

    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
    Constructor.
  • Method Summary

    Modifier and Type
    Method
    Description
    static org.eclipse.draw2d.geometry.PointList
    calcArrowPoints(org.eclipse.draw2d.geometry.Point startPoint, org.eclipse.draw2d.geometry.Point endPoint, int l, double angle)
    Calculate the three points for an arrow.
    boolean
    containsPoint(int x, int y)
    Override this to fix a bug in draw2d polyline: the polyline width should be considered.
    int
     
     
     
    org.eclipse.draw2d.geometry.Rectangle
    Overridden, to ensure that the bounds rectangle gets repainted each time, the points of the polygon change.
    double
    Gets the fill grade.
    org.eclipse.draw2d.geometry.Rectangle
     
    org.eclipse.draw2d.geometry.Dimension
    getMinimumSize(int wHint, int hHint)
     
    static org.eclipse.draw2d.geometry.Rectangle
    getPointsBoundsWithArrows(org.eclipse.draw2d.geometry.PointList points, PolylineFigure.ArrowType arrowType, int arrowLength, double arrowAngle)
     
    boolean
    Gets the transparent state of the background.
    boolean
     
    boolean
    Gets the orientation (horizontal==true | vertical==false).
    protected void
    outlineShape(org.eclipse.draw2d.Graphics graphics)
     
    void
    primTranslate(int dx, int dy)
    Translates this Figure's bounds, without firing a move.
    void
    setArrowLineLength(int arrowLineLength)
     
    void
     
    void
    setBounds(org.eclipse.draw2d.geometry.Rectangle rect)
     
    void
    setFill(double fill)
    Sets the fill grade.
    void
    setFillArrow(boolean fillArrow)
     
    void
    setHorizontalFill(boolean horizontal)
    Sets the orientation (horizontal==true | vertical==false).
    void
    setTransparent(boolean transparent)
    Sets the transparent state of the background.
    protected boolean
    shapeContainsPoint(int x, int y, int tolerance)
    Override this to fix a bug in draw2d polyline: the polyline width should be considered.

    Methods inherited from class org.eclipse.draw2d.Polyline

    fillShape, isOpaque, removeAllPoints, repaint, setLineWidth, setPoints, setTolerance, shapeContainsPoint

    Methods inherited from class org.eclipse.draw2d.AbstractPointListShape

    addPoint, childrenContainsPoint, getEnd, getPoints, getStart, insertPoint, removePoint, setEnd, setEndpoints, setPoint, setStart

    Methods inherited from class org.eclipse.draw2d.Shape

    getAlpha, getAntialias, getLineAttributes, getLineCap, getLineDash, getLineDashOffset, getLineJoin, getLineMiterLimit, getLineStyle, getLineWidth, getLineWidthFloat, paintFigure, 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, 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, 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, requestFocus, revalidate, setBackgroundColor, setBorder, 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, 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, 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
  • Field Details

    • ARROW_ANGLE

      public static double ARROW_ANGLE
  • Constructor Details

    • PolylineFigure

      public PolylineFigure()
      Constructor.
  • Method Details

    • calcArrowPoints

      public static org.eclipse.draw2d.geometry.PointList calcArrowPoints(org.eclipse.draw2d.geometry.Point startPoint, org.eclipse.draw2d.geometry.Point endPoint, int l, double angle)
      Calculate the three points for an arrow.
      Parameters:
      startPoint - the start point of the line
      endPoint - the end point of the line
      l - the length of the arrow line
      angle - the radians angle between the line and the arrow line.
      Returns:
      A point list which includes the three points:
      0: Right arrow point;
      1: Left arrow point;
      2: Intersection point.
    • getPointsBoundsWithArrows

      public static org.eclipse.draw2d.geometry.Rectangle getPointsBoundsWithArrows(org.eclipse.draw2d.geometry.PointList points, PolylineFigure.ArrowType arrowType, int arrowLength, double arrowAngle)
    • getArrowLineLength

      public int getArrowLineLength()
      Returns:
      the arrowLineLength
    • getArrowType

      public PolylineFigure.ArrowType getArrowType()
      Returns:
      the arrowType
    • getBounds

      public org.eclipse.draw2d.geometry.Rectangle getBounds()
      Overridden, to ensure that the bounds rectangle gets repainted each time, the points of the polygon change.
      Specified by:
      getBounds in interface org.eclipse.draw2d.IFigure
      Overrides:
      getBounds in class org.eclipse.draw2d.Polyline
    • getFill

      public double getFill()
      Gets the fill grade.
      Returns:
      the fill grade
    • getHandleBounds

      public org.eclipse.draw2d.geometry.Rectangle getHandleBounds()
      Specified by:
      getHandleBounds in interface org.eclipse.gef.handles.HandleBounds
    • getTransparent

      public boolean getTransparent()
      Gets the transparent state of the background.
      Returns:
      the transparent state of the background
    • isFillArrow

      public boolean isFillArrow()
      Returns:
      the fillArrow
    • isHorizontalFill

      public boolean isHorizontalFill()
      Gets the orientation (horizontal==true | vertical==false).
      Returns:
      boolean The orientation
    • outlineShape

      protected void outlineShape(org.eclipse.draw2d.Graphics graphics)
      Overrides:
      outlineShape in class org.eclipse.draw2d.Polyline
    • primTranslate

      public void primTranslate(int dx, int dy)
      Translates this Figure's bounds, without firing a move.
      Overrides:
      primTranslate in class org.eclipse.draw2d.Polyline
    • setArrowLineLength

      public void setArrowLineLength(int arrowLineLength)
    • setArrowType

      public void setArrowType(PolylineFigure.ArrowType arrowType)
    • setBounds

      public void setBounds(org.eclipse.draw2d.geometry.Rectangle rect)
      Specified by:
      setBounds in interface org.eclipse.draw2d.IFigure
      Overrides:
      setBounds in class org.eclipse.draw2d.Figure
    • setFill

      public void setFill(double fill)
      Sets the fill grade.
      Parameters:
      fill - the fill grade.
    • setFillArrow

      public void setFillArrow(boolean fillArrow)
    • setHorizontalFill

      public void setHorizontalFill(boolean horizontal)
      Sets the orientation (horizontal==true | vertical==false).
    • setTransparent

      public void setTransparent(boolean transparent)
      Sets the transparent state of the background.
    • getMinimumSize

      public org.eclipse.draw2d.geometry.Dimension getMinimumSize(int wHint, int hHint)
      Specified by:
      getMinimumSize in interface org.eclipse.draw2d.IFigure
      Overrides:
      getMinimumSize in class org.eclipse.draw2d.Figure
    • containsPoint

      public boolean containsPoint(int x, int y)
      Override this to fix a bug in draw2d polyline: the polyline width should be considered.
      Specified by:
      containsPoint in interface org.eclipse.draw2d.IFigure
      Overrides:
      containsPoint in class org.eclipse.draw2d.Polyline
    • shapeContainsPoint

      protected boolean shapeContainsPoint(int x, int y, int tolerance)
      Override this to fix a bug in draw2d polyline: the polyline width should be considered.
    • getBeanInfo

      public BeanInfo getBeanInfo() throws IntrospectionException
      Specified by:
      getBeanInfo in interface Introspectable
      Throws:
      IntrospectionException