GtkBuilder Build an interface from an XML UI definition A GtkBuilder is an auxiliary object that reads textual descriptions of a user interface and instantiates the described objects. The functions gtk_builder_get_object() and gtk_builder_get_objects() can be used to access the widgets in the interface by the names assigned to them inside the UI description. The function gtk_builder_connect_signals() and variants thereof can be used to connect handlers to the named signals in the description. A GtkBuilder holds a reference to all objects that it has constructed and drops these references when it is finalized. To keep objects beyond the lifespan of the builder, they must be fetched with gtk_builder_get_object() and reffed with g_object_ref(). It is the responsibility of the user to destroy all toplevel windows that have been constructed by a builder (these are not automatically cleaned up when the builder is finalized, since GTK+ itself holds a reference to each toplevel window). GtkBuilder UI Definitions GtkBuilder parses textual descriptions of user interfaces which are specified in an XML format which can be roughly described by the following DTD. Do not confuse GtkBuilder UI Definitions with GtkUIManager UI Definitions, which are more limited in scope. ]]> Beyond this general structure, several object classes define their own XML DTD fragments for filling in the ANY placeholders. @get_type_from_name: Looks up a type by name. The default implementation applies heuristics to map type names to _get_type function names, e.g. GtkHBox to gtk_hbox_get_type(). This virtual function is provided to allow language bindings to intercept the type resolution process. @builder: @object: @signal_name: @handler_name: @connect_object: @flags: @user_data: @Returns: @builder: @filename: @error: @Returns: @builder: @buffer: @length: @error: @Returns: @builder: @name: @Returns: @builder: @Returns: @builder: @user_data: @builder: @func: @user_data: @builder: @domain: @builder: @Returns: @builder: @type_name: @Returns: @builder: @pspec: @string: @value: @error: @Returns: @builder: @type: @string: @value: @error: @Returns: @object: @type: