CLIM mail archive
[Prev][Next][Index][Thread]
Re: old, repeat question
>Date: Thu, 21 Apr 94 13:03:45 EDT
>From: Jim Sims <sims@scra.org>
>Subject: old, repeat question
>
> CLIM 1.1, various platforms before, currently Allegro
> I think i saw this about a year or two ago: Whenever I execute
> clim::set-frame-layout inside a function (say bar), no other code in
> the calling function (say foo) gets executed. Is there a way around
> this?
> Ex
>(defun foo()
> (bar)
> (format t "~%this never prints anything"))
>
>(defun bar ()
> (clim::set-frame-layout clim:*application-frame* my-layout))
>
>jim
I asked this question a while back and the answer I got was, basically, no,
you can't do anything about it. The reason is that CLIM throws all the way
out to the top-level after it does the SET-FRAME-LAYOUT.
The suggested work around was to hack the method with a name something like
NOTE-FRAME-LAYOUT-CHANGED (I forget just now, try apropos).
However, this doesn't really work because this method called in the middle
of the layout change; i.e. stuff still happens _after_ this method is
called, so you lose if your code depends on any of that.
The best I was able to come up with was to set a flag before I called
SET-FRAME-LAYOUT and have my command-loop check for it each time.
Nichael
ncramer@bbn.com -- Captain and right quarter-guard, BBN Calvinball Team.
Main Index |
Thread Index