[Glade-devel] [glade3, patch] load library module before calling *_get_type ()

Joaquin Cuenca Abela e98cuenc@free.fr
Thu, 8 Jan 2004 23:01:44 +0100


Hi!

Archit wrote:
> 
> > As you see, there's a missing piece, and it's the code that loads the 
> > library that contains the Foo widget, as you need it to call the 
> > foo_get_type function. That is, AFAIR, the only missing thing to make 
> > the plugable widgets really work.
> 
> That is already done! Why that was infact my first patch to 
> glade-3 (back when it was still called glade-2) :D. You can 
> take a look in glade-widget-class.c There is some code like, 
> glade_widget_class_get_get_type_func or something.
> Tommi... wanna take a shot at it :D

That constructs the name of the foo_get_type name, but glade-3 doesn't try
to bind it to a real function until glade_util_get_type_from_name.

And that function will fail if the module that contains the function has not
yet been opened.  It works with all gtk+ widgets, as we're anyway linked to
gtk+, so that's not a problem.  But we should explicitely open external
modules if want to get their *_get_type function.

Cheers,