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

edu.berkeley.guir.lib.satin.view
Class StickyAllViewWrapper

java.lang.Object
  |
  +--edu.berkeley.guir.lib.satin.view.ViewImpl
        |
        +--edu.berkeley.guir.lib.satin.view.ViewWrapper
              |
              +--edu.berkeley.guir.lib.satin.view.SemanticZoomViewWrapper
                    |
                    +--edu.berkeley.guir.lib.satin.view.StickyViewWrapper
                          |
                          +--edu.berkeley.guir.lib.satin.view.StickyAllViewWrapper
All Implemented Interfaces:
Cloneable, SatinConstants, SemanticZoomView, Serializable, View

public class StickyAllViewWrapper
extends StickyViewWrapper

Wraps up views to stick to a certain location.

This software is distributed under the Berkeley Software License.

 Revisions:  - SATIN-v1.0-1.0.0, Feb 28 2000, JH
               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 class edu.berkeley.guir.lib.satin.view.ViewImpl
gob, poly
 
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
StickyAllViewWrapper()
           
StickyAllViewWrapper(View v)
          Wrap a view into a sticky wrapper, making it appear in the same place despite any kind of transformation.
 
Method Summary
 Object clone()
          Implementation of the Sorceror's Apprentice algorithm.
protected  StickyAllViewWrapper clone(StickyAllViewWrapper vw)
           
protected  AffineTransform getStickyTransform(AffineTransform txTmp)
          Get the transform that makes the view "sticky".
 void render(SatinGraphics g)
          Render this view.
 void setLocation(double x, double y)
          Set the absolute location where this view will appear.
 
Methods inherited from class edu.berkeley.guir.lib.satin.view.StickyViewWrapper
clone, getBoundingPoints2DRef, getUnstickyBoundingPoints2DRef
 
Methods inherited from class edu.berkeley.guir.lib.satin.view.SemanticZoomViewWrapper
clone, getEndScale, getFadeIn, getFadeOut, getScaleFactor, getStartScale, getViewDisplayValue, setDisplayRange, setDisplayRange, toString
 
Methods inherited from class edu.berkeley.guir.lib.satin.view.ViewWrapper
clone, getName, getView, setAttachedGraphicalObject, setBoundingPoints2DRef, setView
 
Methods inherited from class edu.berkeley.guir.lib.satin.view.ViewImpl
clone, getAttachedGraphicalObject, isVisible, setName, setVisible
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface edu.berkeley.guir.lib.satin.view.View
getAttachedGraphicalObject, getName, isVisible, setAttachedGraphicalObject, setBoundingPoints2DRef, setName, setVisible
 

Constructor Detail

StickyAllViewWrapper

public StickyAllViewWrapper()

StickyAllViewWrapper

public StickyAllViewWrapper(View v)
Wrap a view into a sticky wrapper, making it appear in the same place despite any kind of transformation.
Method Detail

getStickyTransform

protected AffineTransform getStickyTransform(AffineTransform txTmp)
Description copied from class: StickyViewWrapper
Get the transform that makes the view "sticky". One way of thinking about it is that the transform returned by this method "undoes" part of the absolute transform of the Graphical Object attached to this view. For example, Sticky Z would "undo" the zoom part of the absolute transform, while Sticky R would "undo" the rotation part of the absolute transform.

Don't call StickyViewWrapper.getBoundingPoints2DRef() or any other method that gets or uses the bounds in this method, as that will cause a mutually recursive call.

Overrides:
getStickyTransform in class StickyViewWrapper
Following copied from class: edu.berkeley.guir.lib.satin.view.StickyViewWrapper
Parameters:
tx - is storage space.

setLocation

public void setLocation(double x,
                        double y)
Set the absolute location where this view will appear.

render

public void render(SatinGraphics g)
Description copied from interface: View
Render this view. Use (0,0) as the top-left corner of this view. Any transformations that the attached GraphicalObject has will automatically be applied, so all you have to do is render the view normally.
Overrides:
render in class StickyViewWrapper

clone

public Object clone()
Description copied from interface: View
Implementation of the Sorceror's Apprentice algorithm. Needs to be a DEEP clone.
Overrides:
clone in class SemanticZoomViewWrapper

clone

protected StickyAllViewWrapper clone(StickyAllViewWrapper vw)

Copyright Information