UC Berkeley Group for User Interface Research
Updated November 17, 2000

edu.berkeley.guir.lib.satin.interpreter.commands
Class HoldSelectInterpreter

java.lang.Object
  |
  +--edu.berkeley.guir.lib.satin.interpreter.InterpreterImpl
        |
        +--edu.berkeley.guir.lib.satin.interpreter.commands.AbstractSelectInterpreter
              |
              +--edu.berkeley.guir.lib.satin.interpreter.commands.HoldSelectInterpreter
All Implemented Interfaces:
Cloneable, EventFilter, EventListener, Interpreter, SatinConstants, SatinEventFilter, Serializable, StrokeEventFilter, StrokeListener

public class HoldSelectInterpreter
extends AbstractSelectInterpreter

Hold and hold on a GraphicalObject to select. By default accepts left button only.

This software is distributed under the Berkeley Software License.

 Revisions:  - SATIN-v1.0-1.0.0, Jun 27 1999, JH
               Created class
             - SATIN-v2.1-1.0.0, Aug 11 2000, JH
               Touched for SATIN release
 

Since:
JDK 1.3
Version:
SATIN-v2.1-1.0.0, Aug 11 2000
Author:
Jason Hong ( jasonh@cs.berkeley.edu )
See Also:
Serialized Form

Inner classes inherited from class edu.berkeley.guir.lib.satin.SatinConstants
SatinConstants.ObjectPoolAffineTransform, SatinConstants.ObjectPoolPoint2D, SatinConstants.ObjectPoolPolygon2D, SatinConstants.ObjectPoolRectangle2D, SatinConstants.ObjectPoolStringBuffer, SatinConstants.UniqueAffineTransform, SatinConstants.UniquePoint2D, SatinConstants.UniquePolygon2D, SatinConstants.UniqueRectangle2D
 
Field Summary
protected  int curStrokeNum
           
protected  edu.berkeley.guir.lib.satin.interpreter.commands.HoldSelectInterpreter.HoldSelectAction holdAction
           
protected  boolean isConsumingEvents
           
protected  boolean isHold
           
protected  StrokeEvent lastEvt
           
protected  Timer timer
           
 
Fields inherited from class edu.berkeley.guir.lib.satin.interpreter.commands.AbstractSelectInterpreter
flagMultiSelect, flagShallow, MAX_TAP_LENGTH
 
Fields inherited from interface edu.berkeley.guir.lib.satin.SatinConstants
ABOVE, ALL, BAR, BELOW, clipboard, clprops, cmdqueue, cmdsubsys, CONTAINEDBY, CONTAINS, COORD_ABS, COORD_LOCAL, COORD_REL, DAMAGE_LATER, DAMAGE_NOW, DEBUG_GRAPHICS_OFFSET, DEBUG_STYLE_FILE, DEBUG_STYLE_GPROPERTY, DEEP, DEFAULT_POINT2D_POOL_SIZE, DEFAULT_POLYGON2D_POOL_SIZE, DEFAULT_RECTANGLE_POOL_SIZE, DEFAULT_REPAINT_THRESHOLD, DEFAULT_SELECT_THRESHOLD, DEFAULT_STRINGBUFFER_POOL_SIZE, DEFAULT_TRANSFORM_POOL_SIZE, DIR_CENTER, DIR_DOWN, DIR_DOWN_LEFT, DIR_DOWN_RIGHT, DIR_LEFT, DIR_RIGHT, DIR_UP, DIR_UP_LEFT, DIR_UP_RIGHT, FILTER_THRESHOLD, FIRST, FLOATING_PT_TOLERANCE, glprops, INTERSECTS, KEY_STYLE_DASHARRAY, KEY_STYLE_DASHPHASE, KEY_STYLE_DRAWCOLOR, KEY_STYLE_DRAWFONT, KEY_STYLE_DRAWTRANSPARENCY, KEY_STYLE_ENDCAP, KEY_STYLE_FILLCOLOR, KEY_STYLE_FILLTRANSPARENCY, KEY_STYLE_LINEJOIN, KEY_STYLE_LINEWIDTH, KEY_STYLE_MITERLIMIT, NEAR, NOTIFY_BOUNDS, NOTIFY_LAYER, NOTIFY_LOCATION, NOTIFY_STYLE, NOTIFY_TRANSFORM, poolPoints, poolPolys, poolRects, poolStrbuf, poolTx, rand, SATIN_DATA_DIRECTORY_DEFAULT, SATIN_DATA_DIRECTORY_GPROPERTY, SATIN_PROPERTIES_FILENAME, SHALLOW
 
