Runtime

org.eclipse.gmf.runtime.diagram.ui.tools
Class ConnectionCreationTool

java.lang.Object
  extended byorg.eclipse.gef.util.FlagSupport
      extended byorg.eclipse.gef.tools.AbstractTool
          extended byorg.eclipse.gef.tools.TargetingTool
              extended byorg.eclipse.gef.tools.AbstractConnectionCreationTool
                  extended byorg.eclipse.gef.tools.ConnectionCreationTool
                      extended byorg.eclipse.gmf.runtime.diagram.ui.tools.ConnectionCreationTool
All Implemented Interfaces:
RequestConstants, Tool
Direct Known Subclasses:
UnspecifiedTypeConnectionTool

public class ConnectionCreationTool
extends ConnectionCreationTool

Generic Connection Creation Tool - creates a semantic model element and a view for it. Supports creation of a connection when there is not information is not all available even after ther user has selected the target. When the user clicks on the target element, then they will be presented with a diaglog to permit them to enter the additional information.


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.AbstractConnectionCreationTool
MAX_FLAG, MAX_STATE, STATE_CONNECTION_STARTED
 
Fields inherited from class org.eclipse.gef.tools.AbstractTool
MOUSE_BUTTON_ANY, MOUSE_BUTTON1, MOUSE_BUTTON2, MOUSE_BUTTON3, PROPERTY_UNLOAD_WHEN_FINISHED, 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_CLONE, 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
ConnectionCreationTool()
          Creates a new ConnectionCreationTool, the elementTypeInfo and viewFactoryhint will be set later.
ConnectionCreationTool(IElementType elementType)
          Method CreationTool.
 
Method Summary
protected  boolean avoidDeactivation()
          Should deactivation be avoided?
protected  Cursor calculateCursor()
           
protected  void createConnection()
          Creates a connection between the two select shapes. edit parts.
protected  Request createTargetRequest()
           
 void deactivate()
          Since both the view and semantic requests contain results we need to free them when the tool is deactivated
protected  void doAutoexpose()
           
protected  void eraseSourceFeedback()
           
protected  Command getCommand()
           
protected  IElementType getElementType()
           
protected  PreferencesHint getPreferencesHint()
          Gets the preferences hint that is to be used to find the appropriate preference store from which to retrieve diagram preference values.
protected  boolean handleButtonUp(int button)
           
protected  boolean handleCreateConnection()
          Overridden so that the tool doesn't get deactivated and the feedback erased if popup dialogs appear to complete the command.
protected  boolean handleDoubleClick(int button)
          Handles double click to create the shape in defualt position
protected  void handleFinished()
           
protected  boolean handleKeyUp(KeyEvent e)
          Overide to handle use case when the user has selected a tool and then click on the enter key which translated to SWT.Selection it will result in the new shape being created
protected  boolean handleMove()
           
protected  boolean isCtrlKeyDown()
           
protected  void selectAddedObject(EditPartViewer viewer, java.util.Collection objects)
          Method selectAddedObject.
protected  void setAvoidDeactivation(boolean avoidDeactivation)
          Sets if deactivation be temporarily avoided.
protected  void setCtrlKeyDown(boolean isCtrlKeyDown)
           
protected  void setSemanticRequestType(IElementType elementType)
          Sets the elementType.
 
Methods inherited from class org.eclipse.gef.tools.ConnectionCreationTool
handleButtonDown, handleFocusLost, handleKeyDown, mouseWheelScrolled
 
Methods inherited from class org.eclipse.gef.tools.AbstractConnectionCreationTool
getCommandName, getDebugName, getDebugNameForState, getFactory, getSourceRequest, handleCommandStackChanged, handleDrag, handleDragInProgress, handleHover, handleInvalidInput, handleSourceDeactivated, isShowingSourceFeedback, setConnectionSource, setFactory, showSourceFeedback, updateTargetRequest
 
Methods inherited from class org.eclipse.gef.tools.TargetingTool
eraseTargetFeedback, getAutoexposeHelper, getExclusionSet, getTargetEditPart, getTargetingConditional, getTargetRequest, handleAutoexpose, handleEnteredEditPart, handleExitingEditPart, handleHoverStop, handleLeavingEditPart, handleViewerExited, isShowingTargetFeedback, isTargetLocked, lockTargetEditPart, resetFlags, setAutoexposeHelper, setTargetEditPart, setTargetRequest, showTargetFeedback, unlockTargetEditPart, updateAutoexposeHelper, updateTargetUnderMouse
 
