DIRECTORY MBQueue USING [Queue], Rope USING [ROPE], TiogaButtons USING [TiogaButtonProc, TiogaButton], TiogaOps USING [Ref], ViewerClasses USING [Viewer]; TBQueue: CEDAR DEFINITIONS = BEGIN Queue: TYPE = MBQueue.Queue; ROPE: TYPE = Rope.ROPE; CreateTiogaButton: PROC [ q: Queue, viewer: ViewerClasses.Viewer, rope: ROPE _ NIL, format: ROPE _ NIL, looks: ROPE _ NIL, proc: TiogaButtons.TiogaButtonProc, clientData: REF ANY _ NIL, fork: BOOL _ TRUE, paint: BOOL _ TRUE ] RETURNS [TiogaButtons.TiogaButton]; CreateTiogaButtonFromNode: PROC [ q: Queue, node: TiogaOps.Ref, start: INT _ 0, end: INT _ INT.LAST, proc: TiogaButtons.TiogaButtonProc _ NIL, clientData: REF ANY _ NIL, fork: BOOL _ TRUE] RETURNS [TiogaButtons.TiogaButton]; AppendToTiogaButton: PROC [ q: Queue, button: TiogaButtons.TiogaButton, rope: ROPE _ NIL, looks: ROPE _ NIL, proc: TiogaButtons.TiogaButtonProc _ NIL, clientData: REF ANY _ NIL, fork: BOOL _ TRUE] RETURNS [TiogaButtons.TiogaButton]; END. ÖTBQueue.mesa Copyright c 1985 by Xerox Corporation. All rights reserved. Willie-Sue, May 7, 1985 6:40:18 pm PDT Interface: Provides TiogaButtons that are automatically serialized Modeled after MBQueue Identical to TiogaButtons.CreateButton, except for the first argument q. Defines a button that is interpreted in the context of q. ... creates a button from the node and the offsets provided. If the start and end offsets are defaulted then the button refers to the node itself. If proc is NIL then the a button record returned, but no button property will be applied to the node. Why bother? ... appends the formatted rope to an existing button and creates a new button for the appended text. If proc is NIL then the rope is appended and a button record returned, but no button property will be applied to the node. This is useful for providing labels, spacing between buttons, or special formatting. Note that the format is set only when you create a node. A curious feature of appending to a button created with proc nonNIL: that button will be for the entire node and will subsume any appended buttons. This might be useful for providing a target that will refer to the entire node contents. The feedback looks neat! ʘšÏb ™ Icodešœ Ïmœ1™