CoreView.Mesa
Copyright Ó by Xerox Corporation. All rights reserved.
Written by Giordano Bruno Beretta, January 22, 1987 10:44:14 am PST
gbb January 30, 1987 2:10:46 pm PST
Visualizes the Manhattan geometry in a Core layout.
DIRECTORY
CoreGeometry USING [CellType, Decoration, Rect],
ViewerClasses USING [Viewer],
ViewerOps USING [DestroyViewer];
CoreView: CEDAR DEFINITIONS IMPORTS ViewerOps
~ BEGIN
CoreCell: TYPE ~ CoreGeometry.CellType;
Layout: TYPE ~ CoreGeometry.Decoration;
Rect: TYPE ~ CoreGeometry.Rect;
Viewer: TYPE ~ ViewerClasses.Viewer;
GeometryView: PROC [cell: CoreCell, geom: Layout, abortFlag: REF BOOL] RETURNS [viewer: Viewer];
Paints the geometry found in cell into an Imager viewer.
StartIncrementalView: PROC [cell: CoreCell, geom: Layout, abortFlag: REF BOOL] RETURNS [viewer: Viewer];
Initializes a viewer into which rectangles can be drawn one at a time in the context of a given cell.
DestroyView: PROC [viewer: Viewer] ~ INLINE {ViewerOps.DestroyViewer [viewer]};
AddRectangle: PROC [viewer: Viewer, rect: Rect, label: REF ANY];
Adds a rectangle to a viewer started with StartIncrementalView. The label field is loopholed to label the rectangle.
debugViewer: Viewer
This is a convenience for debugging. It allows you to initialize and destroy a viewer in one package while updating it in an other package.
END.