CDViewHighlight.mesa (part of ChipNDale)
Copyright © 1985 by Xerox Corporation. All rights reserved.
by Christian Jacobi, July 4, 1985 1:34:38 pm PDT
last edited by Christian Jacobi, July 4, 1985 3:12:26 pm PDT
DIRECTORY
ViewerClasses USING [Viewer];
CDViewHighlight: CEDAR DEFINITIONS =
BEGIN
--This module allows to use instances as highlight features. It is up to the clients to make
--sure the highlighted instances look like highlight; CDViewHighlight module displays
--them like any other ChipNDale instances. However, they are visible in a particular
--viewer only and can neither be selected nor edited.
--CDViewHighlight does not care what objects the instances point to, as long as they
--are legal ChipNDale objects.
ShowInstance: PROC[v: ViewerClasses.Viewer, instOrList: REFNIL, removeOthers: BOOLTRUE, key: REFNIL];
--instOrList: Instance or InstanceList to be used as highlight (NIL is ok)
--removeOthers: remove others highlights before displaying instOrList
--key: registered or unique property denoting the client.
Update: PROC [v: ViewerClasses.Viewer, key: REFNIL];
--Causes CDViewHighlight to recomputes internal state if some instance changed...
RemoveAll: PROC[v: ViewerClasses.Viewer];
--removes highlighting of all clients
END.