PWLow.mesa 
Copyright © 1984 by Xerox Corporation. All rights reversed.
Created by Bertrand Serlet, December 8, 1984 3:07:43 pm PST
Last edited by Serlet, February 28, 1985 10:18:21 am PST
Client interface for using PatchWork directectly with CD objects.
DIRECTORY
CD USING [Design, ObPtr],
CDOrient USING [Orientation],
Rope USING [ROPE];
PWLow: CEDAR DEFINITIONS =
BEGIN
ROPE: TYPE = Rope.ROPE;
Makes all instances of an object non-stretchable (All it does is put a property on that object telling that for ParseStretch, the answer to the message should be NIL)
MakeObjNonStretchable: PROC [obj: CD.ObPtr];
Creates a new Cell named instanceName (suffixed if already exists) with only one application which ob is obj, having an $InstanceName property.
ReName: PROC [design: CD.Design, obj: CD.ObPtr, instanceName: ROPE] RETURNS [cell: CD.ObPtr];
Creates a new Cell with only one application which ob is obj, transformed according to orientation.
ChangeOrientation: PROC [design: CD.Design, obj: CD.ObPtr, orientation: CDOrient.Orientation] RETURNS [cell: CD.ObPtr];
Abutment of a list of objects.
AbutListX: PROC [design: CD.Design, listObj: LIST OF CD.ObPtr] RETURNS [abutX: CD.ObPtr];
AbutListY: PROC [design: CD.Design, listObj: LIST OF CD.ObPtr] RETURNS [abutY: CD.ObPtr];
Abutment of 2 objects.
AbutX: PROC [design: CD.Design, obj1, obj2: CD.ObPtr] RETURNS [abutX: CD.ObPtr];
AbutY: PROC [design: CD.Design, obj1, obj2: CD.ObPtr] RETURNS [abutY: CD.ObPtr];
-- Some internal caches are set during the execution of PWLow, this is the way for resetting them, for example when you change cells
FlushCaches: PROC [design: CD.Design];
END.