Eclipse GEF
2.1

org.eclipse.gef.tools
Class ConnectionBendpointTracker

java.lang.Object
  |
  +--org.eclipse.gef.util.FlagSupport
        |
        +--org.eclipse.gef.tools.AbstractTool
              |
              +--org.eclipse.gef.tools.SimpleDragTracker
                    |
                    +--org.eclipse.gef.tools.ConnectionBendpointTracker
All Implemented Interfaces:
DragTracker, RequestConstants, Tool

public class ConnectionBendpointTracker
extends SimpleDragTracker

A tracker for creating new bendpoints or dragging existing ones. The Connection bendpoint tracker is returned by connection bendpoint handles. This tracker will send a BendpointRequest to the connection editpart which originated the tracker. The bendpoint request may be either a request to move an existing bendpoint, or a request to create a new bendpoint.

A ConnectionBendpointTracker operates on a single connection editpart.


Nested Class Summary
 
Nested classes inherited from class org.eclipse.gef.tools.AbstractTool
AbstractTool.Input
 
Field Summary
 
Fields inherited from class org.eclipse.gef.tools.SimpleDragTracker
MAX_FLAG
 
Fields inherited from class org.eclipse.gef.tools.AbstractTool
MAX_STATE, MOUSE_BUTTON_ANY, MOUSE_BUTTON1, MOUSE_BUTTON2, MOUSE_BUTTON3, STATE_ACCESSIBLE_DRAG, STATE_ACCESSIBLE_DRAG_IN_PROGRESS, STATE_DRAG, STATE_DRAG_IN_PROGRESS, STATE_INITIAL, STATE_INVALID, STATE_TERMINAL
 
Fields inherited from interface org.eclipse.gef.RequestConstants
REQ_ADD, REQ_ALIGN, REQ_ALIGN_CHILDREN, REQ_CONNECTION_END, REQ_CONNECTION_START, REQ_CREATE, REQ_CREATE_BENDPOINT, REQ_DELETE, REQ_DELETE_DEPENDANT, REQ_DIRECT_EDIT, REQ_MOVE, REQ_MOVE_BENDPOINT, REQ_MOVE_CHILDREN, REQ_OPEN, REQ_ORPHAN, REQ_ORPHAN_CHILDREN, REQ_RECONNECT_SOURCE, REQ_RECONNECT_TARGET, REQ_RESIZE, REQ_RESIZE_CHILDREN, REQ_SELECTION, REQ_SELECTION_HOVER
 
Constructor Summary
protected ConnectionBendpointTracker()
          Null constructor.
  ConnectionBendpointTracker(ConnectionEditPart editpart, int i)
          Constructs a tracker for the given connection and index.
 
Method Summary
protected  List createOperationSet()
          Returns a new List of editparts that this tool is operating on.
protected  Request createSourceRequest()
          Creates a BendpointRequest.
protected  Command getCommand()
          Obtains a new command from the connection.
protected  String getCommandName()
          Returns the identifier of the command that is being sought.
protected  Connection getConnection()
          Convenience method to obtain the connection editpart's connection figure.
protected  ConnectionEditPart getConnectionEditPart()
          Returns the connection editpart on which the tracker operates.
protected  String getDebugName()
          Returns the debug name for this tool.
protected  int getIndex()
          Returns the index of the bendpoint being dragged or created.
protected  Object getType()
          The type of tracker, either RequestConstants.REQ_CREATE_BENDPOINT or RequestConstants.REQ_MOVE_BENDPOINT.
 void setConnectionEditPart(ConnectionEditPart cep)
          Sets the connection editpart being operated on.
 void setIndex(int i)
          Sets the index of the operation.
 void setType(Object type)
          Sets the type of bendpoint drag being performed.
protected  void updateSourceRequest()
          Updates the source request.
 
Methods inherited from class org.eclipse.gef.tools.SimpleDragTracker
calculateCursor, commitDrag, deactivate, eraseSourceFeedback, getSourceRequest, handleButtonDown, handleButtonUp, handleDragInProgress, handleDragStarted, handleInvalidInput, handleKeyDown, handleKeyUp, isShowingFeedback, performDrag, showSourceFeedback
 
