Hello wxHaskell users,
my sizer problems changed a little since my last mail. Now I'm able to
specify my problems more precisely.
(1) If the initial size of the left/upper pane of a splitter window is
SMALLER than the minimal size of this left/upper pane (as given by
the layout) it is not possible to resize the panes by dragging the
the splitter bar. The problem does not persist if the inital size
is greater than the minimum size. This behaviour has currently
only been tested with Windows.
Maybe there should be a check for the inital pane size repsecting
the minimum pane size when layouting the splitter windows via
"hsplit" or "vsplit" ? Or has the programmer to do this check ?
(2) I'm using nested splitter windows. On top level there is a
splitter window with horizontal splitter bar. The lower pane of
this splitter window just contains "regular" controls but the
upper pane consists of another splitter window with vertical
splitter bar (both panes just containing "regular" controls, too).
The minimum sizes of all panes containing "regular" controls are
respected well. But the minimum size of the upper pane of the top
level splitter window (just containing the other splitter window)
is just ignored. I can move the horizontal splitter bar up nearly
to the upper edge of the frame. Shouldn't the minimum vertical
size be just the maximum of the minimum vertical sizes of the
upper panes? Have I forgotten to set anything? Or is this a bug?
For illustration I made some screenshots. In image "1.gif" you
see the application window as it should look like. In image
"2.gif" you see the squeezed upper splitter pane.
(3) Furthermore there is an ugly redraw bug. When minimizing and then
restoring the window (on Windows) sometimes list controls disappear
magically. As you can see in screenshot "3.jpg" (taken just after
restoring the window) instead of the list control there is only
the panel visible (compare tp "1.jpg"). The error is reproducible
but seems only to occur if the splitter positions has been changed
before (aka, they are different than the initial splitter pane
sizes).
(4) Please excuse the *large* dimensions of the screenshots but this
is one of my problems, too. Although the list controls are set to
a minimum size of only 100x100 pixels and there are no forced spaces
in the layout I'm not able to resize below a size of about 1200x874
pixels. But there should be more than enough room the make the
window smaller, shouldn't it? I don't know where the too large
minimum size constraints come from. Is there a way of "debugging"
this by simply printing the computed minimum sizes of each
control?
You find the screenshots mentioned above on the web:
http://www.fischerbox.net/1.gif
http://www.fischerbox.net/2.gif
http://www.fischerbox.net/3.gif
I included the source for reference.
Hopefully anyone has ideas concerning these problems.
Many thanks in advance.
Daniel |