Scroll to navigation

MacroCmd(3U) InterViews Reference Manual MacroCmd(3U)


MacroCmd - a command that composes other commands


#include <Unidraw/Commands/macro.h>


MacroCmd composes other commands in a linear fashion. Executing a MacroCmd is equivalent to executing its children in preorder.



Construct a MacroCmd instance, optionally supplying up to four of its child commands.
Execute simply executes each child, from first to last. Unexecute calls Unexecute on each child, from last to first. The MacroCmd is reversible if any of its children are.
SetEditor calls SetEditor on each child with the given argument.
GetCommand returns the child Command to which an iterator points. SetCommand initializes the iterator to point to a particular child Command; it initializes the iterator to point to a nil instance if the given Command is not a child.
Operations that modify the MacroCmd's list of children. Append and Prepend add up to four Commands to the end and the beginning of the list, respectively. InsertAfter and InsertBefore insert a Command after and before the Command pointed to by the iterator, respectively. The Remove operations remove a child from the list without deleting it. You can remove a child by referring to it explicitly or by specifying an iterator. If an iterator is supplied, the Remove operation should advance it to point to the following child as a side effect.


Convenience functions for extracting a Command from a UList element a UList from an iterator, respectively.


Command(3U), Iterator(3U), UList(3U)

24 January 1991 Unidraw