10
MapPanel Map MapServlet MapTool CORKServlet MouseAdapter Creation Tool Deletion Tool SpotServlet MapToolManager Wrapper component for a map (Map is subclass of MapPanel) for rendering spots into HTML. for rendering a map as a gif image. Abstract superclass for tools that operate on the map, e.g. for navigation or content editing Manager for MapTools: tracks the current state of the user interaction and makes it available to the current MapTool, also delegates mouse events to the current tool. MapTool implementation for creating/deleting structures and spots. Inherits: java.util.EventListener, java.awt.event.MouseListener, java.awt.event.MouseMotionLis tener & manager from MapTool Inherits from Swing & AWT Key Blue = nav dir Green = render dir Yellow = place dir Pink = map/builder dir extends or implements

MapPanel Map MapServlet MapTool CORKServlet MouseAdapter Creation ToolDeletion Tool SpotServlet MapToolManager Wrapper component for a map (Map is subclass

Embed Size (px)

Citation preview

Page 1: MapPanel Map MapServlet MapTool CORKServlet MouseAdapter Creation ToolDeletion Tool SpotServlet MapToolManager Wrapper component for a map (Map is subclass

MapPanel

Map MapServlet

MapTool

CORKServlet

MouseAdapter

Creation Tool Deletion Tool

SpotServlet

MapToolManager

Wrapper component for a map (Map is subclass of MapPanel)

for rendering spots into HTML.

for rendering a map as a gif image.

Abstract superclass for tools that operate on the map, e.g. for navigation or content editing

Manager for MapTools: tracks the current state of the user interaction and makes it available to the current MapTool, also delegates mouse events to the current tool.

MapTool implementation for creating/deleting structures and spots.

Inherits: java.util.EventListener, java.awt.event.MouseListener, java.awt.event.MouseMotionListener & manager from MapTool

Inherits from Swing & AWT

KeyBlue = nav dir

Green = render dirYellow = place dir

Pink = map/builder dir extends

or implements

Page 2: MapPanel Map MapServlet MapTool CORKServlet MouseAdapter Creation ToolDeletion Tool SpotServlet MapToolManager Wrapper component for a map (Map is subclass

LazyRenderableSetFactory

SelectedShapeArcFactory

ShapefileCache

RenderableSetFactory

ShapeArcRenderer

implements

ObjectRendererimplements

ShapefileRenderableSetFactory

ObjectComponentSource

FloatRectangleRenderer

implements

FloatRectangle

extends java.lang.Object,generates a set of ShapeArcs at (under) a specific coordinate. Direct Known Subclasses: BuildingPointSelectionHandler, BuildingSelectionHandler

Interface for factory objects that create RenderableSets* for a given Viewpoint. More documentation on this class (and related classes) is in linc/docs/design/CVEData.html

*public interface RenderableSetInterface for sets of objects that can be rendered for a given viewpoint, sets typically obtained from a RenderableSetFactory.

extends java.lang.Object, implementation that knows how to draw ShapeArcs to a graphics object.

extends java.lang.Object, implements ObjectRenderer for FloatRects. This is (initially) intended as a means for rendering viewpoints (e.g. of other users).

extends java.lang.Object Cache for instances of ShapefileRenderableSetFactory.

implementation of RenderableSetFactory that loads data from one or more Shapefiles.

extends java.lang.Object implements java.io.Serializable, Variation of an AWT Rect that uses floats instead of ints.

Page 3: MapPanel Map MapServlet MapTool CORKServlet MouseAdapter Creation ToolDeletion Tool SpotServlet MapToolManager Wrapper component for a map (Map is subclass

SpotComponentSource ObjectComponentSourceimplements

ShapeArcRenderer

StructureShapeArcRenderer

JPanel

Thumbnail

TranslatedRenderableSetFactory RenderableSetFactoryimplements

ToolBar

LazyRenderableSetFactory

implements

extends java.lang.Object, produces components for MOOsburg Spot instances. These are then rendered on a ZoomableRenderer.

Interface for objects that know how to construct and layout components for a specific kind of renderable object onto an awt Container for a given Viewpoint.

Toolbar component that is placed next to the zoom slider, implements java.awt.event.ActionListener, java.beans.PropertyChangeListener.

implements java.awt.event.MouseListener, MouseMotionListener Component that produces a thumbnail of another rendered view

extends java.lang.Object implements RenderableSetFactory - implementation that supports splitting a large dataset into smaller chunks, loaded on demand. Direct Known Subclasses: Region

Interface for factory objects that create RenderableSets* for a given Viewpoint. ????

extends java.lang.Object, implementation that knows how to draw ShapeArcs to a graphics object. ShapeArcRenderer subclass that knows how to extract ShapeArcs from structures

ObjectRenderer

Page 4: MapPanel Map MapServlet MapTool CORKServlet MouseAdapter Creation ToolDeletion Tool SpotServlet MapToolManager Wrapper component for a map (Map is subclass

ZoomSlider JSlider ChangeListener

ZoomableRenderer JComponent

Viewpoint java.io.Serializableimplements

implements

extends

extends

DefaultCoordinateTranslator

CoordinateTranslatorimplements

implements

Slider for controlling the zoom on a ZoomableRenderer. implements javax.swing.event.ChangeListener

Generic gui component for rendering objects that support zooming and panning. Note that for simplicity this class does NOT handle insets. (So don't use setBorder(...) on it.) More documentation on this class (and related classes) is in linc/docs/design/CVEData.html in the CVS repository.

Representation of the user's viewport. We are taking a much simpler approach to viewport than would be needed in (e.g.) an immersive 3D environment, as we assume a flat rendering. In this model, the viewpoint is defined by two rectangles: one that describes the bounds of the (2D) world coordinate system (which may be a projection of 3D data) and one that describes the bounds of the user's view of the world. Viewpoint also provides the dimensions of the rendered view. More documentation on this class (and related classes) is in linc/docs/design/CVEData.html in the CVS repository.

extends java.lang.Object

Interface for objects that implement translation between two coordinate systems, linear translation from one rectangle to another one.

Page 5: MapPanel Map MapServlet MapTool CORKServlet MouseAdapter Creation ToolDeletion Tool SpotServlet MapToolManager Wrapper component for a map (Map is subclass

RenderableSet

DuplicateRenderableSet

implements

DuplicateRenderableRemover

DefaultRenderableSet

implementsR2Vector

Object

R2Convex

RenderableSetFactory (also on previous page)

LazyRenderableSetFactory (See javadocs for subtree)

implements

extends java.lang.Object, RenderableSet implementation that uses a Vector for storing renderable objects

Interface for sets of objects that can be rendered for a given viewpoint. These are typically obtained from a RenderableSetFactory

???

Interface for factory objects that create RenderableSets for a given Viewpoint. More documentation on this class (and related classes) is in linc/docs/design/CVEData.html in the CVS repository.

extends java.lang.Object, Abstract RenderableSetFactory implementation that supports splitting a large dataset into smaller chunks, loaded on demand. More documentation on (and related classes) is in linc/docs/design/CVEData.html in the CVS repository.

extends java.lang.Object, Abstract RenderableSetFactory implementation that supports splitting a large dataset into smaller chunks, loaded on demand. More documentation on this class (and related classes) is in linc/docs/design/CVEData.html in the CVS repository.

represents the 2-dimensional vector with real (double) coordinates

computes a convex of a point set on a 2-dimensional plane

implements

Page 6: MapPanel Map MapServlet MapTool CORKServlet MouseAdapter Creation ToolDeletion Tool SpotServlet MapToolManager Wrapper component for a map (Map is subclass

uses replicated SharedChunk objects to store spot and structure data.

SharedRegion Region LazyRenderableSetFactory Object

Region implements java.io.Serializable, Representation of a 2-dimensional region containing spots and structures (More documentation on this class (and related classes) is in linc/docs/design/CVEData.html in the CVS repository. )

TestRegionTest class for a Region whose data is stored in Vectors.

implements java.io.Serializable, A simple MOO-like "room" landmark with a name, a description, and an image

Room

Object

WebView for rendering a room

RoomView

Trivial subclass of SharedList for storing Spot and Structure object ids. SharedChunk SharedList Object

implements java.io.Serializable, generic sharable list implementation. See SharedListModelWrapper for a class that can be used with a JList. (CORK)

SharedChunkReplicator

SharedListReplicator

Trivial subclass of SharedListReplicator that replicates properties of things that get added to it.

Page 7: MapPanel Map MapServlet MapTool CORKServlet MouseAdapter Creation ToolDeletion Tool SpotServlet MapToolManager Wrapper component for a map (Map is subclass

SharedSpot Spot

implements java.io.Serializable, Representation of a single, dimensionless point to which the user can navigate.

implements the Bridge EmbeddedObjectDescriptor interface, making it easier to use spots to refer to replicated content objects.

Objectimplements

implements java.io.Serializable, Representation of a structure (building, ship, etc...) More documentation on this class (and related classes) is in linc/docs/design/CVEData.html in the CVS repository.

Structure Object

Page 8: MapPanel Map MapServlet MapTool CORKServlet MouseAdapter Creation ToolDeletion Tool SpotServlet MapToolManager Wrapper component for a map (Map is subclass

ShapefileLayerComponentView

DefaultComponentView SharedRegionComponentView

LayerConfigComponentView

MapComponentView

Configuration panel for Shapefile layers implements java.awt.event.MouseListener, javax.swing.event.ChangeListener, java.beans.PropertyChangeListener

Abstract class for configuration panels for different kinds of map layers.

implements java.awt.event.MouseListener, java.beans.PropertyChangeListenerConfiguration panel for editable SharedRegion objects containing Spots and Structures.

edu.vt.cs.collab.bridge.DefaultComponentView

Jpanel (swing)

Jcomponent (swing)

Container (awt)

Component (awt)

Implements cove.nav.NavigationControl, NavigationListener, implementation that presentsa map based on a MapConfig object. This currently includes a fair bit of knowledge about the format of the layer definitions created by various LayerConfigPanel objects in map.builder. If we end up with more than a few of these we should abstract this better.

GeneralConfigPanel

implements java.awt.event.ActionListener, Configuration panel for general map properties: name, bounds and scroll modes.

Builder

LayerConfigPanel

ShapefileLayerPanel

implements java.awt.event.ActionListenerConfiguration panel for a map. Includes panels for general map configuration and configuration of layers.

Abstract classfor configuration panels fordifferent kindsof map layers.

Object (lang)

SharedRegionLayerPanel

Configuration panel for Shapefile layers

Configuration panel for editable SharedRegion objects containing

Spots and Structures.

LayerList

Panel containing an editable list of layers. All Implemented Interfaces: javax.accessibility.Accessible, java.awt.event.ActionListener, java.util.EventListener, java.awt.image.ImageObserver, javax.swing.event.ListSelectionListener, java.io.Serializable, java.awt.MenuContainer

Page 9: MapPanel Map MapServlet MapTool CORKServlet MouseAdapter Creation ToolDeletion Tool SpotServlet MapToolManager Wrapper component for a map (Map is subclass

GISMapHelper implements edu.vt.chci.cove.nav.NavigationControl, java.beans.PropertyChangeListener

MapWebViewMapConfig

MapConfigCopier

DefaultReplicatedObjectCopier

implements collab.bridge.WebView, WebView for rendering a gif for a MapConfig.

cork.util.ReplicatedObjectCopyUtility.DefaultReplicatedObjectCopier (implements edu.vt.cs.collab.cork.util.ReplicatedObjectCopier)Object

ReplicatedObjectCopier implementation that handles copying SharedRegions referenced by a MapConfig.

ShapeFileLayerimplements java.io.SerializableShared representation of a static (shapefile) map layer.

Object

Replicable configuration object describing a set of data to be displayed on a map. It contains some general map meta-data, along with a list of layer descriptions.

WebSite(Bridge)

SharedList (Bridge)

Object

collab.bridge.apps.web.WebSite implements collab.bridge.apps.text.SiteTemplateSource

ObjectRecordList (Bridge)

collab.bridge.apps.linear.ObjectRecordList (implements collab.bridge.EmbeddedObjectSet)

implements java.io.Serializable

Object

Page 10: MapPanel Map MapServlet MapTool CORKServlet MouseAdapter Creation ToolDeletion Tool SpotServlet MapToolManager Wrapper component for a map (Map is subclass

MapConfigStorageHandler

Object

SharedListReplicator

ObjectRecordListReplicator

MapConfigReplicator

Trivial subclass of SharedListReplicator for replicating a MapConfig object.

collab.cork.models.sharedlist.SharedListReplicator

Subclass of SharedListStorageHandler for storing a MapConfig object. All Implemented Interfaces: edu.vt.cs.collab.cork.storage.StorageHandler

SharedListStorageHandler

Object

collab.cork.models.sharedlist.SharedListStorageHandlerimplements edu.vt.cs.collab.cork.storage.StorageHandle

collab.bridge.apps.linear.ObjectRecordListReplicator