DIRECTORY CD USING [Rect, Position, Design], CDSequencer USING [Command], Rope USING [ROPE], ViewerClasses USING [Viewer]; CDViewer: CEDAR DEFINITIONS = BEGIN CreateViewer: PROC [design: CD.Design, openDialogue: BOOL_TRUE] RETURNS [ViewerClasses.Viewer]; GetViewer: PROC [comm: CDSequencer.Command] RETURNS [ViewerClasses.Viewer]; LastViewer: PROC [] RETURNS [ViewerClasses.Viewer]; ShowPosition: PROC [viewer: ViewerClasses.Viewer, pos: CD.Position]; ShowAndScale: PROC [viewer: ViewerClasses.Viewer, rect: CD.Rect]; VisibleRect: PROC [viewer: ViewerClasses.Viewer] RETURNS [r: CD.Rect]; ViewerList: TYPE = LIST OF ViewerClasses.Viewer; ViewersOf: PROC [design: REF] RETURNS [ViewerList]; DesignOf: PROC [viewer: ViewerClasses.Viewer] RETURNS [design: CD.Design]; FindDesign: PROC [name: Rope.ROPE, case: BOOL _ FALSE] RETURNS [design: CD.Design]; END. ,CDViewer.mesa (part of ChipNDale) Copyright c 1983, 1986 by Xerox Corporation. All rights reserved. by Christian Jacobi, October 13, 1983 2:51 pm last edited by Christian Jacobi, March 25, 1986 4:06:18 pm PST --Accessing viewers of ChipNDale designs --Creates a viewer and displays the design, --If already a viewer exists, this split's the viewer --Returns the viewer from which the command was issued, if detectable --Might return NIL --The last ChipNDale design viewer which had the input focus --Might return NIL --Scaling and paning --Moves viewer such that pos is in visible area (does not open closed viewer) --Approximative only --Moves and scales viewer such that rect is in visible area (does not open closed viewer) --Approximative only --Undefined if viewer is not open or does not represent a ChipNDale design --Transfer --Returns the viewers which might display the design --NIL if not a ChipNDale design --Might not find designs which do not have viewers --If multiple designs have the same name, find arbitrary one --NIL if not found Κ ˜codešœ(™(Kšœ Οmœ7™BKšœ.™.Kšœ>™>—K˜šΟk ˜ Kšžœžœ˜"Kšœ žœ ˜Kšœžœžœ˜Kšœžœ ˜K˜—KšΠlnœžœž œ˜Kšž˜K˜K™(K˜š Οn œžœ žœžœžœžœ˜_Kšœ+™+K™5—K˜š  œžœžœ žœ˜KKšœE™EK™—K˜š  œžœžœ˜4K™