Class AbstractHandle

java.lang.Object
org.eclipse.draw2d.Figure
org.eclipse.gef.handles.AbstractHandle
All Implemented Interfaces:
org.eclipse.draw2d.AncestorListener, org.eclipse.draw2d.IFigure, Handle
Direct Known Subclasses:
MoveHandle, SquareHandle

public abstract class AbstractHandle extends org.eclipse.draw2d.Figure implements Handle, org.eclipse.draw2d.AncestorListener
Base implementation for handles. This class keeps track of the typical data needed by a handle, such as a drag tracker, a locator to place the handle, a cursor, and the editpart to which the handle belongs. AbstractHandle will add an AncestorListener to the owner's figure, and will automatically revalidate this handle whenever the owner's figure moves.
  • 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.AncestorListener

    org.eclipse.draw2d.AncestorListener.Stub

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

    org.eclipse.draw2d.IFigure.NoInsets
  • Field Summary

    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
    Null constructor
    AbstractHandle(GraphicalEditPart owner, org.eclipse.draw2d.Locator loc)
    Creates a handle for the given GraphicalEditPart using the given Locator.
    AbstractHandle(GraphicalEditPart owner, org.eclipse.draw2d.Locator loc, Cursor c)
    Creates a handle for the given GraphicalEditPart using the given Locator and Cursor.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    Adds this as an AncestorListener to the owner's Figure.
    void
    ancestorAdded(org.eclipse.draw2d.IFigure ancestor)
     
    void
    ancestorMoved(org.eclipse.draw2d.IFigure ancestor)
     
    void
    ancestorRemoved(org.eclipse.draw2d.IFigure ancestor)
     
    protected abstract DragTracker
    Creates a new drag tracker to be returned by getDragTracker().
    org.eclipse.draw2d.geometry.Point
    By default, the center of the handle is returned.
    Deprecated.
    use getCursor()
    Returns the drag tracker to use when the user clicks on this handle.
    org.eclipse.draw2d.Locator
    Returns the Locator used to position this handle.
    Returns the GraphicalEditPart associated with this handle.
    protected org.eclipse.draw2d.IFigure
    Convenience method to return the owner's figure.
    void
     
    void
    Deprecated.
    use setCursor()
    void
    Sets the drag tracker for this handle.
    protected void
    setLocator(org.eclipse.draw2d.Locator locator)
    Sets the locator which position this handle.
    protected void
    Sets the owner editpart associated with this handle.
    void
    Extends validate() to place the handle using its locator.

    Methods inherited from class org.eclipse.draw2d.Figure

    add, add, add, add, addAncestorListener, addCoordinateListener, addFigureListener, addFocusListener, addKeyListener, addLayoutListener, addListener, addMouseListener, addMouseMotionListener, addPropertyChangeListener, addPropertyChangeListener, containsPoint, 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, paintFigure, primTranslate, remove, removeAll, removeAncestorListener, removeCoordinateListener, removeFigureListener, removeFocusListener, removeKeyListener, removeLayoutListener, removeListener, removeMouseListener, removeMouseMotionListener, 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

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • AbstractHandle

      public AbstractHandle()
      Null constructor
    • AbstractHandle

      public AbstractHandle(GraphicalEditPart owner, org.eclipse.draw2d.Locator loc)
      Creates a handle for the given GraphicalEditPart using the given Locator.
      Parameters:
      owner - The editpart which provided this handle
      loc - The locator to position the handle
    • AbstractHandle

      public AbstractHandle(GraphicalEditPart owner, org.eclipse.draw2d.Locator loc, Cursor c)
      Creates a handle for the given GraphicalEditPart using the given Locator and Cursor.
      Parameters:
      owner - The editpart which provided this handle
      loc - The locator to position the handle
      c - The cursor to display when the mouse is over the handle
  • Method Details

    • addNotify

      public void addNotify()
      Adds this as an AncestorListener to the owner's Figure.
      Specified by:
      addNotify in interface org.eclipse.draw2d.IFigure
      Overrides:
      addNotify in class org.eclipse.draw2d.Figure
    • ancestorMoved

      public void ancestorMoved(org.eclipse.draw2d.IFigure ancestor)
      Specified by:
      ancestorMoved in interface org.eclipse.draw2d.AncestorListener
      See Also:
      • AncestorListener.ancestorMoved(org.eclipse.draw2d.IFigure)
    • ancestorAdded

      public void ancestorAdded(org.eclipse.draw2d.IFigure ancestor)
      Specified by:
      ancestorAdded in interface org.eclipse.draw2d.AncestorListener
      See Also:
      • AncestorListener.ancestorAdded(org.eclipse.draw2d.IFigure)
    • ancestorRemoved

      public void ancestorRemoved(org.eclipse.draw2d.IFigure ancestor)
      Specified by:
      ancestorRemoved in interface org.eclipse.draw2d.AncestorListener
      See Also:
      • AncestorListener.ancestorRemoved(org.eclipse.draw2d.IFigure)
    • createDragTracker

      protected abstract DragTracker createDragTracker()
      Creates a new drag tracker to be returned by getDragTracker().
      Returns:
      a new drag tracker
    • getAccessibleLocation

      public org.eclipse.draw2d.geometry.Point getAccessibleLocation()
      By default, the center of the handle is returned.
      Specified by:
      getAccessibleLocation in interface Handle
      Returns:
      null or the absolute location
      See Also:
    • getDragCursor

      public Cursor getDragCursor()
      Deprecated.
      use getCursor()
      Returns the cursor. The cursor is displayed whenever the mouse is over the handle.
      Returns:
      the cursor
    • getDragTracker

      public DragTracker getDragTracker()
      Returns the drag tracker to use when the user clicks on this handle. If the drag tracker has not been set, it will be lazily created by calling createDragTracker().
      Specified by:
      getDragTracker in interface Handle
      Returns:
      the drag tracker
    • getLocator

      public org.eclipse.draw2d.Locator getLocator()
      Returns the Locator used to position this handle.
      Returns:
      the locator
    • getOwner

      protected GraphicalEditPart getOwner()
      Returns the GraphicalEditPart associated with this handle.
      Returns:
      the owner editpart
    • getOwnerFigure

      protected org.eclipse.draw2d.IFigure getOwnerFigure()
      Convenience method to return the owner's figure.
      Returns:
      the owner editpart's figure
    • removeNotify

      public void removeNotify()
      Specified by:
      removeNotify in interface org.eclipse.draw2d.IFigure
      Overrides:
      removeNotify in class org.eclipse.draw2d.Figure
      See Also:
      • IFigure.removeNotify()
    • setDragCursor

      public void setDragCursor(Cursor c) throws Exception
      Deprecated.
      use setCursor()
      Sets the Cursor for the handle.
      Parameters:
      c - the cursor
      Throws:
      Exception - a bogus excpetion declaration
    • setDragTracker

      public void setDragTracker(DragTracker t)
      Sets the drag tracker for this handle.
      Parameters:
      t - the drag tracker
    • setLocator

      protected void setLocator(org.eclipse.draw2d.Locator locator)
      Sets the locator which position this handle.
      Parameters:
      locator - the new locator
    • setOwner

      protected void setOwner(GraphicalEditPart editpart)
      Sets the owner editpart associated with this handle.
      Parameters:
      editpart - the owner
    • validate

      public void validate()
      Extends validate() to place the handle using its locator.
      Specified by:
      validate in interface org.eclipse.draw2d.IFigure
      Overrides:
      validate in class org.eclipse.draw2d.Figure
      See Also:
      • IFigure.validate()