Package org.eclipse.gef.handles
Class AbstractHandle
java.lang.Object
org.eclipse.draw2d.Figure
org.eclipse.gef.handles.AbstractHandle
- All Implemented Interfaces:
AncestorListener
,IFigure
,Handle
- Direct Known Subclasses:
MoveHandle
,SquareHandle
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
Figure.FigureIterator, Figure.IdentitySearch, Figure.ReverseFigureChildrenIterator
Nested classes/interfaces inherited from interface org.eclipse.draw2d.AncestorListener
AncestorListener.Stub
Nested classes/interfaces inherited from interface org.eclipse.draw2d.IFigure
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
ConstructorsConstructorDescriptionNull constructorAbstractHandle
(GraphicalEditPart owner, Locator loc) Creates a handle for the givenGraphicalEditPart
using the givenLocator
.AbstractHandle
(GraphicalEditPart owner, Locator loc, Cursor c) Creates a handle for the givenGraphicalEditPart
using the givenLocator
andCursor
. -
Method Summary
Modifier and TypeMethodDescriptionvoid
Adds this as anAncestorListener
to the owner'sFigure
.void
ancestorAdded
(IFigure ancestor) void
ancestorMoved
(IFigure ancestor) void
ancestorRemoved
(IFigure ancestor) protected abstract DragTracker
Creates a new drag tracker to be returned by getDragTracker().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.Returns theLocator
used to position this handle.protected GraphicalEditPart
getOwner()
Returns theGraphicalEditPart
associated with this handle.protected 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
(Locator locator) Sets the locator which position this handle.protected void
setOwner
(GraphicalEditPart editpart) Sets the owner editpart associated with this handle.void
validate()
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, 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, 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
-
Constructor Details
-
AbstractHandle
public AbstractHandle()Null constructor -
AbstractHandle
Creates a handle for the givenGraphicalEditPart
using the givenLocator
.- Parameters:
owner
- The editpart which provided this handleloc
- The locator to position the handle
-
AbstractHandle
Creates a handle for the givenGraphicalEditPart
using the givenLocator
andCursor
.- Parameters:
owner
- The editpart which provided this handleloc
- The locator to position the handlec
- The cursor to display when the mouse is over the handle
-
-
Method Details
-
addNotify
public void addNotify()Adds this as anAncestorListener
to the owner'sFigure
. -
ancestorMoved
- Specified by:
ancestorMoved
in interfaceAncestorListener
- See Also:
-
ancestorAdded
- Specified by:
ancestorAdded
in interfaceAncestorListener
- See Also:
-
ancestorRemoved
- Specified by:
ancestorRemoved
in interfaceAncestorListener
- See Also:
-
createDragTracker
Creates a new drag tracker to be returned by getDragTracker().- Returns:
- a new drag tracker
-
getAccessibleLocation
By default, the center of the handle is returned.- Specified by:
getAccessibleLocation
in interfaceHandle
- Returns:
null
or the absolute location- See Also:
-
getDragCursor
Deprecated.use getCursor()Returns the cursor. The cursor is displayed whenever the mouse is over the handle.- Returns:
- the cursor
-
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 callingcreateDragTracker()
.- Specified by:
getDragTracker
in interfaceHandle
- Returns:
- the drag tracker
-
getLocator
Returns theLocator
used to position this handle.- Returns:
- the locator
-
getOwner
Returns theGraphicalEditPart
associated with this handle.- Returns:
- the owner editpart
-
getOwnerFigure
Convenience method to return the owner's figure.- Returns:
- the owner editpart's figure
-
removeNotify
public void removeNotify()- Specified by:
removeNotify
in interfaceIFigure
- Overrides:
removeNotify
in classFigure
- See Also:
-
setDragCursor
Deprecated.use setCursor()Sets the Cursor for the handle.- Parameters:
c
- the cursor- Throws:
Exception
- a bogus excpetion declaration
-
setDragTracker
Sets the drag tracker for this handle.- Parameters:
t
- the drag tracker
-
setLocator
Sets the locator which position this handle.- Parameters:
locator
- the new locator
-
setOwner
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.
-