Constructor Summary
HoldSelectInterpreter()
           
 
Method Summary
 Object clone()
          Since not overriding clone() can cause many errors with copying-and-pasting, I'm forcing you to do it.
 void handleNewStroke(NewStrokeEvent evt)
          By default, does nothing.
 void handleSingleStroke(SingleStrokeEvent evt)
          By default, does nothing.
 void handleUpdateStroke(UpdateStrokeEvent evt)
          By default, does nothing.
 boolean isEventAccepted(EventObject evt)
          This method is called for us when an event is handed to us, to ensure that we really want to handle the event.
 boolean isEventAccepted(StrokeEvent evt)
          This method is called for us when an event is handed to us, to ensure that we really want to handle the event.
protected  boolean selectClosestGob(StrokeEvent lastEvent)
          Select the closest graphical object.
 
Methods inherited from class edu.berkeley.guir.lib.satin.interpreter.commands.AbstractSelectInterpreter
getCandidates, getCandidates, getSelectCandidate, isMultiSelect, setDeep, setMultiSelect, setShallow, toggleSelectGraphicalObject
 
Methods inherited from class edu.berkeley.guir.lib.satin.interpreter.InterpreterImpl
clone, getAttachedGraphicalObject, getName, isConsumedAccepted, isEnabled, isLeftButtonAccepted, isMiddleButtonAccepted, isRightButtonAccepted, setAcceptConsumed, setAcceptLeftButton, setAcceptMiddleButton, setAcceptRightButton, setAttachedGraphicalObject, setEnabled, setName, toString
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

timer

protected Timer timer

isHold

protected boolean isHold

isConsumingEvents

protected boolean isConsumingEvents

lastEvt

protected StrokeEvent lastEvt

curStrokeNum

protected int curStrokeNum

holdAction

protected edu.berkeley.guir.lib.satin.interpreter.commands.HoldSelectInterpreter.HoldSelectAction holdAction
Constructor Detail

HoldSelectInterpreter

public HoldSelectInterpreter()
Method Detail

selectClosestGob

protected boolean selectClosestGob(StrokeEvent lastEvent)
Select the closest graphical object. This is the method called by the Timer, so override this method if you want additional behavior.
Parameters:
lastEvent - is the last stroke event that occurred.
Returns:
true if we selected something, false otherwise.

isEventAccepted

public boolean isEventAccepted(StrokeEvent evt)
Description copied from class: InterpreterImpl
This method is called for us when an event is handed to us, to ensure that we really want to handle the event.
Overrides:
isEventAccepted in class InterpreterImpl

isEventAccepted

public boolean isEventAccepted(EventObject evt)
Description copied from class: InterpreterImpl
This method is called for us when an event is handed to us, to ensure that we really want to handle the event.
Overrides:
isEventAccepted in class InterpreterImpl

handleNewStroke

public void handleNewStroke(NewStrokeEvent evt)
Description copied from class: InterpreterImpl
By default, does nothing.
Overrides:
handleNewStroke in class InterpreterImpl
Following copied from interface: edu.berkeley.guir.lib.satin.event.StrokeListener
Parameters:
evt - is the event to handle.

handleUpdateStroke

public void handleUpdateStroke(UpdateStrokeEvent evt)
Description copied from class: InterpreterImpl
By default, does nothing.
Overrides:
handleUpdateStroke in class InterpreterImpl
Following copied from interface: edu.berkeley.guir.lib.satin.event.StrokeListener
See Also:
StrokeListener.handleNewStroke(NewStrokeEvent).

handleSingleStroke

public void handleSingleStroke(SingleStrokeEvent evt)
Description copied from class: InterpreterImpl
By default, does nothing.
Overrides:
handleSingleStroke in class InterpreterImpl
Following copied from interface: edu.berkeley.guir.lib.satin.event.StrokeListener
See Also:
StrokeListener.handleNewStroke(NewStrokeEvent).

clone

public Object clone()
Description copied from class: InterpreterImpl
Since not overriding clone() can cause many errors with copying-and-pasting, I'm forcing you to do it. So there.
Overrides:
clone in class InterpreterImpl

Copyright Information