6.3 Sheet Protocols

A sheet is a participant in a number of protocols. Every sheet must provide methods for the generic functions that make up these protocols. These protocols are: [annotate]

The windowing protocol
Describes the relationships between the sheet and its parent and children (and, by extension, all of its ancestors and descendants). [annotate]
The input protocol
Provides the event handler for a sheet. Events may be handled synchronously, asynchronously, or not at all. [annotate]
The output protocol
Provides graphical and textual output, and manages descriptive output state such as color, transformation, and clipping. [annotate]
The repaint protocol
Invoked by the event handler and by user programs to ensure that the output appearing on the display device appears as the program expects it to appear. [annotate]
The notification protocol
Invoked by the event handler and user programs to ensure that CLIM's representation of window system information is equivalent to the display server's. [annotate]

These protocols may be handled directly by a sheet, queued for later processing by some other agent, or passed on to a delegate sheet for further processing. [annotate]