Class GFEllipseDecoration
java.lang.Object
org.eclipse.draw2d.Figure
org.eclipse.draw2d.Shape
org.eclipse.graphiti.ui.internal.figures.GFAbstractShape
org.eclipse.graphiti.ui.internal.figures.GFAbstractRotatableDecoration
org.eclipse.graphiti.ui.internal.figures.GFEllipseDecoration
- All Implemented Interfaces:
org.eclipse.draw2d.IFigure
,org.eclipse.draw2d.RotatableDecoration
,org.eclipse.gef.handles.HandleBounds
,IVisualStateChangeListener
,IVisualStateHolder
public class GFEllipseDecoration
extends GFAbstractRotatableDecoration
implements org.eclipse.draw2d.RotatableDecoration
A Graphiti Ellipse Rotatable Decoration. Most functionality is handled in the
super-class. This class only has to define the path and the touch-point 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, 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
ConstructorDescriptionGFEllipseDecoration
(IPictogramElementDelegate pictogramElementDelegate, GraphicsAlgorithm graphicsAlgorithm) Creates a new GFEllipseDecoration. -
Method Summary
Modifier and TypeMethodDescriptionboolean
containsPointInInitialFigure
(int x, int y) Returns true, if the given point is contained inside this ellipse.protected org.eclipse.swt.graphics.Path
createPath
(org.eclipse.draw2d.geometry.Rectangle outerBounds, org.eclipse.draw2d.Graphics graphics, boolean isFill) Returns the Path specifying an ellipse for the given outer bounds.protected org.eclipse.draw2d.geometry.Point
Returns the initial touch-point of the decorator-shape.Methods inherited from class org.eclipse.graphiti.ui.internal.figures.GFAbstractRotatableDecoration
containsPointInFigure, getBounds, getDecoratorLocation, getDecoratorReferencePoint, getInitialBounds, getPhiDegrees, getPhiRadians, getTouchPointDelta, paintShape, processRotatableDecorationValues, rotateTargetToInitial, setInitialBounds, setLocation, setReferencePoint
Methods inherited from class org.eclipse.graphiti.ui.internal.figures.GFAbstractShape
containsPoint, containsPointInArea, fillPath, fillShape, getClickArea, getConfigurationProvider, getGraphicsAlgorithm, getHandleBounds, getLineWidth, getPictogramElementDelegate, getPreferences, getSelectionBorder, getVisualState, getZoomLevel, outlineShape, paintFigure, 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, 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, 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, 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, containsPoint, erase, findFigureAt, findFigureAt, findFigureAt, findFigureAtExcluding, findMouseEventTargetAt, getBackgroundColor, getBorder, getBounds, 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, setMaximumSize, setMinimumSize, setOpaque, setParent, setPreferredSize, setRequestFocusEnabled, setSize, setSize, setToolTip, setVisible, translate, translateFromParent, translateToAbsolute, translateToParent, translateToRelative, validate
Methods inherited from interface org.eclipse.draw2d.RotatableDecoration
setLocation, setReferencePoint
-
Constructor Details
-
GFEllipseDecoration
public GFEllipseDecoration(IPictogramElementDelegate pictogramElementDelegate, GraphicsAlgorithm graphicsAlgorithm) Creates a new GFEllipseDecoration.- Parameters:
pictogramElementDelegate
- The PictogramElementDelegate which provides the GraphicsAlgorithm.graphicsAlgorithm
- The GraphicsAlgorithm which provides the values to paint this Shape.
-
-
Method Details
-
getInitialTouchPoint
protected org.eclipse.draw2d.geometry.Point getInitialTouchPoint()Returns the initial touch-point of the decorator-shape. This is the point of the decorator-shape inside the initial-bounds (seeGFAbstractRotatableDecoration.getInitialBounds()
), which shall touch the decorated figure at the decorator-location (seeGFAbstractRotatableDecoration.getDecoratorLocation()
. It is called "inital" because it is the point before translation/rotation.In caes of this Ellipse the point
(0, getInitialBounds().height / 2)
is returned.- Specified by:
getInitialTouchPoint
in classGFAbstractRotatableDecoration
- Returns:
- The initial touch-point of the decorator-shape.
-
containsPointInInitialFigure
public boolean containsPointInInitialFigure(int x, int y) Returns true, if the given point is contained inside this ellipse. This implementation overwrites the super-implementation, which only checks if the point is in the rectangular bounds.- Overrides:
containsPointInInitialFigure
in classGFAbstractRotatableDecoration
- 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 inside this ellipse.
-
createPath
protected org.eclipse.swt.graphics.Path createPath(org.eclipse.draw2d.geometry.Rectangle outerBounds, org.eclipse.draw2d.Graphics graphics, boolean isFill) Returns the Path specifying an ellipse for the given outer bounds. It does not differentiate between a fill Path and an outline Path.- Specified by:
createPath
in classGFAbstractShape
- Parameters:
outerBounds
- The outer bounds which shall contain the Path. They are calculated from the bounds of this figure byGFFigureUtil.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 an ellipse for the given outer bounds.
-