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

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

java.lang.Object
  |
  +--edu.berkeley.guir.lib.satin.view.ViewImpl
All Implemented Interfaces:
Cloneable, SatinConstants, Serializable, View
Direct Known Subclasses:
DefaultMultiViewImpl, DefaultViewImpl, SemanticZoomViewImpl, ViewWrapper

public abstract class ViewImpl
extends Object
implements View

A sample implementation of View, designed to be subclassed. Be sure to implement clone() correctly!

This software is distributed under the Berkeley Software License.

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

Since:
JDK 1.2.2
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  GraphicalObject gob
           
protected  Polygon2D 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
ViewImpl()
           
 
Method Summary
abstract  Object clone()
          Deep clone.
protected  ViewImpl clone(ViewImpl v)
          Make the passed view the same as us.
 GraphicalObject getAttachedGraphicalObject()
          Get the GraphicalObject this View is attached to.
 Polygon2D getBoundingPoints2DRef()
          Get the reference for the bounding points for this view.
 String getName()
          Get the name of this View.
 boolean isVisible()
          Check whether this view is visible or not.
 GraphicalObject setAttachedGraphicalObject(GraphicalObject newGob)
          Used to set the GraphicalObject this View is attached to.
 void setBoundingPoints2DRef(Polygon2D p)
          Set the reference for the bounding points for this view.
 String setName(String strName)
          Set the name of this View.
 void setVisible(boolean flag)
          Set whether this view is visible or not.
 String toString()
           
 
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
getViewDisplayValue, render
 

Field Detail

gob

protected GraphicalObject gob

poly

protected Polygon2D poly
Constructor Detail

ViewImpl

public ViewImpl()
Method Detail

setBoundingPoints2DRef

public void setBoundingPoints2DRef(Polygon2D p)
Description copied from interface: View
Set the reference for the bounding points for this view. Make sure that the bounds match what you are rendering. Otherwise, you will get some repaint errors, as well as selection errors.
Specified by:
setBoundingPoints2DRef in interface View
Following copied from interface: edu.berkeley.guir.lib.satin.view.View
Parameters:
p - is the polygon bounds. Assumes the bounds are already in local coordinates.

setAttachedGraphicalObject

public GraphicalObject setAttachedGraphicalObject(GraphicalObject newGob)
Description copied from interface: View
Used to set the GraphicalObject this View is attached to. All views attached will have the specified GOb set to this parameter. This method should be called automatically when the View is added to a GraphicalObject.
Specified by:
setAttachedGraphicalObject in interface View
Following copied from interface: edu.berkeley.guir.lib.satin.view.View
Parameters:
gob - is the GraphicalObject this View is attached to.
Returns:
a reference to gob.

setName

public String setName(String strName)
Description copied from interface: View
Set the name of this View.
Specified by:
setName in interface View
Following copied from interface: edu.berkeley.guir.lib.satin.view.View
Parameters:
strName - is the name of this View.
Returns:
a reference to strName.

setVisible

public void setVisible(boolean flag)
Description copied from interface: View
Set whether this view is visible or not.
Specified by:
setVisible in interface View

getBoundingPoints2DRef

public Polygon2D getBoundingPoints2DRef()
Description copied from interface: View
Get the reference for the bounding points for this view.
Specified by:
getBoundingPoints2DRef in interface View
Following copied from interface: edu.berkeley.guir.lib.satin.view.View
Returns:
the polygon bounds.

getAttachedGraphicalObject

public GraphicalObject getAttachedGraphicalObject()
Description copied from interface: View
Get the GraphicalObject this View is attached to.
Specified by:
getAttachedGraphicalObject in interface View
Following copied from interface: edu.berkeley.guir.lib.satin.view.View
Returns:
the GraphicalObject this View is attached to.

getName

public String getName()
Description copied from interface: View
Get the name of this View.
Specified by:
getName in interface View
Following copied from interface: edu.berkeley.guir.lib.satin.view.View
Returns:
Some useful not-too-technical real-world name for this View.

isVisible

public boolean isVisible()
Description copied from interface: View
Check whether this view is visible or not. A view is visible if the visible flag is set (via View.setVisible(boolean)) and if the view display value is greater than 0.
Specified by:
isVisible in interface View
Following copied from interface: edu.berkeley.guir.lib.satin.view.View
Returns:
true if the view is visible, false otherwise.

toString

public String toString()
Overrides:
toString in class Object

clone

public abstract Object clone()
Deep clone. You must override this method. So there.
Specified by:
clone in interface View
Overrides:
clone in class Object

clone

protected ViewImpl clone(ViewImpl v)
Make the passed view the same as us. For clone chaining purposes.

Copyright Information