[mcclim-devel] reinitializing panes
Andy Hefner
ahefner at gmail.com
Thu Feb 15 00:57:01 UTC 2007
On 2/14/07, Christophe Rhodes <csr21 at cantab.net> wrote:
> A question came up on #lisp yesterday: essentially, it asked how to
> dynamically change the contents of a pane, in a similar way to
> changing layouts of a frame.
Apologies if I'm sending this twice, as gmail freaked out the first time around.
In the method browser example, I use sheet-adopt-child for this. (setf
sheet-children) isn't in the spec, but seems like it should be the
natural way to change all of the children. McCLIM has such a function,
but it is not useful to user code, because (at least for the box
layout panes) part of the magic is attached to sheet-adopt-child such
that even explicitly following (push new-child (sheet-children
a-box-or-rack-pane)) with (reorder-sheets ..) doesn't make the new
child appear, despite now appearing in the list returned by
sheet-children.
Incidentally, your approach of using reinitialize-instance is an idiom
I was not familiar with.
More information about the mcclim-devel
mailing list