Methods inherited from class org.eclipse.gef.tools.AbstractTool
activate, addFeedback, debug, executeCurrentCommand, focusGained, focusLost, getCurrentCommand, getCurrentInput, getCurrentViewer, getDebugNameForState, getDefaultCursor, getDisabledCursor, getDomain, getDragMoveDelta, getLocation, getOperationSet, getStartLocation, getState, handleDoubleClick, handleDrag, handleFinished, handleFocusGained, handleFocusLost, handleHover, handleMove, handleNativeDragFinished, handleNativeDragStarted, handleViewerEntered, handleViewerExited, isActive, isHoverActive, isInState, keyDown, keyUp, mouseDoubleClick, mouseDown, mouseDrag, mouseHover, mouseMove, mouseUp, movedPastThreshold, nativeDragFinished, nativeDragStarted, reactivate, refreshCursor, releaseToolCapture, removeFeedback, resetFlags, setCurrentCommand, setCursor, setDefaultCursor, setDisabledCursor, setEditDomain, setHoverActive, setStartLocation, setState, setToolCapture, setUnloadWhenFinished, setViewer, stateTransition, unloadWhenFinished, viewerEntered, viewerExited
 
Methods inherited from class org.eclipse.gef.util.FlagSupport
getFlag, setFlag
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.eclipse.gef.Tool
activate, focusGained, focusLost, keyDown, keyUp, mouseDoubleClick, mouseDown, mouseDrag, mouseHover, mouseMove, mouseUp, nativeDragFinished, nativeDragStarted, setEditDomain, setViewer, viewerEntered, viewerExited
 

Constructor Detail

ConnectionBendpointTracker

protected ConnectionBendpointTracker()
Null constructor.


ConnectionBendpointTracker

public ConnectionBendpointTracker(ConnectionEditPart editpart,
                                  int i)
Constructs a tracker for the given connection and index.

Parameters:
editpart - the connection
i - the index of the bendpoint
Method Detail

createOperationSet

protected List createOperationSet()
Description copied from class: AbstractTool
Returns a new List of editparts that this tool is operating on. This method is called once during AbstractTool.getOperationSet(), and its result is cached.

By default, the operations set is the current viewer's entire selection. Subclasses may override this method to filter or alter the operation set as necessary.

Overrides:
createOperationSet in class AbstractTool
Returns:
a list of editparts being operated on
See Also:
AbstractTool.createOperationSet()

createSourceRequest

protected Request createSourceRequest()
Creates a BendpointRequest.

Overrides:
createSourceRequest in class SimpleDragTracker
Returns:
a new source request
See Also:
SimpleDragTracker.createSourceRequest()

getCommand

protected Command getCommand()
Obtains a new command from the connection.

Overrides:
getCommand in class AbstractTool
Returns:
a newly obtained command
See Also:
AbstractTool.getCommand()

getCommandName

protected String getCommandName()
Description copied from class: AbstractTool
Returns the identifier of the command that is being sought. This name is also the named that will be logged in the debug view.

Specified by:
getCommandName in class AbstractTool
Returns:
the identifier for the command
See Also:
AbstractTool.getCommandName()

getConnection

protected Connection getConnection()
Convenience method to obtain the connection editpart's connection figure.

Returns:
the connection figure

getConnectionEditPart

protected ConnectionEditPart getConnectionEditPart()
Returns the connection editpart on which the tracker operates.

Returns:
the connection editpart

getDebugName

protected String getDebugName()
Description copied from class: AbstractTool
Returns the debug name for this tool.

Specified by:
getDebugName in class AbstractTool
Returns:
the debug name
See Also:
AbstractTool.getDebugName()

getIndex

protected int getIndex()
Returns the index of the bendpoint being dragged or created.

Returns:
the index

getType

protected Object getType()
The type of tracker, either RequestConstants.REQ_CREATE_BENDPOINT or RequestConstants.REQ_MOVE_BENDPOINT.

Returns:
the type of operation being performed (move or create bendpoint)

setConnectionEditPart

public void setConnectionEditPart(ConnectionEditPart cep)
Sets the connection editpart being operated on.

Parameters:
cep - the connection

setIndex

public void setIndex(int i)
Sets the index of the operation.

Parameters:
i - the index

setType

public void setType(Object type)
Sets the type of bendpoint drag being performed.

Parameters:
type - the drag type
See Also:
getType()

updateSourceRequest

protected void updateSourceRequest()
Description copied from class: SimpleDragTracker
Updates the source request.

Overrides:
updateSourceRequest in class SimpleDragTracker
See Also:
SimpleDragTracker.updateSourceRequest()

Eclipse GEF
2.1

Copyright (c) IBM Corp. and others 2000, 2003. All Rights Reserved.