Page 313 Table of Contents Index Page 315
Chapters
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30
A, B, C, D, E



CHAPTER 29. PANES


29.4 Application Panes

In addition to the various layout panes and gadgets, an application usually needs some space
to display application-specific output and receive application-specific input from the user. For
example, a paint program needs a "canvas" pane on which to display the picture and handle the
"mouse strokes". An application frame can use the basic CLIM input and output services in an
application-specific way through use of an application pane.

This section describes the basic CLIM application pane types. Programmers are free to customize
pane behavior by defining subclasses of these pane classes writing methods to change the repaint
or event-handling behavior.

29.4.1 Application Pane Options

CLIM application frames accept the :foreground, :background, :text-style, and layout pane
options. The space requirement options (:width, :height, and so forth) can also take a size
specification of :compute, which causes CLIM to run the display function for the pane, and make
the pane large enough to hold the output of the display function.

In addition to the above, CLIM application frames accept the following options:

=> :display-function [Option]
This is used to specify a function to be called in order to display the contents of a CLIM stream
pane. CLIM's default top level function, default-frame-top-level, function will invoke the
pane's display function at the appropriate time (see the :display-time option). The value of
this option is either the name of a function to invoke, or a cons whose car is the name of a
function and whose cdr is additional arguments to the function. The function will be invoked on
the frame, the pane, and the additional function arguments, if any. The default for this option
is nil.

=> :display-time [Option]
This is used to indicate to CLIM when the pane's display function should be run. If it is
:command-loop, CLIM will erase the pane's contents and run the display function after each
time a frame command is executed. If it is t, the pane will be displayed once and not again
until pane-needs-redisplay is called on the pane. If it is nil, CLIM will never run the display
function until it is explicitly requested, either via pane-needs-redisplay or redisplay-frame-
pane
. The default for this option varies.

=> :incremental-redisplay [Option]
When true, the redisplay function will initially be executed inside of an invocation to updating-
output
and the resulting output record will be saved. Subsequent calls to redisplay-frame-
pane
will simply use redisplay to redisplay the pane. The default for this option is nil.

=> :text-margin [Option]
=> :vertical-spacing [Option]


Page 313 Table of Contents Index Page 315
Chapters
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30
A, B, C, D, E