DIRECTORY CD USING [Design, Object, Layer, Instance, Rect, Number, errorLayer], Rope USING [ROPE]; CDErrors: CEDAR DEFINITIONS = BEGIN errorLayer: CD.Layer = CD.errorLayer; InstancePredicate: TYPE = PROC [inst: CD.Instance] RETURNS [yes: BOOL _ TRUE]; IncludeMessage: PROC [design: CD.Design, ob: CD.Object, rect: CD.Rect _ all, message: Rope.ROPE _ NIL, owner: ATOM _ NIL --shoud have been registered as property to avoid conflicts ] RETURNS [done: BOOL, into: CD.Object, inst: CD.Instance]; all: PRIVATE CD.Rect = [FIRST[CD.Number], FIRST[CD.Number], LAST[CD.Number], LAST[CD.Number]]; RemoveMessages: PROC [design: CD.Design, ob: CD.Object, owner: ATOM _ NIL, alsoOthers: BOOL _ FALSE, removeIt: InstancePredicate_NIL --NIL means TRUE ]; RemoveAllMessages: PROC [design: CD.Design, owner: ATOM, removeIt: InstancePredicate _ NIL]; END. ŠCDErrors.mesa (part of ChipNDale) Copyright c 1985, 1987 by Xerox Corporation. All rights reserved. Created by Christian Jacobi, March 1, 1985 9:32:15 am PST Last edited by: Christian Jacobi, January 6, 1987 2:51:41 pm PST Error messages are rectangles of layer errorLayer. The signal name property of the application contains a message. The owner atom allows different instances to independent remove old messages. -- Include an error message relative to an arbitrary object ob. -- If ob is not a cell, the message is actually placed into any other conveniant location. -- into: describes where error message may be found; NIL: if not done or top layer. -- inst: can be used for further properties... -- rect will be clipped to ob's size -- Remove all error messages (with this owner; NIL means all owners) denoting ob. -- alsoOthers: messages pointing to other objects but residing in ob will also be removed. -- removeIt: client may specify a proc to determine if a message should be removed. -- If ob (or the cell containing the message rectangle) has been renamed, this -- procedure might not find and remove all error messages. -- This procedure may cause cells to be resized. -- Remove all error messages with this owner from of the whole design. -- removeIt: client may specify a proc to determine if a message should be removed. -- This procedure may cause cells to be resized. Κ˜codešœ(™(Kšœ Οmœ7™BKšœ;™;K™@—K˜šΟk ˜ Kšžœžœ=˜EKšœžœžœ˜—K˜KšΟnœžœž œ˜Kšž˜K˜Kšœ4Οcœ' œ œE™ΔK˜šœ žœ žœ ˜%K˜—Kš œžœžœžœ žœžœžœ˜NK˜šΠbnœžœ žœ žœžœžœžœ žœž ;œžœžœžœžœ ˜σKšœ?™?KšœZ™ZKšœT™TKšœ/™/K™$˜Kšœžœžœ žœžœ žœžœ žœžœ žœžœ ˜^—K™—K˜šŸœžœ žœ žœžœžœžœžœžœ œ˜šKšœR™RKšœ[™[KšœT™TKšœN™NKšœ;™;Kšœ1™1K˜—š Ÿœžœ žœžœžœ˜\KšœG™GKšœT™TKšœ1™1K˜—Kšžœ˜K˜K˜K˜—…—\ ν