This section describes a few hooks used by Hemlock’s internals to handle
graphics windows that manifest Hemlock windows. Some heavy users of Hemlock as
a tool have needed these in the past, but typically functions that replace the
default values of these hooks must be written in the "HEMLOCK-INTERNALS
"
package. All of these symbols are internal to this package.
If you need this level of control for your application, consult the current implementation for code fragments that will be useful in correctly writing your own window hook functions.
This holds a function that Hemlock calls when make-window
executes under
CLX. Hemlock passes the CLX display and the following arguments from
make-window
: starting mark, ask-user, x, y, width, height, and modelinep.
The function returns a CLX window or nil indicating one could not be made.
This holds a function that Hemlock calls when delete-window
executes under
CLX. Hemlock passes the CLX window and the Hemlock window to this function.
This holds a function that Hemlock calls when random typeout occurs under CLX.
Hemlock passes it a Hemlock device, a pre-existing CLX window or nil, and
the number of pixels needed to display the number of lines requested in the
with-pop-up-display
form. It should return a window, and if a new window
is created, then a CLX gcontext must be the second value.
This holds a function that Hemlock calls when it initializes the screen manager and makes the first windows, typically windows for the Main and Echo Area buffers. Hemlock passes the function a Hemlock device.