<> <> <> <> DIRECTORY CD USING [Design, Technology], Rope USING [ROPE]; CDPanelExtras: CEDAR DEFINITIONS = BEGIN DefineTextEntry: PROC [tech: CD.Technology _ NIL, cdValueKey: REF, button: Rope.ROPE _ NIL, width: INT _ -1, editable: BOOL _ TRUE]; <<--cdValueKey must have been correctly registered with CDValue>> <<-- value on design typical a ROPE; technology may have LIST OF ROPE>> <<--width: of field for text; in viewer units; -1 means: use total width of panel>> <<--RedisplayLabels does not work on text entries, to prevent flushing edits>> ReDisplay: PROC [design: CD.Design, cdValueKey: REF]; <<--Takes value using CDValue.Fetch and updates corresponding displays of the panel>> ReDisplayRope: PROC [design: CD.Design, cdValueKey: REF, rope: Rope.ROPE]; <<--Takes the given rope, stores it using CDValue.Store and updates the display on the panel>> FromDisplayRope: PROC [design: CD.Design, cdValueKey: REF] RETURNS [rope: Rope.ROPE]; <<--Takes the displayed rope, stores it using CDValue.Store, and also returns it>> END.