<URL: http://bugs.freeciv.org/Ticket/Display.html?id=12825 >

> [cproc - Sat Feb 28 21:54:33 2009]:
> 
> something that makes me wonder:
> 
> when I decrease the height of the window, there's a certain
> limit where the height cannot be decreased anymore. One
> part that defines this limit is a certain minimum height
> of the map and of the widgets on the left side, that's
> ok. But the message pane doesn't seem to have such a
> minimum height - I can shrink it down to zero with the
> pane separator.  And when I do this, at the same time the
> upper pane increases its height again, so now it should
> be possible to decrease the window height even more until
> the upper pane has reached its minimum height again. But
> for some reason that's not possible?

I think this just due to how the widget size requisition/
allocation code is implemented in gtk, in particular for
the paned widget.

When widgets are packed into the panes the programmar can
specify whether they are allowed to be shrunk below their
requisition, which is what allows you to resize the
message pane below its requested height (if the top part
was packed with those parameters too, you could also move
the pane separator up through the top widgets beyond
their requested height; I tried altering the code to
allow this but it really just resulted in ugly overlap
effects).

Resizing the window cannot make the area inside the panes
shrink because the paned widget is telling the window that
it wants the whole area, i.e. since the user moved the
separator to increase the total height of the paned widget.

If the above is confusing and you still want to try to
understand what is going on, there is the free gnome
programming book online with a chapter discussing how
gtk widget size allocation works:

http://developer.gnome.org/doc/GGAD/sec-containers.html


-----------------------------------------------------------------------
本で読んだから、本当だろうね。

_______________________________________________
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev

Reply via email to