<> <> <> <<>> <> <> 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]; <<... 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.>> <> <<>> 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]; <<... appends the formatted rope to an existing button and creates a new button for the appended text.>> <> <> END.