<> <> <> <> DIRECTORY CD, CDBasics, CDDefaults, CDOps, CDPinObjects, CDSequencer, Rope, TerminalIO; CDPinObjectsCommands: CEDAR PROGRAM IMPORTS CDBasics, CDDefaults, CDOps, CDPinObjects, CDSequencer, Rope, TerminalIO = BEGIN MakePin: PROC [comm: CDSequencer.Command] = BEGIN name: Rope.ROPE; r: CD.DesignRect = CDBasics.ToRect[comm.pos, comm.sPos]; pinApp: CD.ApplicationPtr; layer: CD.Layer _ CDDefaults.CurrentLayer[comm.design]; TerminalIO.WriteRope[Rope.Cat["Draw Pin (", CDOps.LayerName[layer], ")\n"]]; name _ TerminalIO.RequestRope[" type name of pin: "]; pinApp _ CDPinObjects.CreatePinApp[rect: r, lev: layer, name: name]; CDOps.IncludeApplication[comm.design, pinApp]; END; CDSequencer.ImplementCommand[$DrawPin, MakePin]; END.