[mcclim-devel] question about display functions and control apps

Paul Werkowski pw at snoopy.mv.com
Tue Dec 28 21:40:43 UTC 2004


|
| > Question:  what about the case where you want to watch something "out
| > there" that is not under the control of the command loop.  I'm
| > thinking in particular about controls applications, where you might
| > want to update a display that shows the current state of the plant.
|
| If I understand correctly, in this case you may call
| REDISPLAY-FRAME-PANE, typically from an application command or some
| state updating function.  A program that uses this approach is:

I do this sort of thing quite a bit and it took some experimentation to get
it
to work right. At least part of the trick (in LWW CLIM at least) is to
do (setf (pane-needs-redisplay pane) t) prior to redisplay-frame-pane.
But, to do this, you can't have :display-time :command-loop active.

You probably also want to manually manage the output-recording options to
avoid a
surprise when pane may be re-exposed at a later time.
Like this:

(setf (pane-needs-redisplay pane) t)
(with-output-recording-options (pane :record t)
  (redisplay-frame-pane frame pane))

Paul





More information about the mcclim-devel mailing list