Methods inherited from class org.eclipse.gef.tools.AbstractTool
activate, addFeedback, applyProperty, commitDrag, createOperationSet, debug, executeCommand, executeCurrentCommand, focusGained, focusLost, getCurrentCommand, getCurrentInput, getCurrentViewer, getDefaultCursor, getDisabledCursor, getDomain, getDragMoveDelta, getLocation, getOperationSet, getStartLocation, getState, handleDragStarted, handleFocusGained, handleKeyTraversed, handleNativeDragFinished, handleNativeDragStarted, handleViewerEntered, isActive, isHoverActive, isInState, isViewerImportant, keyDown, keyTraversed, keyUp, mouseDoubleClick, mouseDown, mouseDrag, mouseHover, mouseMove, mouseUp, movedPastThreshold, nativeDragFinished, nativeDragStarted, performViewerMouseWheel, reactivate, refreshCursor, releaseToolCapture, removeFeedback, setCurrentCommand, setCursor, setDefaultCursor, setDisabledCursor, setEditDomain, setHoverActive, setProperties, 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
 

Constructor Detail

ConnectionCreationTool

public ConnectionCreationTool()
Creates a new ConnectionCreationTool, the elementTypeInfo and viewFactoryhint will be set later.


ConnectionCreationTool

public ConnectionCreationTool(IElementType elementType)
Method CreationTool. Creates a new CreationTool with the given elementType

Parameters:
elementType -
Method Detail

getElementType

protected IElementType getElementType()
Returns:
Returns the elementType.

setSemanticRequestType

protected void setSemanticRequestType(IElementType elementType)
Sets the elementType.

Parameters:
elementType - The elementType to set

getPreferencesHint

protected PreferencesHint getPreferencesHint()
Gets the preferences hint that is to be used to find the appropriate preference store from which to retrieve diagram preference values. The preference hint is mapped to a preference store in the preference registry <@link DiagramPreferencesRegistry>.

Returns:
the preferences hint

createTargetRequest

protected Request createTargetRequest()
See Also:
TargetingTool.createTargetRequest()

deactivate

public void deactivate()
Since both the view and semantic requests contain results we need to free them when the tool is deactivated

See Also:
Tool.deactivate()

eraseSourceFeedback

protected void eraseSourceFeedback()
See Also:
AbstractConnectionCreationTool.eraseSourceFeedback()

handleButtonUp

protected boolean handleButtonUp(int button)
See Also:
AbstractTool.handleButtonUp(int)

handleFinished

protected void handleFinished()
See Also:
Called when the current tool operation is complete.

selectAddedObject

protected void selectAddedObject(EditPartViewer viewer,
                                 java.util.Collection objects)
Method selectAddedObject. Select the newly added connection


handleDoubleClick

protected boolean handleDoubleClick(int button)
Handles double click to create the shape in defualt position

See Also:
AbstractTool.handleDoubleClick(int)

createConnection

protected void createConnection()
Creates a connection between the two select shapes. edit parts.


handleKeyUp

protected boolean handleKeyUp(KeyEvent e)
Overide to handle use case when the user has selected a tool and then click on the enter key which translated to SWT.Selection it will result in the new shape being created

See Also:
AbstractTool.handleKeyUp(org.eclipse.swt.events.KeyEvent)

handleCreateConnection

protected boolean handleCreateConnection()
Overridden so that the tool doesn't get deactivated and the feedback erased if popup dialogs appear to complete the command.

See Also:
AbstractConnectionCreationTool.handleCreateConnection()

avoidDeactivation

protected boolean avoidDeactivation()
Should deactivation be avoided?

Returns:
true if deactivation is to be avoided

setAvoidDeactivation

protected void setAvoidDeactivation(boolean avoidDeactivation)
Sets if deactivation be temporarily avoided.

Parameters:
avoidDeactivation - true if deactivation is to be avoided

isCtrlKeyDown

protected boolean isCtrlKeyDown()
Returns:
Returns the isCtrlKeyDown.

setCtrlKeyDown

protected void setCtrlKeyDown(boolean isCtrlKeyDown)
Parameters:
isCtrlKeyDown - The isCtrlKeyDown to set.

handleMove

protected boolean handleMove()

doAutoexpose

protected void doAutoexpose()

getCommand

protected Command getCommand()

calculateCursor

protected Cursor calculateCursor()

Runtime

Guidelines for using Eclipse APIs.

Copyright (c) IBM Corp., Borland Software Corp., and others 2005,2006. All rights reserved.