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

edu.berkeley.guir.lib.satin.interpreter
Class SemanticZoomInterpreterWrapper

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

public class SemanticZoomInterpreterWrapper
extends InterpreterWrapper

Makes an interpreter work on certain scales only.

This software is distributed under the Berkeley Software License.

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

Since:
JDK 1.3RC1
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
 
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
SemanticZoomInterpreterWrapper()
          Empty constructor, does nothing.
SemanticZoomInterpreterWrapper(Interpreter newintrp)
          Wrap an interpreter.
SemanticZoomInterpreterWrapper(Interpreter newintrp, double startSc, double endSc)
           
SemanticZoomInterpreterWrapper(SemanticZoomInterpreterWrapper w)
          A copy constructor, deep.
 
Method Summary
 Object clone()
          Since not overriding clone() can cause many errors with copying-and-pasting, I'm forcing you to do it.
protected  SemanticZoomInterpreterWrapper clone(SemanticZoomInterpreterWrapper iw)
           
protected  double getAbsoluteScaleFactor()
           
 double getEndScale()
           
 double getStartScale()
           
 void handleNewStroke(NewStrokeEvent evt)
          Active if and only if we are in the right scale range.
 void handleSingleStroke(SingleStrokeEvent evt)
          Active if and only if we are in the right scale range.
 void handleUpdateStroke(UpdateStrokeEvent evt)
          Active if and only if we are in the right scale range.
 boolean isEnabled()
          See if we are currently enabled AND in a valid zoom range.
 void setRange(double start, double end)
           
 String toString()
           
 
Methods inherited from class edu.berkeley.guir.lib.satin.interpreter.InterpreterWrapper
clone, getInterpreter, setAttachedGraphicalObject, setInterpreter
 
Methods inherited from class edu.berkeley.guir.lib.satin.interpreter.InterpreterImpl
clone, getAttachedGraphicalObject, getName, isConsumedAccepted, isEventAccepted, isEventAccepted, isLeftButtonAccepted, isMiddleButtonAccepted, isRightButtonAccepted, setAcceptConsumed, setAcceptLeftButton, setAcceptMiddleButton, setAcceptRightButton, setEnabled, setName
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

SemanticZoomInterpreterWrapper

public SemanticZoomInterpreterWrapper()
Empty constructor, does nothing.

SemanticZoomInterpreterWrapper

public SemanticZoomInterpreterWrapper(Interpreter newintrp,
                                      double startSc,
                                      double endSc)

SemanticZoomInterpreterWrapper

public SemanticZoomInterpreterWrapper(Interpreter newintrp)
Wrap an interpreter. By default, this semantic zoom wrapper is active from zoom scale 0 to infinity.

SemanticZoomInterpreterWrapper

public SemanticZoomInterpreterWrapper(SemanticZoomInterpreterWrapper w)
A copy constructor, deep.
Method Detail

setRange

public void setRange(double start,
                     double end)

getStartScale

public double getStartScale()

getEndScale

public double getEndScale()

isEnabled

public boolean isEnabled()
See if we are currently enabled AND in a valid zoom range.
Overrides:
isEnabled in class InterpreterWrapper

getAbsoluteScaleFactor

protected double getAbsoluteScaleFactor()

handleNewStroke

public void handleNewStroke(NewStrokeEvent evt)
Active if and only if we are in the right scale range.
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)
Active if and only if we are in the right scale range.
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)
Active if and only if we are in the right scale range.
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

clone

protected SemanticZoomInterpreterWrapper clone(SemanticZoomInterpreterWrapper iw)

toString

public String toString()
Overrides:
toString in class InterpreterWrapper

Copyright Information