JHotDraw 7.3.1

org.jhotdraw.draw
Class DelegationSelectionTool

java.lang.Object
  extended by org.jhotdraw.beans.AbstractBean
      extended by org.jhotdraw.draw.AbstractTool
          extended by org.jhotdraw.draw.SelectionTool
              extended by org.jhotdraw.draw.DelegationSelectionTool
All Implemented Interfaces:
java.awt.event.KeyListener, java.awt.event.MouseListener, java.awt.event.MouseMotionListener, java.io.Serializable, java.lang.Cloneable, java.util.EventListener, Tool, ToolListener

public class DelegationSelectionTool
extends SelectionTool

A SelectionTool, which recognizes double clicks and popup menu triggers. If a double click or popup trigger is encountered a hook method is called, which handles the event. This methods can be overriden in subclasse to provide customized behaviour.

By default, this Tool delegates mouse events to a specific Tool if the figure which has been double clicked, provides a specialized tool.

Version:
$Id: DelegationSelectionTool.java 527 2009-06-07 14:28:19Z rawcoder $
Author:
Werner Randelshofer
See Also:
Serialized Form

Field Summary
 
Fields inherited from class org.jhotdraw.draw.SelectionTool
SELECT_BEHIND_ENABLED_PROPERTY
 
Fields inherited from class org.jhotdraw.draw.AbstractTool
anchor, editor, isWorking, listenerList
 
Fields inherited from class org.jhotdraw.beans.AbstractBean
propertySupport
 
Constructor Summary
DelegationSelectionTool()
          Creates a new instance.
DelegationSelectionTool(java.util.Collection<javax.swing.Action> drawingActions, java.util.Collection<javax.swing.Action> selectionActions)
          Creates a new instance.
 
Method Summary
 java.lang.String getToolTipText(DrawingView view, java.awt.event.MouseEvent evt)
          Returns the tooltip text for a mouse event on a drawing view.
protected  void handleDoubleClick(java.awt.event.MouseEvent evt)
          Hook method which can be overriden by subclasses to provide specialised behaviour in the event of a double click.
protected  void handleMultiClick(java.awt.event.MouseEvent evt)
          Hook method which can be overriden by subclasses to provide specialised behaviour in the event of a multi-click.
protected  void handlePopupMenu(java.awt.event.MouseEvent evt)
          Hook method which can be overriden by subclasses to provide specialised behaviour in the event of a popup trigger.
 void mouseClicked(java.awt.event.MouseEvent evt)
           
 void mouseDragged(java.awt.event.MouseEvent evt)
           
 void mousePressed(java.awt.event.MouseEvent evt)
          MouseListener method for mousePressed events.
 void mouseReleased(java.awt.event.MouseEvent evt)
          MouseListener method for mouseReleased events.
 void setDrawingActions(java.util.Collection<javax.swing.Action> drawingActions)
           
 void setFigureActions(java.util.Collection<javax.swing.Action> selectionActions)
           
protected  void showPopupMenu(Figure figure, java.awt.Point p, java.awt.Component c)
           
 
Methods inherited from class org.jhotdraw.draw.SelectionTool
activate, areaInvalidated, deactivate, draw, getDragTracker, getHandleTracker, getSelectAreaTracker, isSelectBehindEnabled, keyPressed, keyReleased, keyTyped, mouseEntered, mouseExited, mouseMoved, setDragTracker, setHandleTracker, setSelectAreaTracker, setSelectBehindEnabled, setTracker, supportsHandleInteraction, toolDone, toolStarted
 
Methods inherited from class org.jhotdraw.draw.AbstractTool
addToolListener, addUndoableEditListener, constrainPoint, constrainPoint, createActionMap, createInputMap, editCopy, editCut, editDelete, editDuplicate, editPaste, fireAreaInvalidated, fireAreaInvalidated, fireToolDone, fireToolStarted, getActionMap, getDrawing, getEditor, getInputMap, getView, isActive, removeToolListener, removeUndoableEditListener, setActionMap, setInputMap, updateCursor, viewToDrawing
 
Methods inherited from class org.jhotdraw.beans.AbstractBean
addPropertyChangeListener, addPropertyChangeListener, clone, firePropertyChange, firePropertyChange, firePropertyChange, getPropertyChangeListeners, removePropertyChangeListener, removePropertyChangeListener
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DelegationSelectionTool

public DelegationSelectionTool()
Creates a new instance.


DelegationSelectionTool

public DelegationSelectionTool(java.util.Collection<javax.swing.Action> drawingActions,
                               java.util.Collection<javax.swing.Action> selectionActions)
Creates a new instance.

Method Detail

setDrawingActions

public void setDrawingActions(java.util.Collection<javax.swing.Action> drawingActions)

setFigureActions

public void setFigureActions(java.util.Collection<javax.swing.Action> selectionActions)

mousePressed

public void mousePressed(java.awt.event.MouseEvent evt)
MouseListener method for mousePressed events. If the popup trigger has been activated, then the appropriate hook method is called.

Specified by:
mousePressed in interface java.awt.event.MouseListener
Overrides:
mousePressed in class SelectionTool

mouseReleased

public void mouseReleased(java.awt.event.MouseEvent evt)
MouseListener method for mouseReleased events. If the popup trigger has been activated, then the appropriate hook method is called.

Specified by:
mouseReleased in interface java.awt.event.MouseListener
Overrides:
mouseReleased in class SelectionTool

mouseDragged

public void mouseDragged(java.awt.event.MouseEvent evt)
Specified by:
mouseDragged in interface java.awt.event.MouseMotionListener
Overrides:
mouseDragged in class SelectionTool

mouseClicked

public void mouseClicked(java.awt.event.MouseEvent evt)
Specified by:
mouseClicked in interface java.awt.event.MouseListener
Overrides:
mouseClicked in class SelectionTool

handlePopupMenu

protected void handlePopupMenu(java.awt.event.MouseEvent evt)
Hook method which can be overriden by subclasses to provide specialised behaviour in the event of a popup trigger.


showPopupMenu

protected void showPopupMenu(Figure figure,
                             java.awt.Point p,
                             java.awt.Component c)

handleDoubleClick

protected void handleDoubleClick(java.awt.event.MouseEvent evt)
Hook method which can be overriden by subclasses to provide specialised behaviour in the event of a double click.


handleMultiClick

protected void handleMultiClick(java.awt.event.MouseEvent evt)
Hook method which can be overriden by subclasses to provide specialised behaviour in the event of a multi-click.


getToolTipText

public java.lang.String getToolTipText(DrawingView view,
                                       java.awt.event.MouseEvent evt)
Description copied from interface: Tool
Returns the tooltip text for a mouse event on a drawing view.

Specified by:
getToolTipText in interface Tool
Overrides:
getToolTipText in class AbstractTool
Parameters:
view - A drawing view.
evt - A mouse event.
Returns:
A tooltip text or null.

Copyright 1996-2009 (c) by the authors and contributors of the JHotDraw project.
Some rights reserved.