On Tue, 2007-06-26 at 13:50 +0200, Murray Cumming wrote: > On Tue, 2007-06-26 at 14:19 +0300, Kalle Vahlman wrote: > > 2007/6/26, Murray Cumming <[EMAIL PROTECTED]>: > > > libglade's _new() function has a "root" parameter: > > > http://developer.gnome.org/doc/API/libglade/gladexml.html#GLADE-XML-NEW > > > > > > This is necessary because libglade otherwise instantiates all the items > > > in the file. Does GtkBuilder instead only instantiate the objects when > > > you actually use gtk_builder_get_object()? > > > > See bug 447998 for discussion on this: > > > > http://bugzilla.gnome.org/show_bug.cgi?id=447998 > > > > but in short: no, it instantiates them as a part of the > > parsing/building process and it's not going to be easy to do it > > properly otherwise. > > OK, so we need to have one file per window, which the glade-3 developers > might not be so happy about. I guess, the gtk-builder-convert script > should be changed to create lots of individual files. > > I am concerned that this makes it impossible to use GtkBuilder to define > the properties for a single widget, without instantiating a useless > invisible window object. That's a technique that I use currently.
I vaguely remember having discussed this issue a little, we found that yes; many apps do use the "root" argument but that it was not fundamental to the way gtkbuilder works (i.e. people can simply store widgets/objects in separate files). I suppose this functionality could be added to the builder in the future by adding a "rootnode" property to the builder if its really needed. For your particular use case though, you dont need to instantiate a useless window; there's no need for toplevel ui objects to be GTK_TYPE_WINDOW(). Cheers, -Tristan _______________________________________________ gtk-devel-list mailing list gtk-devel-list@gnome.org http://mail.gnome.org/mailman/listinfo/gtk-devel-list