![]() |
![]() |
![]() |
GTK+ Reference Manual | ![]() |
---|
Since version 2.12, GTK+ provides GtkBuilder to construct user interfaces from XML descriptions, similar to the functionality provided by GladeXML in the libglade library.
A good way to start a migration from libglade to GtkBuilder is
to run the gtk-builder-convert
utility on your glade file, and inspect the resulting output.
If your code uses the root
parameter of glade_xml_new()
, you
may want to split your glade file into multiple GtkBuilder files
by using the --root
option of
gtk-builder-convert.
While GtkBuilder strives to be a complete replacement for libglade, there are a number of areas where it is currently still behind libglade:
GtkBuilder can not construct partial trees, it lacks
the equivalent of the root
parameter of glade_xml_new()
.
Due to the way GtkBuilder parses its input, this is difficult
to implement, see
bug
447998. As a workaround, you can split your glade file
into multiple GtkBuilder input files using the --root
that was mentioned above.
GtkBuilder does not yet implement support for accessibility properties. It parses the same <accessibility> elements as libglade, but ignores them. See bug 454983 for the current status of accessibility support in GtkBuilder.
GtkBuilder supports context information in translatable properties in a slightly different way than libglade. Intltool does not yet support this; see bug 454894 for the current status of intltool support for GtkBuilder files. Thankfully, context in translations is a rarely used feature, and if you are not using it, intltools glade format support works just fine for GtkBuilder files.
More details about migrating from libglade to GtkBuilder will appear here over time...