Class GFMarqueeSelectionTool
- java.lang.Object
-
- org.eclipse.gef.util.FlagSupport
-
- org.eclipse.gef.tools.AbstractTool
-
- org.eclipse.graphiti.ui.internal.editor.GFMarqueeSelectionTool
-
- All Implemented Interfaces:
org.eclipse.gef.RequestConstants,org.eclipse.gef.Tool
- Direct Known Subclasses:
GFMarqueeDragTracker
public class GFMarqueeSelectionTool extends org.eclipse.gef.tools.AbstractToolThis is a copy of class org.eclipse.gef.tools.MarqueeSelectionTool. In this GEF class there are too many methods declared as private. Hence overriding of this class does not make sense. Only the implementation of calculateNewSelection() has been changed. In this case the insets of the GF figures will be considered.A Tool which selects multiple objects inside a rectangular area of a Graphical Viewer. If the SHIFT key is pressed at the beginning of the drag, the enclosed items will be appended to the current selection. If the MOD1 key is pressed at the beginning of the drag, the enclosed items will have their selection state inverted.
By default, only editparts whose figure's are on the primary layer will be considered within the enclosed rectangle.
-
-
Field Summary
Fields Modifier and Type Field Description static intBEHAVIOR_CONNECTIONS_TOUCHEDThis behaviour selects connections that intersect the marquee rectangle.static intBEHAVIOR_NODES_AND_CONNECTIONSThis behaviour selects nodes completely encompassed by the marquee rectangle, and all connections between those nodes.static intBEHAVIOR_NODES_CONTAINEDThis behaviour selects nodes completely encompassed by the marquee rectangle.static java.lang.ObjectPROPERTY_MARQUEE_BEHAVIORThe property to be used inAbstractTool.setProperties(java.util.Map)forsetMarqueeBehavior(int).-
Fields inherited from class org.eclipse.gef.tools.AbstractTool
MAX_FLAG, MAX_STATE, 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
Constructors Constructor Description GFMarqueeSelectionTool()Creates a new MarqueeSelectionTool of default typeBEHAVIOR_NODES_CONTAINED.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidapplyProperty(java.lang.Object key, java.lang.Object value)Apply property.voiddeactivate()Erases feedback if necessary and puts the tool into the terminal state.protected java.lang.StringgetCommandName()Gets the command name.protected java.lang.StringgetDebugName()Gets the debug name.protected booleanhandleButtonDown(int button)Handle button down.protected booleanhandleButtonUp(int button)Handle button up.protected booleanhandleDragInProgress()Handle drag in progress.protected booleanhandleFocusLost()Handle focus lost.protected booleanhandleInvalidInput()This method is called when mouse or keyboard input is invalid and erases the feedback.protected booleanhandleKeyDown(org.eclipse.swt.events.KeyEvent e)Handles high-level processing of a key down event.protected booleanisViewerImportant(org.eclipse.gef.EditPartViewer viewer)MarqueeSelectionTool is only interested in GraphicalViewers, not TreeViewers.voidsetMarqueeBehavior(int type)Sets the type of parts that this tool will select.voidsetViewer(org.eclipse.gef.EditPartViewer viewer)Sets the viewer.-
Methods inherited from class org.eclipse.gef.tools.AbstractTool
acceptArrowKey, activate, addFeedback, calculateCursor, commitDrag, createOperationSet, debug, executeCommand, executeCurrentCommand, focusGained, focusLost, getCommand, getCurrentCommand, getCurrentInput, getCurrentViewer, getDebugNameForState, getDefaultCursor, getDisabledCursor, getDomain, getDragMoveDelta, getLocation, getOperationSet, getStartLocation, getState, handleCommandStackChanged, handleDoubleClick, handleDrag, handleDragStarted, handleFinished, handleFocusGained, handleHover, handleKeyTraversed, handleKeyUp, handleMove, handleNativeDragFinished, handleNativeDragStarted, handleViewerEntered, handleViewerExited, isActive, isHoverActive, isInState, keyDown, keyTraversed, keyUp, mouseDoubleClick, mouseDown, mouseDrag, mouseHover, mouseMove, mouseUp, mouseWheelScrolled, movedPastThreshold, nativeDragFinished, nativeDragStarted, performViewerMouseWheel, placeMouseInViewer, reactivate, refreshCursor, releaseToolCapture, removeFeedback, resetFlags, setCurrentCommand, setCursor, setDefaultCursor, setDisabledCursor, setEditDomain, setHoverActive, setProperties, setStartLocation, setState, setToolCapture, setUnloadWhenFinished, stateTransition, unloadWhenFinished, viewerEntered, viewerExited
-
-
-
-
Field Detail
-
PROPERTY_MARQUEE_BEHAVIOR
public static final java.lang.Object PROPERTY_MARQUEE_BEHAVIOR
The property to be used inAbstractTool.setProperties(java.util.Map)forsetMarqueeBehavior(int).
-
BEHAVIOR_NODES_CONTAINED
public static final int BEHAVIOR_NODES_CONTAINED
This behaviour selects nodes completely encompassed by the marquee rectangle. This is the default behaviour for this tool.
-
BEHAVIOR_CONNECTIONS_TOUCHED
public static final int BEHAVIOR_CONNECTIONS_TOUCHED
This behaviour selects connections that intersect the marquee rectangle.
-
BEHAVIOR_NODES_AND_CONNECTIONS
public static final int BEHAVIOR_NODES_AND_CONNECTIONS
This behaviour selects nodes completely encompassed by the marquee rectangle, and all connections between those nodes.
-
-
Constructor Detail
-
GFMarqueeSelectionTool
public GFMarqueeSelectionTool()
Creates a new MarqueeSelectionTool of default typeBEHAVIOR_NODES_CONTAINED.
-
-
Method Detail
-
applyProperty
protected void applyProperty(java.lang.Object key, java.lang.Object value)Apply property.- Overrides:
applyPropertyin classorg.eclipse.gef.tools.AbstractTool- Parameters:
key- the keyvalue- the value- See Also:
AbstractTool.applyProperty(java.lang.Object, java.lang.Object)
-
deactivate
public void deactivate()
Erases feedback if necessary and puts the tool into the terminal state.- Specified by:
deactivatein interfaceorg.eclipse.gef.Tool- Overrides:
deactivatein classorg.eclipse.gef.tools.AbstractTool
-
getCommandName
protected java.lang.String getCommandName()
Gets the command name.- Specified by:
getCommandNamein classorg.eclipse.gef.tools.AbstractTool- Returns:
- the command name
- See Also:
AbstractTool.getCommandName()
-
getDebugName
protected java.lang.String getDebugName()
Gets the debug name.- Overrides:
getDebugNamein classorg.eclipse.gef.tools.AbstractTool- Returns:
- the debug name
- See Also:
AbstractTool.getDebugName()
-
handleButtonDown
protected boolean handleButtonDown(int button)
Handle button down.- Overrides:
handleButtonDownin classorg.eclipse.gef.tools.AbstractTool- Parameters:
button- the button- Returns:
- true, if handle button down
- See Also:
AbstractTool.handleButtonDown(int)
-
handleButtonUp
protected boolean handleButtonUp(int button)
Handle button up.- Overrides:
handleButtonUpin classorg.eclipse.gef.tools.AbstractTool- Parameters:
button- the button- Returns:
- true, if handle button up
- See Also:
AbstractTool.handleButtonUp(int)
-
handleDragInProgress
protected boolean handleDragInProgress()
Handle drag in progress.- Overrides:
handleDragInProgressin classorg.eclipse.gef.tools.AbstractTool- Returns:
- true, if handle drag in progress
- See Also:
AbstractTool.handleDragInProgress()
-
handleFocusLost
protected boolean handleFocusLost()
Handle focus lost.- Overrides:
handleFocusLostin classorg.eclipse.gef.tools.AbstractTool- Returns:
- true, if handle focus lost
- See Also:
AbstractTool.handleFocusLost()
-
handleInvalidInput
protected boolean handleInvalidInput()
This method is called when mouse or keyboard input is invalid and erases the feedback.- Overrides:
handleInvalidInputin classorg.eclipse.gef.tools.AbstractTool- Returns:
true
-
handleKeyDown
protected boolean handleKeyDown(org.eclipse.swt.events.KeyEvent e)
Handles high-level processing of a key down event. KeyEvents are forwarded to the current viewer'sKeyHandler, viaKeyHandler.keyPressed(KeyEvent).- Overrides:
handleKeyDownin classorg.eclipse.gef.tools.AbstractTool- Parameters:
e- the e- Returns:
- true, if handle key down
- See Also:
AbstractTool.handleKeyDown(KeyEvent)
-
isViewerImportant
protected boolean isViewerImportant(org.eclipse.gef.EditPartViewer viewer)
MarqueeSelectionTool is only interested in GraphicalViewers, not TreeViewers.- Overrides:
isViewerImportantin classorg.eclipse.gef.tools.AbstractTool- Parameters:
viewer- the viewer- Returns:
- true, if checks if is viewer important
- See Also:
AbstractTool.isViewerImportant(org.eclipse.gef.EditPartViewer)
-
setMarqueeBehavior
public void setMarqueeBehavior(int type)
Sets the type of parts that this tool will select. This method should only be invoked once: when the tool is being initialized.- Parameters:
type-BEHAVIOR_CONNECTIONS_TOUCHEDorBEHAVIOR_NODES_CONTAINEDorBEHAVIOR_NODES_AND_CONNECTIONS- Since:
- 3.1
-
setViewer
public void setViewer(org.eclipse.gef.EditPartViewer viewer)
Sets the viewer.- Specified by:
setViewerin interfaceorg.eclipse.gef.Tool- Overrides:
setViewerin classorg.eclipse.gef.tools.AbstractTool- Parameters:
viewer- the viewer- See Also:
Tool.setViewer(org.eclipse.gef.EditPartViewer)
-
-