Libglade is a small library that allows a program to load its user interface from am XML description at runtime. Libglade uses the XML file format used by the GLADE user interface builder GLADE, so libglade acts as an alternative to GLADE's code generation approach. Libglade also provides a simple interface for connecting handlers to the various signals in the interface (on platforms where the gmodule library works correctly, it is possible to connect all the handlers with a single function call). Once the interface has been instantiated, libglade gives no overhead, so other than the short initial interface loading time, there is no performance tradeoff.
The library is available as 32-bit and 64-bit: