Follow Techotopia on Twitter

On-line Guides
All Guides
eBook Store
iOS / Android
Linux for Beginners
Office Productivity
Linux Installation
Linux Security
Linux Utilities
Linux Virtualization
Linux Kernel
System/Network Admin
Programming
Scripting Languages
Development Tools
Web Development
GUI Toolkits/Desktop
Databases
Mail Systems
openSolaris
Eclipse Documentation
Techotopia.com
Virtuatopia.com
Answertopia.com

How To Guides
Virtualization
General System Admin
Linux Security
Linux Filesystems
Web Servers
Graphics & Desktop
PC Hardware
Windows
Problem Solutions
Privacy Policy

  




 

 

Eclipse GEF
3.3

org.eclipse.gef.tools
Class MarqueeSelectionTool

java.lang.Object
  extended by

org.eclipse.gef.util.FlagSupport
      extended by

org.eclipse.gef.tools.AbstractTool
          extended by
org.eclipse.gef.tools.MarqueeSelectionTool
All Implemented Interfaces:
RequestConstants, Tool
Direct Known Subclasses:
MarqueeDragTracker

public class MarqueeSelectionTool
extends AbstractTool

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.


Nested Class Summary
 
Nested classes inherited from class org.eclipse.gef.tools. AbstractTool
AbstractTool.Input
 
Field Summary
static int BEHAVIOR_CONNECTIONS_TOUCHED
          This behaviour selects connections that intersect the marquee rectangle.
static int BEHAVIOR_NODES_AND_CONNECTIONS
          This behaviour selects nodes completely encompassed by the marquee rectangle, and all connections between those nodes.
static int BEHAVIOR_NODES_CONTAINED
          This behaviour selects nodes completely encompassed by the marquee rectangle.
static java.lang.Object PROPERTY_MARQUEE_BEHAVIOR
          The property to be used in AbstractTool.setProperties(java.util.Map) for setMarqueeBehavior(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
MarqueeSelectionTool ()
          Creates a new MarqueeSelectionTool of default type BEHAVIOR_NODES_CONTAINED.
 
Method Summary
protected  void applyProperty (java.lang.Object key, java.lang.Object value)
          This method is invoked from AbstractTool.setProperties(Map).
 void deactivate ()
          Erases feedback if necessary and puts the tool into the terminal state.
protected  java.lang.String getCommandName ()
          Returns the identifier of the command that is being sought.
protected  java.lang.String getDebugName ()
          Returns the debug name for this tool.
protected  boolean handleButtonDown (int button)
          Called when the mouse button has been pressed.
protected  boolean handleButtonUp (int button)
          Called when the mouse button has been released.
protected  boolean handleDragInProgress ()
          Called whenever a mouse is being dragged and the drag threshold has been exceeded.
protected  boolean handleFocusLost ()
          Handles high-level processing of a focus lost event.
protected  boolean handleInvalidInput ()
          This method is called when mouse or keyboard input is invalid and erases the feedback.
protected  boolean handleKeyDown (KeyEvent e)
          Handles high-level processing of a key down event.
protected  boolean isViewerImportant ( EditPartViewer viewer)
          MarqueeSelectionTool is only interested in GraphicalViewers, not TreeViewers.
 void setMarqueeBehavior (int type)
          Sets the type of parts that this tool will select.
 void setViewer ( EditPartViewer viewer)
          Sets the active EditPartViewer.
 
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
 
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
 

Field Detail

PROPERTY_MARQUEE_BEHAVIOR

public static final java.lang.Object PROPERTY_MARQUEE_BEHAVIOR
The property to be used in AbstractTool.setProperties(java.util.Map) for setMarqueeBehavior(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.

Since:
3.1

BEHAVIOR_CONNECTIONS_TOUCHED

public static final int BEHAVIOR_CONNECTIONS_TOUCHED
This behaviour selects connections that intersect the marquee rectangle.

Since:
3.1

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.

Since:
3.1
Constructor Detail

MarqueeSelectionTool

public MarqueeSelectionTool()
Creates a new MarqueeSelectionTool of default type BEHAVIOR_NODES_CONTAINED.

Method Detail

applyProperty

protected void applyProperty(java.lang.Object key,
                             java.lang.Object value)
Description copied from class: AbstractTool
This method is invoked from AbstractTool.setProperties(Map). Sub-classes can override to add support for more properties. This method should fail silently in case of any error.

AbstractTool uses introspection to match any keys with properties. For instance, the key "defaultCursor" would lead to the invocation of AbstractTool.setDefaultCursor(Cursor) with the provided value.

Overrides:
applyProperty in class AbstractTool
Parameters:
key - the key; may be null
value - the new 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:
deactivate in interface Tool
Overrides:
deactivate in class AbstractTool
See Also:
AbstractTool.activate()

getCommandName

protected java.lang.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()

getDebugName

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

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

handleButtonDown

protected boolean handleButtonDown(int button)
Description copied from class: AbstractTool
Called when the mouse button has been pressed. By default, nothing happens and false is returned. Subclasses may override this method to interpret the meaning of a mouse down. Returning true indicates that the button down was handled in some way.

Overrides:
handleButtonDown in class AbstractTool
Parameters:
button - which button went down
Returns:
true if the buttonDown was handled
See Also:
AbstractTool.handleButtonDown(int)

handleButtonUp

protected boolean handleButtonUp(int button)
Description copied from class: AbstractTool
Called when the mouse button has been released. By default, nothing happens and false is returned. Subclasses may override this method to interpret the mouse up. Returning true indicates that the mouse up was handled in some way.

Overrides:
handleButtonUp in class AbstractTool
Parameters:
button - the button being released
Returns:
true if the button up was handled
See Also:
AbstractTool.handleButtonUp(int)

handleDragInProgress

protected boolean handleDragInProgress()
Description copied from class: AbstractTool
Called whenever a mouse is being dragged and the drag threshold has been exceeded. Prior to the drag threshold being exceeded, only AbstractTool.handleDrag() is called. This method gets called repeatedly for every mouse move during the drag. By default, nothing happens and false is returned. Subclasses may override this method to interpret the drag. Returning true indicates that the drag was handled.

Overrides:
handleDragInProgress in class AbstractTool
Returns:
true if the drag was handled
See Also:
AbstractTool.handleDragInProgress()

handleFocusLost

protected boolean handleFocusLost()
Description copied from class: AbstractTool
Handles high-level processing of a focus lost event. By default, nothing happens and false is returned. Subclasses may override this method to interpret the focus lost event. Return true to indicate that the event was processed.

Overrides:
handleFocusLost in class AbstractTool
Returns:
true if the event was handled
See Also:
AbstractTool.handleFocusLost()

handleInvalidInput

protected boolean handleInvalidInput()
This method is called when mouse or keyboard input is invalid and erases the feedback.

Overrides:
handleInvalidInput in class AbstractTool
Returns:
true

handleKeyDown

protected boolean handleKeyDown(KeyEvent e)
Handles high-level processing of a key down event. KeyEvents are forwarded to the current viewer's KeyHandler, via KeyHandler.keyPressed(KeyEvent).

Overrides:
handleKeyDown in class AbstractTool
Parameters:
e - the key event
Returns:
true if the key down was handled.
See Also:
AbstractTool.handleKeyDown(KeyEvent)

isViewerImportant

protected boolean isViewerImportant(
EditPartViewer viewer)
MarqueeSelectionTool is only interested in GraphicalViewers, not TreeViewers.

Overrides:
isViewerImportant in class AbstractTool
Parameters:
viewer - the viewer where the event occured
Returns:
true if this tool is interested in events occuring in the given viewer; false otherwise
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_TOUCHED or BEHAVIOR_NODES_CONTAINED or BEHAVIOR_NODES_AND_CONNECTIONS
Since:
3.1

setViewer

public void setViewer(
EditPartViewer viewer)
Description copied from class: AbstractTool
Sets the active EditPartViewer. The active viewer is the viewer from which the last event was received.

Specified by:
setViewer in interface Tool
Overrides:
setViewer in class AbstractTool
Parameters:
viewer - the viewer
See Also:
Tool.setViewer(org.eclipse.gef.EditPartViewer)

Eclipse GEF
3.3

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

 
 
  Published under the terms of the Eclipse Public License Version 1.0 ("EPL") Design by Interspire