ViewerGroupLocks.mesa
Copyright Ó 1985, 1986, 1991 by Xerox Corporation. All rights reserved.
Russ Atkinson (RRA) June 7, 1985 3:51:53 pm PDT
DIRECTORY
ViewerClasses USING [Viewer];
ViewerGroupLocks: CEDAR DEFINITIONS = BEGIN OPEN ViewerClasses;
ViewerGroupLocks is an extension to ViewerLocks so that the root viewer and its links can be locked in one glorious atomic operation.
CallRootUnderWriteLock: PUBLIC PROC [proc: PROC, viewer: Viewer];
Locks the viewer and its root, provided that the viewer is not destroyed, then calls the procedure provided while holding the locks.
CallRootAndLinksUnderWriteLock: PUBLIC PROC [proc: PROC, viewer: Viewer];
Locks the viewer, its root, and all of the links of the root (for split viewers), provided that the viewer is not destroyed, then calls the procedure provided while holding the locks. If the viewer is excessively split then the whole viewer tree is locked during this call.
END.