DIRECTORY Rope USING [ROPE], CD USING [Design, ObPtr, DesignRect], CDDirectory USING [ReplaceList]; CDCells: CEDAR DEFINITIONS = BEGIN IsCell: PROC [ob: CD.ObPtr] RETURNS [BOOL] = INLINE { RETURN [ ob.p.objectType = $Cell ] }; CreateEmptyCell: PROC [] RETURNS [CD.ObPtr]; CreateCellSelected: PROC [design: CD.Design, name: Rope.ROPE_NIL] RETURNS [done: BOOL, cellOb: CD.ObPtr]; PushInCellSelected: PROC [design: CD.Design] RETURNS [done: BOOL]; PopFromCell: PROC [design: CD.Design, m: Method_interactive, name: Rope.ROPE_NIL] RETURNS [done: BOOL]; Method: TYPE = {flush, newcell, replace, interactive}; ReplaceDirectChildForDummyCells: PRIVATE PROC [cellOb: CD.ObPtr, replace: CDDirectory.ReplaceList] RETURNS [needReposition: BOOL]; RepositionCell: PROC [cellOb: CD.ObPtr, design: CD.Design] RETURNS [didReposition: BOOLEAN]; SetInterestRect: PROC [cellOb: CD.ObPtr, r: CD.DesignRect _ [0, 0, -1, -1]]; END. ¾CDCells.mesa (a ChipNDale module) Copyright c 1983, 1985 by Xerox Corporation. All rights reserved. by Christian Jacobi, 23-Aug-83 last edited Christian Jacobi, April 11, 1985 12:26:31 pm PST --Does not includes the cell into any design or celldirectory. --Does not name the cell. --Use CDDirectory.Include to include cell to a design. --name=NIL: interactive read for name. --name#NIL: hint for name; may be modified. --If done: cell is included in directory of design. --message of problem if not done --message of problem if not done --is like a real ReplaceDChildsProc, but does not start a recursive repositioning --defaulting r means to use a reasonable default for the interest rect ʘšœ#™#Jšœ Ïmœ7™BJšœ™Jšœ<™™>JšÏc™J™6—J™š Ÿœžœ žœžœžœ˜BJšžœžœ žœ˜'Jšœ&™&Jšœ+™+Jšœ3™3J˜—š Ÿœžœ žœ žœžœ˜BJšœ ™ —J˜š Ÿ œžœ žœ+žœžœ˜RJšžœžœ˜Jšœ ™ Jšœžœ*˜6J˜—šÐbnœžœžœ žœ*˜cJšžœžœ˜JšœQ™Q—J˜Jš Ÿœžœ žœžœ žœžœ˜]J™šŸœžœ žœ žœ˜LJšœF™F—J˜Jšžœ˜J˜J™—…—žb