CLIM mail archive
[Prev][Next][Index][Thread]
Resizing Dialogs Query
[ALLEGRO/CLIM2/SPARC]
I have some pop-up dialogs that I would to resize to a reasonable size
after they draw themselves. Basically, they consist of a simple frame with
a single (scrollable) display pane.
What I'm doing is using the
:RESIZE-FRAME T
option when I build the frame and then calling
(CLIM:SIZE-FRAME-FROM-CONTENTS PANE)
after I've drawn the display pane.
This works for most cases except that I can find no way to *limit* the size
to which the frame can grow. That is, if there is enough output in the
display-pane, the frame will grow until it fills the entire visible
screen before it starts to scroll[*].
CLIM:SIZE-FRAME-FROM-CONTENTS takes a WIDTH and HEIGHT argument; however
these seem to behave as MIN-WIDTH and MIN-HEIGHT; i.e. the frame will
always be at least this big (growing bigger if it wants to).
Likewise, the function also takes a SIZE-SETTER argument. This seems to
default to WINDOW-SET-INSIDE-SIZE. However, this seems to have the same
problem, i.e. the frame will grow bigger than some explicitly set limiting
WIDTH/HEIGHT value.
Finally, attempts to set HEIGHT/MAX-HEIGHT/MIN-HEIGHT on the pane
definitions have no effect.
Any suggestions/hints/etc on how to do this?
Thanks
Nichael
[* Actually, it's slightly worse than this because it is the *pane* that
can grow as big as the screen. As a result it's possible to get into
a state where the user can access neither the menubar or window-label
(off the top) or the exit buttons (off the bottom).]
Main Index |
Thread Index