Chapter 14 Output Recording and Redisplay

14.2 CLIM Operators for Output Recording

The purpose of output recording is to capture the output done by an application onto a stream. The objects used to capture output are called output records and output record elements. The following classes and predicates correspond to the objects used in output recording.

output-record [Protocol Class]

Summary:
The protocol class used to indicate that an object is an output record. A subclass of bounding-rectangle, output records obey the bounding rectangle protocol. If you want to create a new class that behaves like an output record, it should be a subclass of output-record. Subclasses of output-record must obey the output-record protocol.

All output records are mutable.

output-record-p [Function]
Arguments:
object
Summary:
Returns t if object is an output record; otherwise, it returns nil.

displayed-output-record [Protocol Class]
Summary:
The protocol class that is used to indicate that an object is a displayed output record, that is, an object that represents a visible piece of output on some output stream. This is a subclass of bounding-rectangle. If you want to create a new class that behaves like a displayed output record, it should be a subclass of displayed-output-record. Subclasses of displayed-output-record must obey the displayed output record protocol.

All displayed output records are mutable.

displayed-output-record-p [Function]
Arguments:
object
Summary:
Returns t if object is a displayed output record; otherwise, it returns nil.

:x-position [Initarg]
:y-position [Initarg]
:parent [Initarg]
Summary:
All subclasses of either output-record or displayed-output-record must handle these three initargs, which are used to specify, respectively, the x and y position of the output record, and the parent of the output record.

:size [Initarg]
Summary:
All subclasses of output-record must handle the :size initarg, which specifies how much room should be left for child output records (if, for example, the children are stored in a vector). :size may be ignored, provided that the resulting output record is able to store the specified number of child output records.

14.2.1 - The Basic Output Record Protocol
14.2.2 - The Output Record "Database" Protocol
14.2.3 - Types of Output Records
14.2.4 - Output Recording Streams

CLIM 2.0 User's Guide - OCT 1998

Generated with Harlequin WebMaker