17.5 Advanced Topics

17.5.2 The Item List Formatting Protocol

item-list-output-record [Protocol Class]
The protocol class that represents an item list; a subclass of output-record. If you want to create a new class that behaves like an item list output record, it should be a subclass of item-list-output-record. Subclasses of item-list-output-record must obey the item list output record protocol.

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

:x-spacing [Initarg]
:y-spacing [Initarg]
:initial-spacing [Initarg]
:n-rows [Initarg]
:n-columns [Initarg]
:max-width [Initarg]
:max-height [Initarg]
All subclasses of item-list-output-record must handle these initargs, which specify, respectively, the x and y spacing, the initial spacing, the desired number of rows and columns, and maximum width and height attributes of the item list.

standard-item-list-output-record [Class]
The output record that represents item list output. Its children will be a sequence of cells, with presentations possibly intervening. This is a subclass of item-list-output-record.

map-over-item-list-cells [Generic Function]
function item-list-record
Applies function to all of the cells in item-list-record. map-over-item-list-cells skips over intervening non-table output record structure, such as presentations. function is a function of one argument, an output record corresponding to a cell in the item list; it has dynamic extent.

adjust-item-list-cells [Generic Function]
item-list-record stream
This function is called after the item list output has been collected, but before the record has been replayed. The method on standard-item-list-output-record implements the usual item list layout constraint solver. item-list-record is the item list output record, and stream is the stream on which the item list is displayed.

CLIM 2.0 User's Guide - OCT 1998

Generated with Harlequin WebMaker