DIRECTORY SVInterfaceTypes, ViewerOps USING [CreateViewer], ViewerClasses USING [Viewer, ViewerRec]; SVViewerTool: DEFINITIONS IMPORTS ViewerOps = BEGIN OPEN ViewerClasses; SolidContainer: TYPE = SVInterfaceTypes.SolidContainer; Create: PROC [info: ViewerRec _ [], paint: BOOL _ TRUE] RETURNS [solidContainer: SolidContainer] = INLINE {RETURN[ViewerOps.CreateViewer[$SolidViewerTool, info, paint]]}; ChildYBound: PROC [solidContainer: SolidContainer, child: Viewer] = INLINE {solidContainer.class.set[self: solidContainer, data: child, op: $YBound]} ; ChildXBound: PROC [solidContainer: SolidContainer, child: Viewer] = INLINE {solidContainer.class.set[self: solidContainer, data: child, op: $XBound]} ; END. RFile: SVViewerTool.mesa Last edited by Bier on December 18, 1982 1:43 am Copyright c 1984 by Xerox Corporation. All rights reserved. Author: Eric Bier before July 30, 1984 2:01:43 am PDT My very own container-type class for solid viewers Containers are just viewers that are convenient to hold other viewers. Creates a new, empty container. You probably want to pass a name in the info record. constrain (child.wy + child.wh = solidViewerTool.wh) after next time solidViewerTool is painted constrain (child.wx + child.ww = solidViewerTool.ww) after next time solidViewerTool is painted Κ:˜Iheadšœ™Jšœ0™0Jšœ Οmœ1™