SVViewersOnScene.mesa
Copyright © 1986 by Xerox Corporation. All rights reserved.
Last edited by Bier on February 2, 1987
Contents: Procedures that operate on a set of viewers, namely those (Split) viewers that are looking at the same Solidviews scene.
DIRECTORY
Imager, Menus, Rope, SVInterfaceTypes, SVSceneTypes, SVWindow, ViewerClasses;
SVViewersOnScene: CEDAR DEFINITIONS =
BEGIN
Slice: TYPE = SVSceneTypes.Slice;
EditToolData: TYPE = SVInterfaceTypes.EditToolData;
MouseButton: TYPE = Menus.MouseButton;
Scene: TYPE = SVSceneTypes.Scene;
Viewer: TYPE = ViewerClasses.Viewer;
ViewerCell: TYPE = SVInterfaceTypes.ViewerCell;
SVData: TYPE = SVInterfaceTypes.SVData;
ViewerProc: TYPE = PROC [Imager.Context, SVData];
ViewerAssemblyProc: TYPE = PROC [Imager.Context, SVData, Slice];
PaintSceneAllViewers: PROC [paintAction: ATOM, editToolData: EditToolData, scene: Scene, remake: SVWindow.ForegroundParts ← none, backgndOK: BOOL ← FALSE, edited: BOOL ← TRUE, okToClearFeedback: BOOL ← TRUE];
UpdateAllHeaders: PROC [svData: SVData, scene: Scene];
Loops through split viewers updating headers.
SceneNewVersion: PROC [svData: SVData];
Loops through split viewers updating headers.
SceneOldVersion: PROC [svData: SVData, scene: Scene];
Loops through split viewers updating headers.
NotifyOfEmpty: PROC [svData: SVData, from: Scene, to: Scene];
NotifyDestroy: PROC [viewer: Viewer];
NewSelectedViewer: PROC [svData: SVData];
If this viewer is not the current selected viewer, tell the edittool about the current contents of this viewer and select it.
ReSelectViewer: PROC [svData: SVData];
Tell the edittool about the current contents of this viewer and select it.
Split: PROC [svData: SVData, scene: Scene];
NewViewer: PROC [editToolData: EditToolData];
DestroyAllSolidviewsWindows: PROC [editToolData: EditToolData];
FindSceneInAllViewers: PROC [scene: Scene, allViewers: LIST OF ViewerCell] RETURNS [viewerCell: ViewerCell, success: BOOL];
AddSceneToAllViewers: PROC [scene: Scene, allViewers: LIST OF ViewerCell] RETURNS [viewerCell: ViewerCell, newAllViewers: LIST OF ViewerCell];
FindViewerInAllViewers: PROC [viewer: Viewer, allViewers: LIST OF ViewerCell] RETURNS [viewerCell: ViewerCell, before, listCell, after: Viewer, success: BOOL];
FindViewerInViewerCell: PROC [viewer: Viewer, viewerCell: ViewerCell] RETURNS [before, listCell, after: Viewer, success: BOOL];
DeleteViewerFromAllViewers: PROC [viewerCell: ViewerCell, before, listCell, after: Viewer];
AddViewerToViewerCell: PROC [viewer: Viewer, viewerCell: ViewerCell];
LoadScene: PROC [svData: SVData, picName: Rope.ROPE, wdir: Rope.ROPE] RETURNS [scene: Scene, success: BOOL];
SaveScene: PROC [svData: SVData, picName: Rope.ROPE] RETURNS [success: BOOL];
StoreScene: PROC [svData: SVData, scene: Scene, picName: Rope.ROPE] RETURNS [success: BOOL];
END.