Re: gtk_widget_show() and the 'size-allocate' signal
- From: David Nečas (Yeti) <yeti physics muni cz>
- To: gtk-app-devel-list gnome org
- Subject: Re: gtk_widget_show() and the 'size-allocate' signal
- Date: Sun, 4 Mar 2007 10:33:13 +0100
On Sat, Mar 03, 2007 at 07:59:10PM -0800, v4r4n wrote:
When I call gtk_widget_show() on a parent of the parent, the child widget's
"size-allocate" signal handler is called before the parent widget's
"size-allocate" signal handler. This creates a problem because I was
expecting my particular parent to be the one that gives the child its
"size-allocate" signal.
I know GTK normally works from bottom to top, but I thought "size-allocate"
was one of the signals that travels from top to bottom...
It works from top to bottom. However, the size_allocate()
method (or signal handler if you wish) of the container is run
first and it invokes size allocation of its children.
Your "size-allocate" signal handler is run after it, i.e.
when the recusrive allocation is finished. Obviously you
receive "size-allocate" in bottom to top order.
If you want to override size_allocate() for containes, I
suggest to subclass.
I'm also having trouble installing all the development source packages I
need to see what exactly is going on (ubuntu). All I see are a bunch of
function calls from libgtk-x11-2.0.so.0 and no source code.
Packages with debugging information have typically -dbg,
-debug or -debuginfo suffix.
I recommend to also (or even instead) build GLib and Gtk+
with --debug=yes from source and install it to
a *NON-SYSTEM* location as this enables one to use the
*_DEBUG facilities:
LD_LIBRARY_PATH=$HOME/.../gtk-debug/lib GTK_DEBUG=geometry myapp...
(hm, I wonder how the `thou shalt not touch Gtk+ source'
types do this)
Yeti
--
Whatever.
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]