<?xml version="1.0"?>
<!-- This file was automatically generated from C sources - DO NOT EDIT!
To affect the contents of this file, edit the original C definitions,
and/or use gtk-doc annotations.  -->
<repository version="1.2"
            xmlns="http://www.gtk.org/introspection/core/1.0"
            xmlns:c="http://www.gtk.org/introspection/c/1.0"
            xmlns:glib="http://www.gtk.org/introspection/glib/1.0">
  <include name="Gtk" version="3.0"/>
  <package name="gtk+-3.0"/>
  <namespace name="Gladeui"
             version="2.0"
             shared-library="libgladeui-2.so.6"
             c:identifier-prefixes="Glade"
             c:symbol-prefixes="glade">
    <callback name="ActionActivateFunc" c:type="GladeActionActivateFunc">
      <doc xml:space="preserve">This delagate function is used to catch actions from the core.</doc>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="adaptor" transfer-ownership="none">
          <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
          <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
        </parameter>
        <parameter name="object" transfer-ownership="none">
          <doc xml:space="preserve">The #GObject</doc>
          <type name="GObject.Object" c:type="GObject*"/>
        </parameter>
        <parameter name="action_path" transfer-ownership="none">
          <doc xml:space="preserve">The action identifier in the action tree</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </callback>
    <callback name="ActionSubmenuFunc"
              c:type="GladeActionSubmenuFunc"
              introspectable="0">
      <doc xml:space="preserve">This delagate function is used to create dynamically customized
submenus. Called only for actions that dont have children.</doc>
      <return-value>
        <doc xml:space="preserve">A newly created #GtkMenu or %NULL</doc>
        <type name="Gtk.Widget" c:type="GtkWidget*"/>
      </return-value>
      <parameters>
        <parameter name="adaptor" transfer-ownership="none">
          <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
          <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
        </parameter>
        <parameter name="object" transfer-ownership="none">
          <doc xml:space="preserve">The #GObject</doc>
          <type name="GObject.Object" c:type="GObject*"/>
        </parameter>
        <parameter name="action_path" transfer-ownership="none">
          <doc xml:space="preserve">The action identifier in the action tree</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </callback>
    <callback name="AddChildFunc" c:type="GladeAddChildFunc">
      <doc xml:space="preserve">Called to add @child to @parent.</doc>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="adaptor" transfer-ownership="none">
          <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
          <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
        </parameter>
        <parameter name="parent" transfer-ownership="none">
          <doc xml:space="preserve">A #GObject container</doc>
          <type name="GObject.Object" c:type="GObject*"/>
        </parameter>
        <parameter name="child" transfer-ownership="none">
          <doc xml:space="preserve">The #GObject child</doc>
          <type name="GObject.Object" c:type="GObject*"/>
        </parameter>
      </parameters>
    </callback>
    <callback name="AddChildVerifyFunc" c:type="GladeAddChildVerifyFunc">
      <doc xml:space="preserve">Checks whether @child can be added to @parent.

If @user_feedback is %TRUE and @child cannot be
added then this shows a notification dialog to the user
explaining why.</doc>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve">whether @child can be added to @parent.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="adaptor" transfer-ownership="none">
          <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
          <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
        </parameter>
        <parameter name="parent" transfer-ownership="none">
          <doc xml:space="preserve">A #GObject container</doc>
          <type name="GObject.Object" c:type="GObject*"/>
        </parameter>
        <parameter name="child" transfer-ownership="none">
          <doc xml:space="preserve">A #GObject child</doc>
          <type name="GObject.Object" c:type="GObject*"/>
        </parameter>
        <parameter name="user_feedback" transfer-ownership="none">
          <doc xml:space="preserve">whether a notification dialog should be
presented in the case that the child cannot not be added.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </parameter>
      </parameters>
    </callback>
    <class name="App"
           c:symbol-prefix="app"
           c:type="GladeApp"
           parent="GObject.Object"
           glib:type-name="GladeApp"
           glib:get-type="glade_app_get_type"
           glib:type-struct="AppClass">
      <constructor name="new" c:identifier="glade_app_new">
        <return-value transfer-ownership="full">
          <type name="App" c:type="GladeApp*"/>
        </return-value>
      </constructor>
      <function name="add_project" c:identifier="glade_app_add_project">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="project" transfer-ownership="none">
            <type name="Project" c:type="GladeProject*"/>
          </parameter>
        </parameters>
      </function>
      <function name="config_save" c:identifier="glade_app_config_save">
        <doc xml:space="preserve">Saves the GKeyFile to "g_get_user_config_dir()/GLADE_CONFIG_FILENAME"

Return 0 on success.</doc>
        <return-value transfer-ownership="none">
          <type name="gint" c:type="gint"/>
        </return-value>
      </function>
      <function name="do_event" c:identifier="glade_app_do_event">
        <doc xml:space="preserve">This function has to be called in an event handler for widget selection to work.
See gdk_event_handler_set()</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">true if the event was handled.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <parameter name="event" transfer-ownership="none">
            <doc xml:space="preserve">the event to process.</doc>
            <type name="Gdk.Event" c:type="GdkEvent*"/>
          </parameter>
        </parameters>
      </function>
      <function name="get" c:identifier="glade_app_get" introspectable="0">
        <return-value>
          <type name="App" c:type="GladeApp*"/>
        </return-value>
      </function>
      <function name="get_accel_group"
                c:identifier="glade_app_get_accel_group"
                introspectable="0">
        <return-value>
          <type name="Gtk.AccelGroup" c:type="GtkAccelGroup*"/>
        </return-value>
      </function>
      <function name="get_bin_dir" c:identifier="glade_app_get_bin_dir">
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
      </function>
      <function name="get_catalog"
                c:identifier="glade_app_get_catalog"
                introspectable="0">
        <return-value>
          <type name="Catalog" c:type="GladeCatalog*"/>
        </return-value>
        <parameters>
          <parameter name="name" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="get_catalog_version"
                c:identifier="glade_app_get_catalog_version">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <parameter name="name" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="major" transfer-ownership="none">
            <type name="gint" c:type="gint*"/>
          </parameter>
          <parameter name="minor" transfer-ownership="none">
            <type name="gint" c:type="gint*"/>
          </parameter>
        </parameters>
      </function>
      <function name="get_catalogs"
                c:identifier="glade_app_get_catalogs"
                introspectable="0">
        <return-value>
          <doc xml:space="preserve">catalogs</doc>
          <type name="GLib.List" c:type="GList*">
            <type name="Catalog"/>
          </type>
        </return-value>
      </function>
      <function name="get_catalogs_dir"
                c:identifier="glade_app_get_catalogs_dir">
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
      </function>
      <function name="get_clipboard"
                c:identifier="glade_app_get_clipboard"
                introspectable="0">
        <return-value>
          <type name="Clipboard" c:type="GladeClipboard*"/>
        </return-value>
      </function>
      <function name="get_config" c:identifier="glade_app_get_config">
        <return-value transfer-ownership="full">
          <type name="GLib.KeyFile" c:type="GKeyFile*"/>
        </return-value>
      </function>
      <function name="get_lib_dir" c:identifier="glade_app_get_lib_dir">
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
      </function>
      <function name="get_locale_dir" c:identifier="glade_app_get_locale_dir">
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
      </function>
      <function name="get_modules_dir"
                c:identifier="glade_app_get_modules_dir">
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
      </function>
      <function name="get_pixmaps_dir"
                c:identifier="glade_app_get_pixmaps_dir">
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
      </function>
      <function name="get_project_by_path"
                c:identifier="glade_app_get_project_by_path"
                introspectable="0">
        <doc xml:space="preserve">Finds an open project with @path</doc>
        <return-value>
          <doc xml:space="preserve">A #GladeProject, or NULL if no such open project was found</doc>
          <type name="Project" c:type="GladeProject*"/>
        </return-value>
        <parameters>
          <parameter name="project_path" transfer-ownership="none">
            <doc xml:space="preserve">The path of an open project</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="get_projects"
                c:identifier="glade_app_get_projects"
                introspectable="0">
        <return-value>
          <type name="GLib.List" c:type="GList*">
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </return-value>
      </function>
      <function name="get_window"
                c:identifier="glade_app_get_window"
                introspectable="0">
        <return-value>
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
      </function>
      <function name="is_project_loaded"
                c:identifier="glade_app_is_project_loaded">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <parameter name="project_path" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="remove_project" c:identifier="glade_app_remove_project">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="project" transfer-ownership="none">
            <type name="Project" c:type="GladeProject*"/>
          </parameter>
        </parameters>
      </function>
      <function name="search_docs" c:identifier="glade_app_search_docs">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="book" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="page" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="search" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="set_accel_group"
                c:identifier="glade_app_set_accel_group">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="accel_group" transfer-ownership="none">
            <type name="Gtk.AccelGroup" c:type="GtkAccelGroup*"/>
          </parameter>
        </parameters>
      </function>
      <function name="set_window" c:identifier="glade_app_set_window">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="window" transfer-ownership="none">
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
        </parameters>
      </function>
      <field name="parent_instance">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
      <field name="priv">
        <type name="AppPrivate" c:type="GladeAppPrivate*"/>
      </field>
      <glib:signal name="doc-search" when="last">
        <doc xml:space="preserve">Emitted when the glade core requests that a doc-search be performed.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="arg1" transfer-ownership="none">
            <doc xml:space="preserve">the (#gchar *) book to search or %NULL</doc>
            <type name="utf8" c:type="gchar*"/>
          </parameter>
          <parameter name="arg2" transfer-ownership="none">
            <doc xml:space="preserve">the (#gchar *) page to search or %NULL</doc>
            <type name="utf8" c:type="gchar*"/>
          </parameter>
          <parameter name="arg3" transfer-ownership="none">
            <doc xml:space="preserve">the (#gchar *) search string or %NULL</doc>
            <type name="utf8" c:type="gchar*"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="signal-editor-created" when="last">
        <doc xml:space="preserve">Emitted when a new signal editor created.
A tree view is created in the default handler.
Connect your handler before the default handler for setting a custom column or renderer
and after it for connecting to the tree view signals</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="signal_editor" transfer-ownership="none">
            <doc xml:space="preserve">the new #GladeSignalEditor.</doc>
            <type name="GObject.Object"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="widget-adaptor-registered" when="last">
        <doc xml:space="preserve">Emitted when a new widget adaptor is registered.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">the newlly registered #GladeWidgetAdaptor.</doc>
            <type name="GObject.Object"/>
          </parameter>
        </parameters>
      </glib:signal>
    </class>
    <record name="AppClass"
            c:type="GladeAppClass"
            glib:is-gtype-struct-for="App">
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
      <field name="glade_reserved1">
        <callback name="glade_reserved1">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved2">
        <callback name="glade_reserved2">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved3">
        <callback name="glade_reserved3">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved4">
        <callback name="glade_reserved4">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved5">
        <callback name="glade_reserved5">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved6">
        <callback name="glade_reserved6">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
    </record>
    <record name="AppPrivate" c:type="GladeAppPrivate" disguised="1">
    </record>
    <class name="BaseEditor"
           c:symbol-prefix="base_editor"
           c:type="GladeBaseEditor"
           parent="Gtk.Box"
           glib:type-name="GladeBaseEditor"
           glib:get-type="glade_base_editor_get_type"
           glib:type-struct="BaseEditorClass">
      <implements name="Atk.ImplementorIface"/>
      <implements name="Gtk.Buildable"/>
      <implements name="Gtk.Orientable"/>
      <constructor name="new"
                   c:identifier="glade_base_editor_new"
                   introspectable="0">
        <doc xml:space="preserve">Creates a new GladeBaseEditor with @container toplevel
support for all the object types indicated in the variable argument list.
Argument List:
  o The type name
  o The GType the editor will support</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">a new GladeBaseEditor.</doc>
          <type name="BaseEditor" c:type="GladeBaseEditor*"/>
        </return-value>
        <parameters>
          <parameter name="container" transfer-ownership="none">
            <doc xml:space="preserve">a container this new editor will edit.</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="main_editable" transfer-ownership="none">
            <doc xml:space="preserve">the custom #GladeEditable for @container, or %NULL
@... A NULL terminated list of gchar *, GType</doc>
            <type name="Editable" c:type="GladeEditable*"/>
          </parameter>
          <parameter name="..." transfer-ownership="none">
            <varargs/>
          </parameter>
        </parameters>
      </constructor>
      <virtual-method name="build_child" introspectable="0">
        <return-value>
          <type name="Widget" c:type="GladeWidget*"/>
        </return-value>
        <parameters>
          <instance-parameter name="arg0" transfer-ownership="none">
            <type name="BaseEditor" c:type="GladeBaseEditor*"/>
          </instance-parameter>
          <parameter name="arg1" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
          <parameter name="arg2" transfer-ownership="none">
            <type name="GType" c:type="GType"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="change_type">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="arg0" transfer-ownership="none">
            <type name="BaseEditor" c:type="GladeBaseEditor*"/>
          </instance-parameter>
          <parameter name="arg1" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
          <parameter name="arg2" transfer-ownership="none">
            <type name="GType" c:type="GType"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="child_selected">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="arg0" transfer-ownership="none">
            <type name="BaseEditor" c:type="GladeBaseEditor*"/>
          </instance-parameter>
          <parameter name="arg1" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="delete_child">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="arg0" transfer-ownership="none">
            <type name="BaseEditor" c:type="GladeBaseEditor*"/>
          </instance-parameter>
          <parameter name="arg1" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
          <parameter name="arg2" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="get_display_name">
        <return-value transfer-ownership="full">
          <type name="utf8" c:type="gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="arg0" transfer-ownership="none">
            <type name="BaseEditor" c:type="GladeBaseEditor*"/>
          </instance-parameter>
          <parameter name="arg1" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="move_child">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="arg0" transfer-ownership="none">
            <type name="BaseEditor" c:type="GladeBaseEditor*"/>
          </instance-parameter>
          <parameter name="arg1" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
          <parameter name="arg2" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <method name="add_default_properties"
              c:identifier="glade_base_editor_add_default_properties">
        <doc xml:space="preserve">Add @gchild name and type property to @editor

NOTE: This function is intended to be used in "child-selected" callbacks</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="editor" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeBaseEditor</doc>
            <type name="BaseEditor" c:type="GladeBaseEditor*"/>
          </instance-parameter>
          <parameter name="gchild" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
        </parameters>
      </method>
      <method name="add_editable"
              c:identifier="glade_base_editor_add_editable">
        <doc xml:space="preserve">Add @gchild editor of type @page to the base editor

NOTE: This function is intended to be used in "child-selected" callbacks</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="editor" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeBaseEditor</doc>
            <type name="BaseEditor" c:type="GladeBaseEditor*"/>
          </instance-parameter>
          <parameter name="gchild" transfer-ownership="none">
            <doc xml:space="preserve">the #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
          <parameter name="page" transfer-ownership="none">
            <doc xml:space="preserve">the #GladeEditorPageType of the desired page for @gchild</doc>
            <type name="EditorPageType" c:type="GladeEditorPageType"/>
          </parameter>
        </parameters>
      </method>
      <method name="add_label" c:identifier="glade_base_editor_add_label">
        <doc xml:space="preserve">Adds a new label to @editor

NOTE: This function is intended to be used in "child-selected" callbacks</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="editor" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeBaseEditor</doc>
            <type name="BaseEditor" c:type="GladeBaseEditor*"/>
          </instance-parameter>
          <parameter name="str" transfer-ownership="none">
            <doc xml:space="preserve">the label string</doc>
            <type name="utf8" c:type="gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="add_properties"
              c:identifier="glade_base_editor_add_properties"
              introspectable="0">
        <doc xml:space="preserve">Add @gchild properties to @editor

NOTE: This function is intended to be used in "child-selected" callbacks</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="editor" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeBaseEditor</doc>
            <type name="BaseEditor" c:type="GladeBaseEditor*"/>
          </instance-parameter>
          <parameter name="gchild" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
          <parameter name="packing" transfer-ownership="none">
            <doc xml:space="preserve">whether we are adding packing properties or not</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
          <parameter name="..." transfer-ownership="none">
            <doc xml:space="preserve">A NULL terminated list of properties names.</doc>
            <varargs/>
          </parameter>
        </parameters>
      </method>
      <method name="append_types"
              c:identifier="glade_base_editor_append_types"
              introspectable="0">
        <doc xml:space="preserve">Appends support for all the object types indicated in the variable argument list.
Argument List:
  o The type name
  o The GType the editor will support for parents of type @type</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="editor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeBaseEditor</doc>
            <type name="BaseEditor" c:type="GladeBaseEditor*"/>
          </instance-parameter>
          <parameter name="parent_type" transfer-ownership="none">
            <doc xml:space="preserve">the parent type these child types will apply to
@... A NULL terminated list of gchar *, GType</doc>
            <type name="GType" c:type="GType"/>
          </parameter>
          <parameter name="..." transfer-ownership="none">
            <varargs/>
          </parameter>
        </parameters>
      </method>
      <method name="pack_new_window"
              c:identifier="glade_base_editor_pack_new_window"
              introspectable="0">
        <doc xml:space="preserve">This convenience function create a new dialog window and packs @editor in it.</doc>
        <return-value>
          <doc xml:space="preserve">the newly created window</doc>
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
        <parameters>
          <instance-parameter name="editor" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeBaseEditor</doc>
            <type name="BaseEditor" c:type="GladeBaseEditor*"/>
          </instance-parameter>
          <parameter name="title" transfer-ownership="none">
            <doc xml:space="preserve">the window title</doc>
            <type name="utf8" c:type="gchar*"/>
          </parameter>
          <parameter name="help_markup" transfer-ownership="none">
            <doc xml:space="preserve">the help text</doc>
            <type name="utf8" c:type="gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_show_signal_editor"
              c:identifier="glade_base_editor_set_show_signal_editor">
        <doc xml:space="preserve">Shows/hide @editor 's signal editor</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="editor" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeBaseEditor</doc>
            <type name="BaseEditor" c:type="GladeBaseEditor*"/>
          </instance-parameter>
          <parameter name="val" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <property name="container" writable="1" transfer-ownership="none">
        <type name="GObject.Object"/>
      </property>
      <field name="parent">
        <type name="Gtk.Box" c:type="GtkBox"/>
      </field>
      <field name="priv">
        <type name="BaseEditorPrivate" c:type="GladeBaseEditorPrivate*"/>
      </field>
      <glib:signal name="build-child" when="last" introspectable="0">
        <doc xml:space="preserve">Create a child widget here if something else must be done other than
calling glade_command_create() such as creating an intermediate parent.</doc>
        <return-value>
          <doc xml:space="preserve">the newly created #GladeWidget or NULL if child cant be created</doc>
          <type name="GObject.Object"/>
        </return-value>
        <parameters>
          <parameter name="gparent" transfer-ownership="none">
            <doc xml:space="preserve">the parent of the new child</doc>
            <type name="GObject.Object"/>
          </parameter>
          <parameter name="type" transfer-ownership="none">
            <doc xml:space="preserve">the #GType of the child</doc>
            <type name="GType" c:type="GType"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="change-type" when="last">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <parameter name="object" transfer-ownership="none">
            <type name="GObject.Object"/>
          </parameter>
          <parameter name="p0" transfer-ownership="none">
            <type name="GType" c:type="GType"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="child-selected" when="last">
        <doc xml:space="preserve">Emited when the user selects a child in the editor's treeview.
You can add the relevant child properties here using
glade_base_editor_add_default_properties() and glade_base_editor_add_properties()
You can also add labels with glade_base_editor_add_label to make the
editor look pretty.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="gchild" transfer-ownership="none">
            <doc xml:space="preserve">the selected #GladeWidget.</doc>
            <type name="GObject.Object"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="delete-child" when="last">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <parameter name="gparent" transfer-ownership="none">
            <doc xml:space="preserve">the parent</doc>
            <type name="GObject.Object"/>
          </parameter>
          <parameter name="gchild" transfer-ownership="none">
            <doc xml:space="preserve">the child to delete</doc>
            <type name="GObject.Object"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="get-display-name" when="last">
        <return-value transfer-ownership="full">
          <doc xml:space="preserve">a newly allocated string.</doc>
          <type name="utf8" c:type="gchar*"/>
        </return-value>
        <parameters>
          <parameter name="gchild" transfer-ownership="none">
            <doc xml:space="preserve">the child to get display name string to show in @gladebaseeditor
treeview.</doc>
            <type name="GObject.Object"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="move-child" when="last">
        <doc xml:space="preserve">Move child here if something else must be done other than cut &amp; paste.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">wheater child has been sucessfully moved or not.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <parameter name="gparent" transfer-ownership="none">
            <doc xml:space="preserve">the new parent of @gchild</doc>
            <type name="GObject.Object"/>
          </parameter>
          <parameter name="gchild" transfer-ownership="none">
            <doc xml:space="preserve">the #GladeWidget to move</doc>
            <type name="GObject.Object"/>
          </parameter>
        </parameters>
      </glib:signal>
    </class>
    <record name="BaseEditorClass"
            c:type="GladeBaseEditorClass"
            glib:is-gtype-struct-for="BaseEditor">
      <field name="parent_class">
        <type name="Gtk.BoxClass" c:type="GtkBoxClass"/>
      </field>
      <field name="child_selected">
        <callback name="child_selected">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="arg0" transfer-ownership="none">
              <type name="BaseEditor" c:type="GladeBaseEditor*"/>
            </parameter>
            <parameter name="arg1" transfer-ownership="none">
              <type name="Widget" c:type="GladeWidget*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="change_type">
        <callback name="change_type">
          <return-value transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </return-value>
          <parameters>
            <parameter name="arg0" transfer-ownership="none">
              <type name="BaseEditor" c:type="GladeBaseEditor*"/>
            </parameter>
            <parameter name="arg1" transfer-ownership="none">
              <type name="Widget" c:type="GladeWidget*"/>
            </parameter>
            <parameter name="arg2" transfer-ownership="none">
              <type name="GType" c:type="GType"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="get_display_name">
        <callback name="get_display_name">
          <return-value transfer-ownership="full">
            <type name="utf8" c:type="gchar*"/>
          </return-value>
          <parameters>
            <parameter name="arg0" transfer-ownership="none">
              <type name="BaseEditor" c:type="GladeBaseEditor*"/>
            </parameter>
            <parameter name="arg1" transfer-ownership="none">
              <type name="Widget" c:type="GladeWidget*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="build_child" introspectable="0">
        <callback name="build_child" introspectable="0">
          <return-value>
            <type name="Widget" c:type="GladeWidget*"/>
          </return-value>
          <parameters>
            <parameter name="arg0" transfer-ownership="none">
              <type name="BaseEditor" c:type="GladeBaseEditor*"/>
            </parameter>
            <parameter name="arg1" transfer-ownership="none">
              <type name="Widget" c:type="GladeWidget*"/>
            </parameter>
            <parameter name="arg2" transfer-ownership="none">
              <type name="GType" c:type="GType"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="delete_child">
        <callback name="delete_child">
          <return-value transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </return-value>
          <parameters>
            <parameter name="arg0" transfer-ownership="none">
              <type name="BaseEditor" c:type="GladeBaseEditor*"/>
            </parameter>
            <parameter name="arg1" transfer-ownership="none">
              <type name="Widget" c:type="GladeWidget*"/>
            </parameter>
            <parameter name="arg2" transfer-ownership="none">
              <type name="Widget" c:type="GladeWidget*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="move_child">
        <callback name="move_child">
          <return-value transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </return-value>
          <parameters>
            <parameter name="arg0" transfer-ownership="none">
              <type name="BaseEditor" c:type="GladeBaseEditor*"/>
            </parameter>
            <parameter name="arg1" transfer-ownership="none">
              <type name="Widget" c:type="GladeWidget*"/>
            </parameter>
            <parameter name="arg2" transfer-ownership="none">
              <type name="Widget" c:type="GladeWidget*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="glade_reserved1">
        <callback name="glade_reserved1">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved2">
        <callback name="glade_reserved2">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved3">
        <callback name="glade_reserved3">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved4">
        <callback name="glade_reserved4">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved5">
        <callback name="glade_reserved5">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved6">
        <callback name="glade_reserved6">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
    </record>
    <record name="BaseEditorPrivate"
            c:type="GladeBaseEditorPrivate"
            disguised="1">
    </record>
    <record name="Catalog" c:type="GladeCatalog" disguised="1">
      <method name="get_adaptors"
              c:identifier="glade_catalog_get_adaptors"
              introspectable="0">
        <return-value>
          <doc xml:space="preserve">the list of widget class adaptors</doc>
          <type name="GLib.List" c:type="GList*">
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="catalog" transfer-ownership="none">
            <doc xml:space="preserve">a catalog object</doc>
            <type name="Catalog" c:type="GladeCatalog*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_book" c:identifier="glade_catalog_get_book">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">The Devhelp search domain.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="catalog" transfer-ownership="none">
            <doc xml:space="preserve">a catalog object</doc>
            <type name="Catalog" c:type="GladeCatalog*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_domain" c:identifier="glade_catalog_get_domain">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">The domain to be used to translate strings from this catalog</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="catalog" transfer-ownership="none">
            <doc xml:space="preserve">a catalog object</doc>
            <type name="Catalog" c:type="GladeCatalog*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_icon_prefix"
              c:identifier="glade_catalog_get_icon_prefix">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">The prefix for icons.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="catalog" transfer-ownership="none">
            <doc xml:space="preserve">a catalog object</doc>
            <type name="Catalog" c:type="GladeCatalog*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_major_version"
              c:identifier="glade_catalog_get_major_version">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">The catalog version</doc>
          <type name="guint16" c:type="guint16"/>
        </return-value>
        <parameters>
          <instance-parameter name="catalog" transfer-ownership="none">
            <doc xml:space="preserve">a catalog object</doc>
            <type name="Catalog" c:type="GladeCatalog*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_minor_version"
              c:identifier="glade_catalog_get_minor_version">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">The catalog minor version</doc>
          <type name="guint16" c:type="guint16"/>
        </return-value>
        <parameters>
          <instance-parameter name="catalog" transfer-ownership="none">
            <doc xml:space="preserve">a catalog object</doc>
            <type name="Catalog" c:type="GladeCatalog*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_name" c:identifier="glade_catalog_get_name">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">The symbolic catalog name.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="catalog" transfer-ownership="none">
            <doc xml:space="preserve">a catalog object</doc>
            <type name="Catalog" c:type="GladeCatalog*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_targets"
              c:identifier="glade_catalog_get_targets"
              introspectable="0">
        <return-value>
          <doc xml:space="preserve">the list of suitable version targets.</doc>
          <type name="GLib.List" c:type="GList*">
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="catalog" transfer-ownership="none">
            <doc xml:space="preserve">a catalog object</doc>
            <type name="Catalog" c:type="GladeCatalog*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_widget_groups"
              c:identifier="glade_catalog_get_widget_groups"
              introspectable="0">
        <return-value>
          <doc xml:space="preserve">the list of widget groups (palette)</doc>
          <type name="GLib.List" c:type="GList*">
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="catalog" transfer-ownership="none">
            <doc xml:space="preserve">a catalog object</doc>
            <type name="Catalog" c:type="GladeCatalog*"/>
          </instance-parameter>
        </parameters>
      </method>
      <function name="add_path" c:identifier="glade_catalog_add_path">
        <doc xml:space="preserve">Adds a new path to the list of path to look catalogs for.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="path" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="destroy_all" c:identifier="glade_catalog_destroy_all">
        <doc xml:space="preserve">Destroy and free all resources related with every loaded catalog.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </function>
      <function name="get_extra_paths"
                c:identifier="glade_catalog_get_extra_paths"
                introspectable="0">
        <doc xml:space="preserve">Returns a list paths added by glade_catalog_add_path()</doc>
        <return-value transfer-ownership="none">
          <type name="GLib.List" c:type="const GList*">
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </return-value>
      </function>
      <function name="is_loaded" c:identifier="glade_catalog_is_loaded">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">Whether @name is loaded or not</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <parameter name="name" transfer-ownership="none">
            <doc xml:space="preserve">a catalog object</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="load_all"
                c:identifier="glade_catalog_load_all"
                introspectable="0">
        <doc xml:space="preserve">Loads all available catalogs in the system.
First loads catalogs from GLADE_ENV_CATALOG_PATH,
then from glade_app_get_catalogs_dir() and finally from paths specified with
glade_catalog_add_path()</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">the list of loaded GladeCatalog *</doc>
          <type name="GLib.List" c:type="const GList*">
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </return-value>
      </function>
      <function name="remove_path" c:identifier="glade_catalog_remove_path">
        <doc xml:space="preserve">Remove path from the list of path to look catalogs for.
NULL to remove all paths.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="path" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
    </record>
    <callback name="CatalogInitFunc" c:type="GladeCatalogInitFunc">
      <doc xml:space="preserve">Called once at glade startup time for every catalog, catalogs
are initialized in order of dependancies.</doc>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="name" transfer-ownership="none">
          <doc xml:space="preserve">The name of the catalog</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </callback>
    <class name="CellRendererIcon"
           c:symbol-prefix="cell_renderer_icon"
           c:type="GladeCellRendererIcon"
           parent="Gtk.CellRendererPixbuf"
           glib:type-name="GladeCellRendererIcon"
           glib:get-type="glade_cell_renderer_icon_get_type"
           glib:type-struct="CellRendererIconClass">
      <constructor name="new" c:identifier="glade_cell_renderer_icon_new">
        <return-value transfer-ownership="none">
          <type name="Gtk.CellRenderer" c:type="GtkCellRenderer*"/>
        </return-value>
      </constructor>
      <virtual-method name="activate">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="cell_renderer_icon"
                              transfer-ownership="none">
            <type name="CellRendererIcon" c:type="GladeCellRendererIcon*"/>
          </instance-parameter>
          <parameter name="path" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <method name="get_activatable"
              c:identifier="glade_cell_renderer_icon_get_activatable">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="icon" transfer-ownership="none">
            <type name="CellRendererIcon" c:type="GladeCellRendererIcon*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_active"
              c:identifier="glade_cell_renderer_icon_get_active">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="icon" transfer-ownership="none">
            <type name="CellRendererIcon" c:type="GladeCellRendererIcon*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_activatable"
              c:identifier="glade_cell_renderer_icon_set_activatable">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="icon" transfer-ownership="none">
            <type name="CellRendererIcon" c:type="GladeCellRendererIcon*"/>
          </instance-parameter>
          <parameter name="setting" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_active"
              c:identifier="glade_cell_renderer_icon_set_active">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="icon" transfer-ownership="none">
            <type name="CellRendererIcon" c:type="GladeCellRendererIcon*"/>
          </instance-parameter>
          <parameter name="setting" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <property name="activatable" writable="1" transfer-ownership="none">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="active" writable="1" transfer-ownership="none">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <field name="parent">
        <type name="Gtk.CellRendererPixbuf" c:type="GtkCellRendererPixbuf"/>
      </field>
      <field name="priv">
        <type name="CellRendererIconPrivate"
              c:type="GladeCellRendererIconPrivate*"/>
      </field>
      <glib:signal name="activate" when="last">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="object" transfer-ownership="none">
            <type name="utf8" c:type="gchar*"/>
          </parameter>
        </parameters>
      </glib:signal>
    </class>
    <record name="CellRendererIconClass"
            c:type="GladeCellRendererIconClass"
            glib:is-gtype-struct-for="CellRendererIcon">
      <field name="parent_class">
        <type name="Gtk.CellRendererPixbufClass"
              c:type="GtkCellRendererPixbufClass"/>
      </field>
      <field name="activate">
        <callback name="activate">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="cell_renderer_icon" transfer-ownership="none">
              <type name="CellRendererIcon" c:type="GladeCellRendererIcon*"/>
            </parameter>
            <parameter name="path" transfer-ownership="none">
              <type name="utf8" c:type="const gchar*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
    </record>
    <record name="CellRendererIconPrivate"
            c:type="GladeCellRendererIconPrivate"
            disguised="1">
    </record>
    <callback name="ChildActionActivateFunc"
              c:type="GladeChildActionActivateFunc">
      <doc xml:space="preserve">This delagate function is used to catch packing actions from the core.</doc>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="adaptor" transfer-ownership="none">
          <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
          <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
        </parameter>
        <parameter name="container" transfer-ownership="none">
          <doc xml:space="preserve">The #GtkContainer</doc>
          <type name="GObject.Object" c:type="GObject*"/>
        </parameter>
        <parameter name="object" transfer-ownership="none">
          <doc xml:space="preserve">The #GObject</doc>
          <type name="GObject.Object" c:type="GObject*"/>
        </parameter>
        <parameter name="action_path" transfer-ownership="none">
          <doc xml:space="preserve">The action identifier in the action tree</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </callback>
    <callback name="ChildGetPropertyFunc" c:type="GladeChildGetPropertyFunc">
      <doc xml:space="preserve">Called to get the packing property @property_name
on the @child object of @container into @value.</doc>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="adaptor" transfer-ownership="none">
          <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
          <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
        </parameter>
        <parameter name="container" transfer-ownership="none">
          <doc xml:space="preserve">The #GObject container</doc>
          <type name="GObject.Object" c:type="GObject*"/>
        </parameter>
        <parameter name="child" transfer-ownership="none">
          <doc xml:space="preserve">The #GObject child</doc>
          <type name="GObject.Object" c:type="GObject*"/>
        </parameter>
        <parameter name="property_name" transfer-ownership="none">
          <doc xml:space="preserve">The id of the property</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="value" transfer-ownership="none">
          <doc xml:space="preserve">The @GValue</doc>
          <type name="GObject.Value" c:type="GValue*"/>
        </parameter>
      </parameters>
    </callback>
    <callback name="ChildSetPropertyFunc" c:type="GladeChildSetPropertyFunc">
      <doc xml:space="preserve">Called to set the packing property @property_name to @value
on the @child object of @container.</doc>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="adaptor" transfer-ownership="none">
          <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
          <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
        </parameter>
        <parameter name="container" transfer-ownership="none">
          <doc xml:space="preserve">The #GObject container</doc>
          <type name="GObject.Object" c:type="GObject*"/>
        </parameter>
        <parameter name="child" transfer-ownership="none">
          <doc xml:space="preserve">The #GObject child</doc>
          <type name="GObject.Object" c:type="GObject*"/>
        </parameter>
        <parameter name="property_name" transfer-ownership="none">
          <doc xml:space="preserve">The id of the property</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="value" transfer-ownership="none">
          <doc xml:space="preserve">The @GValue</doc>
          <type name="GObject.Value" c:type="const GValue*"/>
        </parameter>
      </parameters>
    </callback>
    <callback name="ChildVerifyPropertyFunc"
              c:type="GladeChildVerifyPropertyFunc">
      <doc xml:space="preserve">This delagate function is always called whenever setting any
properties with the exception of load time, and copy/paste time
(basicly the two places where we recreate a hierarchy that we
already know "works") its basicly an optional backend provided
boundry checker for properties.</doc>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve">whether or not its OK to set @value on @object, this function
will silently return TRUE if the class did not provide a verify function.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="adaptor" transfer-ownership="none">
          <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
          <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
        </parameter>
        <parameter name="container" transfer-ownership="none">
          <doc xml:space="preserve">The #GObject container</doc>
          <type name="GObject.Object" c:type="GObject*"/>
        </parameter>
        <parameter name="child" transfer-ownership="none">
          <doc xml:space="preserve">The #GObject child</doc>
          <type name="GObject.Object" c:type="GObject*"/>
        </parameter>
        <parameter name="property_name" transfer-ownership="none">
          <doc xml:space="preserve">The id of the property</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="value" transfer-ownership="none">
          <doc xml:space="preserve">The @GValue</doc>
          <type name="GObject.Value" c:type="const GValue*"/>
        </parameter>
      </parameters>
    </callback>
    <class name="Clipboard"
           c:symbol-prefix="clipboard"
           c:type="GladeClipboard"
           parent="GObject.Object"
           glib:type-name="GladeClipboard"
           glib:get-type="glade_clipboard_get_type"
           glib:type-struct="ClipboardClass">
      <constructor name="new" c:identifier="glade_clipboard_new">
        <return-value transfer-ownership="full">
          <doc xml:space="preserve">a new #GladeClipboard object</doc>
          <type name="Clipboard" c:type="GladeClipboard*"/>
        </return-value>
      </constructor>
      <method name="add" c:identifier="glade_clipboard_add" introspectable="0">
        <doc xml:space="preserve">Adds @widgets to @clipboard.
This increases the reference count of each #GladeWidget in @widgets.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="clipboard" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeClipboard</doc>
            <type name="Clipboard" c:type="GladeClipboard*"/>
          </instance-parameter>
          <parameter name="widgets" transfer-ownership="none">
            <doc xml:space="preserve">a #GList of #GladeWidgets</doc>
            <type name="GLib.List" c:type="GList*">
              <type name="gpointer" c:type="gpointer"/>
            </type>
          </parameter>
        </parameters>
      </method>
      <method name="clear" c:identifier="glade_clipboard_clear">
        <doc xml:space="preserve">Removes all widgets from the @clipboard.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="clipboard" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeClipboard</doc>
            <type name="Clipboard" c:type="GladeClipboard*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_has_selection"
              c:identifier="glade_clipboard_get_has_selection">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">TRUE if this clipboard has selected items to paste.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="clipboard" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeClipboard</doc>
            <type name="Clipboard" c:type="GladeClipboard*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="widgets"
              c:identifier="glade_clipboard_widgets"
              introspectable="0">
        <return-value>
          <type name="GLib.List" c:type="GList*">
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="clipboard" transfer-ownership="none">
            <type name="Clipboard" c:type="GladeClipboard*"/>
          </instance-parameter>
        </parameters>
      </method>
      <property name="has-selection" transfer-ownership="none">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <field name="parent_instance">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
      <field name="priv">
        <type name="ClipboardPrivate" c:type="GladeClipboardPrivate*"/>
      </field>
    </class>
    <record name="ClipboardClass"
            c:type="GladeClipboardClass"
            glib:is-gtype-struct-for="Clipboard">
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
      <field name="glade_reserved1">
        <callback name="glade_reserved1">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved2">
        <callback name="glade_reserved2">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved3">
        <callback name="glade_reserved3">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved4">
        <callback name="glade_reserved4">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
    </record>
    <record name="ClipboardPrivate"
            c:type="GladeClipboardPrivate"
            disguised="1">
    </record>
    <class name="Command"
           c:symbol-prefix="command"
           c:type="GladeCommand"
           parent="GObject.Object"
           glib:type-name="GladeCommand"
           glib:get-type="glade_command_get_type"
           glib:type-struct="CommandClass">
      <function name="add" c:identifier="glade_command_add" introspectable="0">
        <doc xml:space="preserve">@widgets (element-type GladeWidget): a #Glist
Performs an add command on all widgets in @widgets to @parent, possibly
replacing @placeholder (note toplevels dont need a parent; the active project
will be used when pasting toplevel objects).
Pasted widgets will persist packing properties from thier cut/copy source
while newly added widgets will prefer packing defaults.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="widgets" transfer-ownership="none">
            <type name="GLib.List" c:type="GList*">
              <type name="gpointer" c:type="gpointer"/>
            </type>
          </parameter>
          <parameter name="parent" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
          <parameter name="placeholder" transfer-ownership="none">
            <doc xml:space="preserve">a #GladePlaceholder</doc>
            <type name="Placeholder" c:type="GladePlaceholder*"/>
          </parameter>
          <parameter name="project" transfer-ownership="none">
            <type name="Project" c:type="GladeProject*"/>
          </parameter>
          <parameter name="pasting" transfer-ownership="none">
            <doc xml:space="preserve">whether we are pasting an existing widget or creating a new one.</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </function>
      <function name="add_signal" c:identifier="glade_command_add_signal">
        <doc xml:space="preserve">TODO: write me</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="glade_widget" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
          <parameter name="signal" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeSignal</doc>
            <type name="Signal" c:type="const GladeSignal*"/>
          </parameter>
        </parameters>
      </function>
      <function name="change_signal"
                c:identifier="glade_command_change_signal">
        <doc xml:space="preserve">TODO: write me</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="glade_widget" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
          <parameter name="old_signal" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeSignal</doc>
            <type name="Signal" c:type="const GladeSignal*"/>
          </parameter>
          <parameter name="new_signal" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeSignal</doc>
            <type name="Signal" c:type="const GladeSignal*"/>
          </parameter>
        </parameters>
      </function>
      <function name="create"
                c:identifier="glade_command_create"
                introspectable="0">
        <doc xml:space="preserve">Creates a new widget using @adaptor and put in place of the @placeholder
in the @project</doc>
        <return-value>
          <doc xml:space="preserve">the newly created widget.</doc>
          <type name="Widget" c:type="GladeWidget*"/>
        </return-value>
        <parameters>
          <parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor
@parent (allow-none):             the parent #GladeWidget to add the new widget to.
@placeholder (allow-none):	the placeholder which will be substituted by the widget</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </parameter>
          <parameter name="parent" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
          <parameter name="placeholder" transfer-ownership="none">
            <type name="Placeholder" c:type="GladePlaceholder*"/>
          </parameter>
          <parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">the project his widget belongs to.</doc>
            <type name="Project" c:type="GladeProject*"/>
          </parameter>
        </parameters>
      </function>
      <function name="cut" c:identifier="glade_command_cut" introspectable="0">
        <doc xml:space="preserve">@widgets (element-type GladeWidget): a #GList of #GladeWidgets
Removes the list of widgets and adds them to the clipboard.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="widgets" transfer-ownership="none">
            <type name="GLib.List" c:type="GList*">
              <type name="gpointer" c:type="gpointer"/>
            </type>
          </parameter>
        </parameters>
      </function>
      <function name="delete"
                c:identifier="glade_command_delete"
                introspectable="0">
        <doc xml:space="preserve">@widgets (element-type GladeWidget): a #GList of #GladeWidgets
Performs a delete command on the list of widgets.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="widgets" transfer-ownership="none">
            <type name="GLib.List" c:type="GList*">
              <type name="gpointer" c:type="gpointer"/>
            </type>
          </parameter>
        </parameters>
      </function>
      <function name="dnd" c:identifier="glade_command_dnd" introspectable="0">
        <doc xml:space="preserve">@widgets (element-type GladeWidget): a #GList of #GladeWidget
@parent (allow-none): a #GladeWidget
@placeholder (allow-none): a #GladePlaceholder
Performs a drag-n-drop command, i.e. removes the list of widgets and adds them
to the new parent, possibly replacing @placeholder (note toplevels dont need a
parent; the active project will be used when pasting toplevel objects).</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="widgets" transfer-ownership="none">
            <type name="GLib.List" c:type="GList*">
              <type name="gpointer" c:type="gpointer"/>
            </type>
          </parameter>
          <parameter name="parent" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
          <parameter name="placeholder" transfer-ownership="none">
            <type name="Placeholder" c:type="GladePlaceholder*"/>
          </parameter>
        </parameters>
      </function>
      <function name="get_group_depth"
                c:identifier="glade_command_get_group_depth">
        <return-value transfer-ownership="none">
          <type name="gint" c:type="gint"/>
        </return-value>
      </function>
      <function name="lock_widget" c:identifier="glade_command_lock_widget">
        <doc xml:space="preserve">Sets @locked to be in a locked up state
spoken for by @widget, locked widgets cannot
be removed from the project until unlocked.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
          <parameter name="lock" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
        </parameters>
      </function>
      <function name="paste"
                c:identifier="glade_command_paste"
                introspectable="0">
        <doc xml:space="preserve">@widgets (element-type GladeWidget): a #GList of #GladeWidget
@parent (allow-none): a #GladeWidget
@placeholder (allow-none): a #GladePlaceholder
Performs a paste command on all widgets in @widgets to @parent, possibly
replacing @placeholder (note toplevels dont need a parent; the active project
will be used when pasting toplevel objects).</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="widgets" transfer-ownership="none">
            <type name="GLib.List" c:type="GList*">
              <type name="gpointer" c:type="gpointer"/>
            </type>
          </parameter>
          <parameter name="parent" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
          <parameter name="placeholder" transfer-ownership="none">
            <type name="Placeholder" c:type="GladePlaceholder*"/>
          </parameter>
          <parameter name="project" transfer-ownership="none">
            <type name="Project" c:type="GladeProject*"/>
          </parameter>
        </parameters>
      </function>
      <function name="pop_group" c:identifier="glade_command_pop_group">
        <doc xml:space="preserve">Mark the end of a command group.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </function>
      <function name="push_group"
                c:identifier="glade_command_push_group"
                introspectable="0">
        <doc xml:space="preserve">Marks the begining of a group.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="fmt" transfer-ownership="none">
            <doc xml:space="preserve">The collective desctiption of the command group.
              only the description of the first group on the
              stack is used when embedding groups.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="..." transfer-ownership="none">
            <doc xml:space="preserve">args to the format string.</doc>
            <varargs/>
          </parameter>
        </parameters>
      </function>
      <function name="remove_signal"
                c:identifier="glade_command_remove_signal">
        <doc xml:space="preserve">TODO: write me</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="glade_widget" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
          <parameter name="signal" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeSignal</doc>
            <type name="Signal" c:type="const GladeSignal*"/>
          </parameter>
        </parameters>
      </function>
      <function name="set_i18n" c:identifier="glade_command_set_i18n">
        <doc xml:space="preserve">Sets the i18n data on the property.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="property" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProperty</doc>
            <type name="Property" c:type="GladeProperty*"/>
          </parameter>
          <parameter name="translatable" transfer-ownership="none">
            <doc xml:space="preserve">a #gboolean</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
          <parameter name="context" transfer-ownership="none">
            <doc xml:space="preserve">a #const gchar *</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="comment" transfer-ownership="none">
            <doc xml:space="preserve">a #const gchar *</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="set_name" c:identifier="glade_command_set_name">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="glade_widget" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
          <parameter name="name" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="set_project_domain"
                c:identifier="glade_command_set_project_domain">
        <doc xml:space="preserve">Sets @domain as the translation domain for @project.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeProject</doc>
            <type name="Project" c:type="GladeProject*"/>
          </parameter>
          <parameter name="domain" transfer-ownership="none">
            <doc xml:space="preserve">The translation domain for @project</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="set_project_license"
                c:identifier="glade_command_set_project_license">
        <doc xml:space="preserve">Sets the license agreement for @project. It will be saved in the xml as comment.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeProject</doc>
            <type name="Project" c:type="GladeProject*"/>
          </parameter>
          <parameter name="license" transfer-ownership="none">
            <doc xml:space="preserve">License of @project</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="set_project_resource_path"
                c:identifier="glade_command_set_project_resource_path">
        <doc xml:space="preserve">Sets a resource path @project.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeProject</doc>
            <type name="Project" c:type="GladeProject*"/>
          </parameter>
          <parameter name="path" transfer-ownership="none">
            <doc xml:space="preserve">path to load resources from.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="set_project_target"
                c:identifier="glade_command_set_project_target">
        <doc xml:space="preserve">Sets the target of @catalog to @major.@minor in @project.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeProject</doc>
            <type name="Project" c:type="GladeProject*"/>
          </parameter>
          <parameter name="catalog" transfer-ownership="none">
            <doc xml:space="preserve">The name of the catalog to set the project's target for</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="major" transfer-ownership="none">
            <doc xml:space="preserve">The new major version of @catalog to target</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
          <parameter name="minor" transfer-ownership="none">
            <doc xml:space="preserve">The new minor version of @catalog to target</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </function>
      <function name="set_project_template"
                c:identifier="glade_command_set_project_template">
        <doc xml:space="preserve">Sets @widget to be the template widget in @project.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeProject</doc>
            <type name="Project" c:type="GladeProject*"/>
          </parameter>
          <parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">The #GladeWidget to make template</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
        </parameters>
      </function>
      <function name="set_properties"
                c:identifier="glade_command_set_properties"
                introspectable="0">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="property" transfer-ownership="none">
            <type name="Property" c:type="GladeProperty*"/>
          </parameter>
          <parameter name="old_value" transfer-ownership="none">
            <type name="GObject.Value" c:type="const GValue*"/>
          </parameter>
          <parameter name="new_value" transfer-ownership="none">
            <type name="GObject.Value" c:type="const GValue*"/>
          </parameter>
          <parameter name="..." transfer-ownership="none">
            <varargs/>
          </parameter>
        </parameters>
      </function>
      <function name="set_properties_list"
                c:identifier="glade_command_set_properties_list"
                introspectable="0">
        <doc xml:space="preserve">@props (element-type GladeProperty): List of #GladeProperty</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="project" transfer-ownership="none">
            <type name="Project" c:type="GladeProject*"/>
          </parameter>
          <parameter name="props" transfer-ownership="none">
            <type name="GLib.List" c:type="GList*">
              <type name="gpointer" c:type="gpointer"/>
            </type>
          </parameter>
        </parameters>
      </function>
      <function name="set_property"
                c:identifier="glade_command_set_property"
                introspectable="0">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="property" transfer-ownership="none">
            <type name="Property" c:type="GladeProperty*"/>
          </parameter>
          <parameter name="..." transfer-ownership="none">
            <varargs/>
          </parameter>
        </parameters>
      </function>
      <function name="set_property_enabled"
                c:identifier="glade_command_set_property_enabled">
        <doc xml:space="preserve">Enables or disables @property.

@property must be an optional property.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="property" transfer-ownership="none">
            <doc xml:space="preserve">An optional #GladeProperty</doc>
            <type name="Property" c:type="GladeProperty*"/>
          </parameter>
          <parameter name="enabled" transfer-ownership="none">
            <doc xml:space="preserve">Whether the property should be enabled</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </function>
      <function name="set_property_value"
                c:identifier="glade_command_set_property_value">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="property" transfer-ownership="none">
            <type name="Property" c:type="GladeProperty*"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <type name="GObject.Value" c:type="const GValue*"/>
          </parameter>
        </parameters>
      </function>
      <function name="unlock_widget"
                c:identifier="glade_command_unlock_widget">
        <doc xml:space="preserve">Unlocks @widget so that it can be removed
from the project again</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
        </parameters>
      </function>
      <virtual-method name="collapse" invoker="collapse">
        <doc xml:space="preserve">Merges @other into @command, so that @command now
covers both commands and @other can be dispensed with.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="this_cmd" transfer-ownership="none">
            <type name="Command" c:type="GladeCommand*"/>
          </instance-parameter>
          <parameter name="other_cmd" transfer-ownership="none">
            <type name="Command" c:type="GladeCommand*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="execute" invoker="execute">
        <doc xml:space="preserve">Executes @command</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether the command was successfully executed</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="this_cmd" transfer-ownership="none">
            <type name="Command" c:type="GladeCommand*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="undo" invoker="undo">
        <doc xml:space="preserve">Undo the effects of @command</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether the command was successfully reversed</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="this_cmd" transfer-ownership="none">
            <type name="Command" c:type="GladeCommand*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="unifies" invoker="unifies">
        <doc xml:space="preserve">Checks whether @command and @other can be unified
to make one single command.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether they can be unified.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="this_cmd" transfer-ownership="none">
            <type name="Command" c:type="GladeCommand*"/>
          </instance-parameter>
          <parameter name="other_cmd" transfer-ownership="none">
            <type name="Command" c:type="GladeCommand*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <method name="collapse" c:identifier="glade_command_collapse">
        <doc xml:space="preserve">Merges @other into @command, so that @command now
covers both commands and @other can be dispensed with.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="command" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeCommand</doc>
            <type name="Command" c:type="GladeCommand*"/>
          </instance-parameter>
          <parameter name="other" transfer-ownership="none">
            <doc xml:space="preserve">another #GladeCommand</doc>
            <type name="Command" c:type="GladeCommand*"/>
          </parameter>
        </parameters>
      </method>
      <method name="description" c:identifier="glade_command_description">
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="command" transfer-ownership="none">
            <type name="Command" c:type="GladeCommand*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="execute" c:identifier="glade_command_execute">
        <doc xml:space="preserve">Executes @command</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether the command was successfully executed</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="command" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeCommand</doc>
            <type name="Command" c:type="GladeCommand*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="group_id" c:identifier="glade_command_group_id">
        <return-value transfer-ownership="none">
          <type name="gint" c:type="gint"/>
        </return-value>
        <parameters>
          <instance-parameter name="command" transfer-ownership="none">
            <type name="Command" c:type="GladeCommand*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="undo" c:identifier="glade_command_undo">
        <doc xml:space="preserve">Undo the effects of @command</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether the command was successfully reversed</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="command" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeCommand</doc>
            <type name="Command" c:type="GladeCommand*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="unifies" c:identifier="glade_command_unifies">
        <doc xml:space="preserve">Checks whether @command and @other can be unified
to make one single command.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether they can be unified.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="command" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeCommand</doc>
            <type name="Command" c:type="GladeCommand*"/>
          </instance-parameter>
          <parameter name="other" transfer-ownership="none">
            <doc xml:space="preserve">another #GladeCommand</doc>
            <type name="Command" c:type="GladeCommand*"/>
          </parameter>
        </parameters>
      </method>
      <field name="parent">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
      <field name="priv">
        <type name="CommandPrivate" c:type="GladeCommandPrivate*"/>
      </field>
    </class>
    <record name="CommandClass"
            c:type="GladeCommandClass"
            glib:is-gtype-struct-for="Command">
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
      <field name="execute">
        <callback name="execute">
          <return-value transfer-ownership="none">
            <doc xml:space="preserve">whether the command was successfully executed</doc>
            <type name="gboolean" c:type="gboolean"/>
          </return-value>
          <parameters>
            <parameter name="this_cmd" transfer-ownership="none">
              <type name="Command" c:type="GladeCommand*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="undo">
        <callback name="undo">
          <return-value transfer-ownership="none">
            <doc xml:space="preserve">whether the command was successfully reversed</doc>
            <type name="gboolean" c:type="gboolean"/>
          </return-value>
          <parameters>
            <parameter name="this_cmd" transfer-ownership="none">
              <type name="Command" c:type="GladeCommand*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="unifies">
        <callback name="unifies">
          <return-value transfer-ownership="none">
            <doc xml:space="preserve">whether they can be unified.</doc>
            <type name="gboolean" c:type="gboolean"/>
          </return-value>
          <parameters>
            <parameter name="this_cmd" transfer-ownership="none">
              <type name="Command" c:type="GladeCommand*"/>
            </parameter>
            <parameter name="other_cmd" transfer-ownership="none">
              <type name="Command" c:type="GladeCommand*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="collapse">
        <callback name="collapse">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="this_cmd" transfer-ownership="none">
              <type name="Command" c:type="GladeCommand*"/>
            </parameter>
            <parameter name="other_cmd" transfer-ownership="none">
              <type name="Command" c:type="GladeCommand*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="glade_reserved1">
        <callback name="glade_reserved1">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved2">
        <callback name="glade_reserved2">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved3">
        <callback name="glade_reserved3">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved4">
        <callback name="glade_reserved4">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
    </record>
    <record name="CommandPrivate" c:type="GladeCommandPrivate" disguised="1">
    </record>
    <callback name="ConstructObjectFunc"
              c:type="GladeConstructObjectFunc"
              introspectable="0">
      <doc xml:space="preserve">This function is called to construct a GObject instance.
(for language bindings that may need to construct a wrapper
object).</doc>
      <return-value>
        <doc xml:space="preserve">A newly created #GObject</doc>
        <type name="GObject.Object" c:type="GObject*"/>
      </return-value>
      <parameters>
        <parameter name="adaptor" transfer-ownership="none">
          <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
          <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
        </parameter>
        <parameter name="n_parameters" transfer-ownership="none">
          <doc xml:space="preserve">amount of construct parameters</doc>
          <type name="guint" c:type="guint"/>
        </parameter>
        <parameter name="parameters" transfer-ownership="none">
          <doc xml:space="preserve">array of construct #GParameter args to create
             the new object with.</doc>
          <type name="GObject.Parameter" c:type="GParameter*"/>
        </parameter>
      </parameters>
    </callback>
    <callback name="CreateEPropFunc"
              c:type="GladeCreateEPropFunc"
              introspectable="0">
      <doc xml:space="preserve">Creates a GladeEditorProperty to edit @klass</doc>
      <return-value>
        <doc xml:space="preserve">A newly created #GladeEditorProperty</doc>
        <type name="EditorProperty" c:type="GladeEditorProperty*"/>
      </return-value>
      <parameters>
        <parameter name="adaptor" transfer-ownership="none">
          <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
          <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
        </parameter>
        <parameter name="klass" transfer-ownership="none">
          <doc xml:space="preserve">The #GladePropertyClass to be edited</doc>
          <type name="PropertyClass" c:type="GladePropertyClass*"/>
        </parameter>
        <parameter name="use_command" transfer-ownership="none">
          <doc xml:space="preserve">whether to use the GladeCommand interface
to commit property changes</doc>
          <type name="gboolean" c:type="gboolean"/>
        </parameter>
      </parameters>
    </callback>
    <callback name="CreateEditableFunc"
              c:type="GladeCreateEditableFunc"
              introspectable="0">
      <doc xml:space="preserve">This is used to allow the backend to override the way an
editor page is layed out (note that editor widgets are created
on demand and not at startup).</doc>
      <return-value>
        <doc xml:space="preserve">A new #GladeEditable widget</doc>
        <type name="Editable" c:type="GladeEditable*"/>
      </return-value>
      <parameters>
        <parameter name="adaptor" transfer-ownership="none">
          <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
          <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
        </parameter>
        <parameter name="type" transfer-ownership="none">
          <doc xml:space="preserve">The #GladeEditorPageType</doc>
          <type name="EditorPageType" c:type="GladeEditorPageType"/>
        </parameter>
      </parameters>
    </callback>
    <enumeration name="CreateReason"
                 glib:type-name="GladeCreateReason"
                 glib:get-type="glade_create_reason_get_type"
                 c:type="GladeCreateReason">
      <doc xml:space="preserve">These are the reasons your #GladePostCreateFunc can be called.</doc>
      <member name="user"
              value="0"
              c:identifier="GLADE_CREATE_USER"
              glib:nick="user">
        <doc xml:space="preserve">Was created at the user's request
                    (this is a good time to set any properties
                    or add children to the project; like GtkFrame's
                    label for example).</doc>
      </member>
      <member name="copy"
              value="1"
              c:identifier="GLADE_CREATE_COPY"
              glib:nick="copy">
        <doc xml:space="preserve">Was created as a result of the copy/paste
                    mechanism, at this point you can count on glade
                    to follow up with properties and children on
                    its own.</doc>
      </member>
      <member name="load"
              value="2"
              c:identifier="GLADE_CREATE_LOAD"
              glib:nick="load">
        <doc xml:space="preserve">Was created during the load process.</doc>
      </member>
      <member name="rebuild"
              value="3"
              c:identifier="GLADE_CREATE_REBUILD"
              glib:nick="rebuild">
        <doc xml:space="preserve">Was created as a replacement for another project
                       object; this only happens when the user is
                       changing a property that is marked by the type
                       system as G_PARAM_SPEC_CONSTRUCT_ONLY.</doc>
      </member>
      <member name="reasons"
              value="4"
              c:identifier="GLADE_CREATE_REASONS"
              glib:nick="reasons">
        <doc xml:space="preserve">Never used.</doc>
      </member>
    </enumeration>
    <callback name="CreateWidgetFunc"
              c:type="GladeCreateWidgetFunc"
              introspectable="0">
      <doc xml:space="preserve">This entry point allows the backend to create a specialized GladeWidget
derived object for handling instances in the core.</doc>
      <return-value>
        <doc xml:space="preserve">A newly created #GladeWidget for the said adaptor.</doc>
        <type name="Widget" c:type="GladeWidget*"/>
      </return-value>
      <parameters>
        <parameter name="adaptor" transfer-ownership="none">
          <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
          <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
        </parameter>
        <parameter name="first_property_name" transfer-ownership="none">
          <doc xml:space="preserve">the name of the first property</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="var_args" transfer-ownership="none">
          <doc xml:space="preserve">the value of the first property, followed optionally by more
 name/value pairs, followed by %NULL</doc>
          <type name="va_list" c:type="va_list"/>
        </parameter>
      </parameters>
    </callback>
    <record name="Cursor" c:type="GladeCursor">
      <field name="selector" writable="1">
        <type name="Gdk.Cursor" c:type="GdkCursor*"/>
      </field>
      <field name="add_widget" writable="1">
        <type name="Gdk.Cursor" c:type="GdkCursor*"/>
      </field>
      <field name="resize_top_left" writable="1">
        <type name="Gdk.Cursor" c:type="GdkCursor*"/>
      </field>
      <field name="resize_top_right" writable="1">
        <type name="Gdk.Cursor" c:type="GdkCursor*"/>
      </field>
      <field name="resize_bottom_left" writable="1">
        <type name="Gdk.Cursor" c:type="GdkCursor*"/>
      </field>
      <field name="resize_bottom_right" writable="1">
        <type name="Gdk.Cursor" c:type="GdkCursor*"/>
      </field>
      <field name="resize_left" writable="1">
        <type name="Gdk.Cursor" c:type="GdkCursor*"/>
      </field>
      <field name="resize_right" writable="1">
        <type name="Gdk.Cursor" c:type="GdkCursor*"/>
      </field>
      <field name="resize_top" writable="1">
        <type name="Gdk.Cursor" c:type="GdkCursor*"/>
      </field>
      <field name="resize_bottom" writable="1">
        <type name="Gdk.Cursor" c:type="GdkCursor*"/>
      </field>
      <field name="drag" writable="1">
        <type name="Gdk.Cursor" c:type="GdkCursor*"/>
      </field>
      <field name="add_widget_pixbuf" writable="1">
        <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
      </field>
      <function name="get_add_widget_pixbuf"
                c:identifier="glade_cursor_get_add_widget_pixbuf">
        <return-value transfer-ownership="none">
          <type name="GdkPixbuf.Pixbuf" c:type="const GdkPixbuf*"/>
        </return-value>
      </function>
      <function name="init" c:identifier="glade_cursor_init">
        <doc xml:space="preserve">Initializes cursors for use with glade_cursor_set().</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </function>
      <function name="set" c:identifier="glade_cursor_set">
        <doc xml:space="preserve">Sets the cursor for @window to something appropriate based on @type.
(also sets the cursor on all visible project widgets)</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="project" transfer-ownership="none">
            <type name="Project" c:type="GladeProject*"/>
          </parameter>
          <parameter name="window" transfer-ownership="none">
            <doc xml:space="preserve">a #GdkWindow</doc>
            <type name="Gdk.Window" c:type="GdkWindow*"/>
          </parameter>
          <parameter name="type" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeCursorType</doc>
            <type name="CursorType" c:type="GladeCursorType"/>
          </parameter>
        </parameters>
      </function>
    </record>
    <enumeration name="CursorType"
                 glib:type-name="GladeCursorType"
                 glib:get-type="glade_cursor_type_get_type"
                 c:type="GladeCursorType">
      <member name="selector"
              value="0"
              c:identifier="GLADE_CURSOR_SELECTOR"
              glib:nick="selector">
      </member>
      <member name="add_widget"
              value="1"
              c:identifier="GLADE_CURSOR_ADD_WIDGET"
              glib:nick="add-widget">
      </member>
      <member name="resize_top_left"
              value="2"
              c:identifier="GLADE_CURSOR_RESIZE_TOP_LEFT"
              glib:nick="resize-top-left">
      </member>
      <member name="resize_top_right"
              value="3"
              c:identifier="GLADE_CURSOR_RESIZE_TOP_RIGHT"
              glib:nick="resize-top-right">
      </member>
      <member name="resize_bottom_left"
              value="4"
              c:identifier="GLADE_CURSOR_RESIZE_BOTTOM_LEFT"
              glib:nick="resize-bottom-left">
      </member>
      <member name="resize_bottom_right"
              value="5"
              c:identifier="GLADE_CURSOR_RESIZE_BOTTOM_RIGHT"
              glib:nick="resize-bottom-right">
      </member>
      <member name="resize_left"
              value="6"
              c:identifier="GLADE_CURSOR_RESIZE_LEFT"
              glib:nick="resize-left">
      </member>
      <member name="resize_right"
              value="7"
              c:identifier="GLADE_CURSOR_RESIZE_RIGHT"
              glib:nick="resize-right">
      </member>
      <member name="resize_top"
              value="8"
              c:identifier="GLADE_CURSOR_RESIZE_TOP"
              glib:nick="resize-top">
      </member>
      <member name="resize_bottom"
              value="9"
              c:identifier="GLADE_CURSOR_RESIZE_BOTTOM"
              glib:nick="resize-bottom">
      </member>
      <member name="drag"
              value="10"
              c:identifier="GLADE_CURSOR_DRAG"
              glib:nick="drag">
      </member>
    </enumeration>
    <constant name="DEVHELP_FALLBACK_ICON_FILE"
              value="devhelp.png"
              c:type="GLADE_DEVHELP_FALLBACK_ICON_FILE">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="DEVHELP_ICON_NAME"
              value="devhelp"
              c:type="GLADE_DEVHELP_ICON_NAME">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <bitfield name="DebugFlag"
              glib:type-name="GladeDebugFlag"
              glib:get-type="glade_debug_flag_get_type"
              c:type="GladeDebugFlag">
      <member name="ref_counts"
              value="1"
              c:identifier="GLADE_DEBUG_REF_COUNTS"
              glib:nick="ref-counts">
      </member>
      <member name="widget_events"
              value="2"
              c:identifier="GLADE_DEBUG_WIDGET_EVENTS"
              glib:nick="widget-events">
      </member>
      <member name="commands"
              value="4"
              c:identifier="GLADE_DEBUG_COMMANDS"
              glib:nick="commands">
      </member>
      <member name="properties"
              value="8"
              c:identifier="GLADE_DEBUG_PROPERTIES"
              glib:nick="properties">
      </member>
      <member name="verify"
              value="16"
              c:identifier="GLADE_DEBUG_VERIFY"
              glib:nick="verify">
      </member>
    </bitfield>
    <callback name="DependsFunc" c:type="GladeDependsFunc">
      <doc xml:space="preserve">Checks whether @widget depends on @another to be placed earlier in
the glade file.</doc>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve">whether @widget depends on @another being parsed first in
the resulting glade file.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="adaptor" transfer-ownership="none">
          <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
          <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
        </parameter>
        <parameter name="widget" transfer-ownership="none">
          <doc xml:space="preserve">A #GladeWidget of the adaptor</doc>
          <type name="Widget" c:type="GladeWidget*"/>
        </parameter>
        <parameter name="another" transfer-ownership="none">
          <doc xml:space="preserve">another #GladeWidget</doc>
          <type name="Widget" c:type="GladeWidget*"/>
        </parameter>
      </parameters>
    </callback>
    <class name="DesignView"
           c:symbol-prefix="design_view"
           c:type="GladeDesignView"
           parent="Gtk.Box"
           glib:type-name="GladeDesignView"
           glib:get-type="glade_design_view_get_type"
           glib:type-struct="DesignViewClass">
      <implements name="Atk.ImplementorIface"/>
      <implements name="Gtk.Buildable"/>
      <implements name="Gtk.Orientable"/>
      <constructor name="new" c:identifier="glade_design_view_new">
        <return-value transfer-ownership="none">
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
        <parameters>
          <parameter name="project" transfer-ownership="none">
            <type name="Project" c:type="GladeProject*"/>
          </parameter>
        </parameters>
      </constructor>
      <function name="get_from_project"
                c:identifier="glade_design_view_get_from_project"
                introspectable="0">
        <return-value>
          <type name="DesignView" c:type="GladeDesignView*"/>
        </return-value>
        <parameters>
          <parameter name="project" transfer-ownership="none">
            <type name="Project" c:type="GladeProject*"/>
          </parameter>
        </parameters>
      </function>
      <method name="get_project"
              c:identifier="glade_design_view_get_project"
              introspectable="0">
        <return-value>
          <type name="Project" c:type="GladeProject*"/>
        </return-value>
        <parameters>
          <instance-parameter name="view" transfer-ownership="none">
            <type name="DesignView" c:type="GladeDesignView*"/>
          </instance-parameter>
        </parameters>
      </method>
      <property name="project"
                writable="1"
                construct-only="1"
                transfer-ownership="none">
        <type name="Project"/>
      </property>
      <field name="parent_instance">
        <type name="Gtk.Box" c:type="GtkBox"/>
      </field>
      <field name="priv">
        <type name="DesignViewPrivate" c:type="GladeDesignViewPrivate*"/>
      </field>
    </class>
    <record name="DesignViewClass"
            c:type="GladeDesignViewClass"
            glib:is-gtype-struct-for="DesignView">
      <field name="parent_class">
        <type name="Gtk.BoxClass" c:type="GtkBoxClass"/>
      </field>
      <field name="glade_reserved1">
        <callback name="glade_reserved1">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved2">
        <callback name="glade_reserved2">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved3">
        <callback name="glade_reserved3">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved4">
        <callback name="glade_reserved4">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
    </record>
    <record name="DesignViewPrivate"
            c:type="GladeDesignViewPrivate"
            disguised="1">
    </record>
    <callback name="DestroyObjectFunc" c:type="GladeDestroyObjectFunc">
      <doc xml:space="preserve">This function is called to break any additional references to
a GObject instance. Note that this function is not responsible
for calling g_object_unref() on @object, the reference count
of @object belongs to it's #GladeWidget wrapper.

The #GtkWidget adaptor will call gtk_widget_destroy() before
chaining up in this function.

If your adaptor adds any references in any way at
#GladePostCreateFunc time or #GladeConstructObjectFunc
time, then this function must be implemented to also
remove that reference.</doc>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="adaptor" transfer-ownership="none">
          <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
          <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
        </parameter>
        <parameter name="object" transfer-ownership="none">
          <doc xml:space="preserve">The object to destroy</doc>
          <type name="GObject.Object" c:type="GObject*"/>
        </parameter>
      </parameters>
    </callback>
    <constant name="ENV_BUNDLED"
              value="GLADE_BUNDLED"
              c:type="GLADE_ENV_BUNDLED">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="ENV_CATALOG_PATH"
              value="GLADE_CATALOG_SEARCH_PATH"
              c:type="GLADE_ENV_CATALOG_PATH">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="ENV_ICON_THEME_PATH"
              value="GLADE_ICON_THEME_PATH"
              c:type="GLADE_ENV_ICON_THEME_PATH">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="ENV_MODULE_PATH"
              value="GLADE_MODULE_SEARCH_PATH"
              c:type="GLADE_ENV_MODULE_PATH">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="ENV_PIXMAP_DIR"
              value="GLADE_PIXMAP_DIR"
              c:type="GLADE_ENV_PIXMAP_DIR">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="ENV_TESTING"
              value="GLADE_TESTING"
              c:type="GLADE_ENV_TESTING">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <class name="EPropBool"
           c:symbol-prefix="eprop_bool"
           parent="EditorProperty"
           glib:type-name="GladeEPropBool"
           glib:get-type="glade_eprop_bool_get_type">
      <implements name="Atk.ImplementorIface"/>
      <implements name="Editable"/>
      <implements name="Gtk.Buildable"/>
      <implements name="Gtk.Orientable"/>
    </class>
    <class name="EPropCheck"
           c:symbol-prefix="eprop_check"
           parent="EditorProperty"
           glib:type-name="GladeEPropCheck"
           glib:get-type="glade_eprop_check_get_type">
      <implements name="Atk.ImplementorIface"/>
      <implements name="Editable"/>
      <implements name="Gtk.Buildable"/>
      <implements name="Gtk.Orientable"/>
    </class>
    <class name="EPropColor"
           c:symbol-prefix="eprop_color"
           parent="EditorProperty"
           glib:type-name="GladeEPropColor"
           glib:get-type="glade_eprop_color_get_type">
      <implements name="Atk.ImplementorIface"/>
      <implements name="Editable"/>
      <implements name="Gtk.Buildable"/>
      <implements name="Gtk.Orientable"/>
    </class>
    <class name="EPropEnum"
           c:symbol-prefix="eprop_enum"
           parent="EditorProperty"
           glib:type-name="GladeEPropEnum"
           glib:get-type="glade_eprop_enum_get_type">
      <implements name="Atk.ImplementorIface"/>
      <implements name="Editable"/>
      <implements name="Gtk.Buildable"/>
      <implements name="Gtk.Orientable"/>
    </class>
    <class name="EPropFlags"
           c:symbol-prefix="eprop_flags"
           parent="EditorProperty"
           glib:type-name="GladeEPropFlags"
           glib:get-type="glade_eprop_flags_get_type">
      <implements name="Atk.ImplementorIface"/>
      <implements name="Editable"/>
      <implements name="Gtk.Buildable"/>
      <implements name="Gtk.Orientable"/>
    </class>
    <class name="EPropNamedIcon"
           c:symbol-prefix="eprop_named_icon"
           parent="EditorProperty"
           glib:type-name="GladeEPropNamedIcon"
           glib:get-type="glade_eprop_named_icon_get_type">
      <implements name="Atk.ImplementorIface"/>
      <implements name="Editable"/>
      <implements name="Gtk.Buildable"/>
      <implements name="Gtk.Orientable"/>
    </class>
    <class name="EPropNumeric"
           c:symbol-prefix="eprop_numeric"
           parent="EditorProperty"
           glib:type-name="GladeEPropNumeric"
           glib:get-type="glade_eprop_numeric_get_type">
      <implements name="Atk.ImplementorIface"/>
      <implements name="Editable"/>
      <implements name="Gtk.Buildable"/>
      <implements name="Gtk.Orientable"/>
    </class>
    <class name="EPropObject"
           c:symbol-prefix="eprop_object"
           parent="EditorProperty"
           glib:type-name="GladeEPropObject"
           glib:get-type="glade_eprop_object_get_type">
      <implements name="Atk.ImplementorIface"/>
      <implements name="Editable"/>
      <implements name="Gtk.Buildable"/>
      <implements name="Gtk.Orientable"/>
    </class>
    <class name="EPropObjects"
           c:symbol-prefix="eprop_objects"
           parent="EditorProperty"
           glib:type-name="GladeEPropObjects"
           glib:get-type="glade_eprop_objects_get_type">
      <implements name="Atk.ImplementorIface"/>
      <implements name="Editable"/>
      <implements name="Gtk.Buildable"/>
      <implements name="Gtk.Orientable"/>
    </class>
    <class name="EPropText"
           c:symbol-prefix="eprop_text"
           parent="EditorProperty"
           glib:type-name="GladeEPropText"
           glib:get-type="glade_eprop_text_get_type">
      <implements name="Atk.ImplementorIface"/>
      <implements name="Editable"/>
      <implements name="Gtk.Buildable"/>
      <implements name="Gtk.Orientable"/>
    </class>
    <class name="EPropUnichar"
           c:symbol-prefix="eprop_unichar"
           parent="EditorProperty"
           glib:type-name="GladeEPropUnichar"
           glib:get-type="glade_eprop_unichar_get_type">
      <implements name="Atk.ImplementorIface"/>
      <implements name="Editable"/>
      <implements name="Gtk.Buildable"/>
      <implements name="Gtk.Orientable"/>
    </class>
    <interface name="Editable"
               c:symbol-prefix="editable"
               c:type="GladeEditable"
               glib:type-name="GladeEditable"
               glib:get-type="glade_editable_get_type"
               glib:type-struct="EditableIface">
      <prerequisite name="Gtk.Widget"/>
      <virtual-method name="load" invoker="load">
        <doc xml:space="preserve">Loads @widget property values into @editable
(the editable will watch the widgets properties
until its loaded with another widget or %NULL)</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="editable" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeEditable</doc>
            <type name="Editable" c:type="GladeEditable*"/>
          </instance-parameter>
          <parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">the #GladeWidget to load</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="set_show_name" invoker="set_show_name">
        <doc xml:space="preserve">This only applies for the general page in the property
editor, editables that embed the #GladeEditorTable implementation
for the general page should use this to forward the message
to its embedded editable.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="editable" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeEditable</doc>
            <type name="Editable" c:type="GladeEditable*"/>
          </instance-parameter>
          <parameter name="show_name" transfer-ownership="none">
            <doc xml:space="preserve">Whether or not to show the name entry</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </virtual-method>
      <method name="block" c:identifier="glade_editable_block">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="editable" transfer-ownership="none">
            <type name="Editable" c:type="GladeEditable*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="load" c:identifier="glade_editable_load">
        <doc xml:space="preserve">Loads @widget property values into @editable
(the editable will watch the widgets properties
until its loaded with another widget or %NULL)</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="editable" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeEditable</doc>
            <type name="Editable" c:type="GladeEditable*"/>
          </instance-parameter>
          <parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">the #GladeWidget to load</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
        </parameters>
      </method>
      <method name="loaded_widget"
              c:identifier="glade_editable_loaded_widget"
              introspectable="0">
        <return-value>
          <type name="Widget" c:type="GladeWidget*"/>
        </return-value>
        <parameters>
          <instance-parameter name="editable" transfer-ownership="none">
            <type name="Editable" c:type="GladeEditable*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="loading" c:identifier="glade_editable_loading">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="editable" transfer-ownership="none">
            <type name="Editable" c:type="GladeEditable*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_show_name" c:identifier="glade_editable_set_show_name">
        <doc xml:space="preserve">This only applies for the general page in the property
editor, editables that embed the #GladeEditorTable implementation
for the general page should use this to forward the message
to its embedded editable.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="editable" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeEditable</doc>
            <type name="Editable" c:type="GladeEditable*"/>
          </instance-parameter>
          <parameter name="show_name" transfer-ownership="none">
            <doc xml:space="preserve">Whether or not to show the name entry</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="unblock" c:identifier="glade_editable_unblock">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="editable" transfer-ownership="none">
            <type name="Editable" c:type="GladeEditable*"/>
          </instance-parameter>
        </parameters>
      </method>
    </interface>
    <record name="EditableIface"
            c:type="GladeEditableIface"
            glib:is-gtype-struct-for="Editable">
      <field name="g_iface">
        <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
      </field>
      <field name="load">
        <callback name="load">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="editable" transfer-ownership="none">
              <doc xml:space="preserve">A #GladeEditable</doc>
              <type name="Editable" c:type="GladeEditable*"/>
            </parameter>
            <parameter name="widget" transfer-ownership="none">
              <doc xml:space="preserve">the #GladeWidget to load</doc>
              <type name="Widget" c:type="GladeWidget*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="set_show_name">
        <callback name="set_show_name">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="editable" transfer-ownership="none">
              <doc xml:space="preserve">A #GladeEditable</doc>
              <type name="Editable" c:type="GladeEditable*"/>
            </parameter>
            <parameter name="show_name" transfer-ownership="none">
              <doc xml:space="preserve">Whether or not to show the name entry</doc>
              <type name="gboolean" c:type="gboolean"/>
            </parameter>
          </parameters>
        </callback>
      </field>
    </record>
    <record name="EditableInterface" c:type="GladeEditableInterface">
      <field name="g_iface">
        <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
      </field>
      <field name="load">
        <callback name="load">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="editable" transfer-ownership="none">
              <doc xml:space="preserve">A #GladeEditable</doc>
              <type name="Editable" c:type="GladeEditable*"/>
            </parameter>
            <parameter name="widget" transfer-ownership="none">
              <doc xml:space="preserve">the #GladeWidget to load</doc>
              <type name="Widget" c:type="GladeWidget*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="set_show_name">
        <callback name="set_show_name">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="editable" transfer-ownership="none">
              <doc xml:space="preserve">A #GladeEditable</doc>
              <type name="Editable" c:type="GladeEditable*"/>
            </parameter>
            <parameter name="show_name" transfer-ownership="none">
              <doc xml:space="preserve">Whether or not to show the name entry</doc>
              <type name="gboolean" c:type="gboolean"/>
            </parameter>
          </parameters>
        </callback>
      </field>
    </record>
    <class name="Editor"
           c:symbol-prefix="editor"
           c:type="GladeEditor"
           parent="Gtk.Box"
           glib:type-name="GladeEditor"
           glib:get-type="glade_editor_get_type"
           glib:type-struct="EditorClass">
      <implements name="Atk.ImplementorIface"/>
      <implements name="Gtk.Buildable"/>
      <implements name="Gtk.Orientable"/>
      <constructor name="new" c:identifier="glade_editor_new">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">a new #GladeEditor</doc>
          <type name="Editor" c:type="GladeEditor*"/>
        </return-value>
      </constructor>
      <function name="dialog_for_widget"
                c:identifier="glade_editor_dialog_for_widget"
                introspectable="0">
        <doc xml:space="preserve">This convenience function creates a new dialog window to edit @widget
specifically.</doc>
        <return-value>
          <doc xml:space="preserve">the newly created dialog window</doc>
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
        <parameters>
          <parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
        </parameters>
      </function>
      <function name="query_dialog" c:identifier="glade_editor_query_dialog">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <parameter name="widget" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
        </parameters>
      </function>
      <function name="reset_dialog_run"
                c:identifier="glade_editor_reset_dialog_run">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="parent" transfer-ownership="none">
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
          <parameter name="gwidget" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
        </parameters>
      </function>
      <method name="hide_class_field"
              c:identifier="glade_editor_hide_class_field">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="editor" transfer-ownership="none">
            <type name="Editor" c:type="GladeEditor*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="hide_info" c:identifier="glade_editor_hide_info">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="editor" transfer-ownership="none">
            <type name="Editor" c:type="GladeEditor*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="load_widget" c:identifier="glade_editor_load_widget">
        <doc xml:space="preserve">Load @widget into @editor. If @widget is %NULL, clear the editor.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="editor" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeEditor</doc>
            <type name="Editor" c:type="GladeEditor*"/>
          </instance-parameter>
          <parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
        </parameters>
      </method>
      <method name="show_class_field"
              c:identifier="glade_editor_show_class_field">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="editor" transfer-ownership="none">
            <type name="Editor" c:type="GladeEditor*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="show_info" c:identifier="glade_editor_show_info">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="editor" transfer-ownership="none">
            <type name="Editor" c:type="GladeEditor*"/>
          </instance-parameter>
        </parameters>
      </method>
      <property name="class-field" transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="show-class-field" writable="1" transfer-ownership="none">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="show-info" transfer-ownership="none">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="widget" writable="1" transfer-ownership="none">
        <type name="Widget"/>
      </property>
      <field name="vbox">
        <type name="Gtk.Box" c:type="GtkBox"/>
      </field>
      <field name="priv">
        <type name="EditorPrivate" c:type="GladeEditorPrivate*"/>
      </field>
    </class>
    <record name="EditorClass"
            c:type="GladeEditorClass"
            glib:is-gtype-struct-for="Editor">
      <field name="parent_class">
        <type name="Gtk.BoxClass" c:type="GtkBoxClass"/>
      </field>
      <field name="glade_reserved1">
        <callback name="glade_reserved1">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved2">
        <callback name="glade_reserved2">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved3">
        <callback name="glade_reserved3">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved4">
        <callback name="glade_reserved4">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
    </record>
    <enumeration name="EditorPageType"
                 glib:type-name="GladeEditorPageType"
                 glib:get-type="glade_editor_page_type_get_type"
                 c:type="GladeEditorPageType">
      <member name="general"
              value="0"
              c:identifier="GLADE_PAGE_GENERAL"
              glib:nick="general">
      </member>
      <member name="common"
              value="1"
              c:identifier="GLADE_PAGE_COMMON"
              glib:nick="common">
      </member>
      <member name="packing"
              value="2"
              c:identifier="GLADE_PAGE_PACKING"
              glib:nick="packing">
      </member>
      <member name="atk"
              value="3"
              c:identifier="GLADE_PAGE_ATK"
              glib:nick="atk">
      </member>
      <member name="query"
              value="4"
              c:identifier="GLADE_PAGE_QUERY"
              glib:nick="query">
      </member>
      <member name="signal"
              value="5"
              c:identifier="GLADE_PAGE_SIGNAL"
              glib:nick="signal">
      </member>
    </enumeration>
    <record name="EditorPrivate" c:type="GladeEditorPrivate" disguised="1">
    </record>
    <class name="EditorProperty"
           c:symbol-prefix="editor_property"
           c:type="GladeEditorProperty"
           parent="Gtk.Box"
           glib:type-name="GladeEditorProperty"
           glib:get-type="glade_editor_property_get_type"
           glib:type-struct="EditorPropertyClass">
      <implements name="Atk.ImplementorIface"/>
      <implements name="Editable"/>
      <implements name="Gtk.Buildable"/>
      <implements name="Gtk.Orientable"/>
      <function name="show_i18n_dialog"
                c:identifier="glade_editor_property_show_i18n_dialog">
        <doc xml:space="preserve">Runs a dialog and updates the provided values.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">%TRUE if OK was selected.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <parameter name="parent" transfer-ownership="none">
            <doc xml:space="preserve">The parent widget for the dialog.</doc>
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
          <parameter name="text" transfer-ownership="none">
            <doc xml:space="preserve">A read/write pointer to the text property</doc>
            <type name="utf8" c:type="gchar**"/>
          </parameter>
          <parameter name="context" transfer-ownership="none">
            <doc xml:space="preserve">A read/write pointer to the translation context</doc>
            <type name="utf8" c:type="gchar**"/>
          </parameter>
          <parameter name="comment" transfer-ownership="none">
            <doc xml:space="preserve">A read/write pointer to the translator comment</doc>
            <type name="utf8" c:type="gchar**"/>
          </parameter>
          <parameter name="translatable" transfer-ownership="none">
            <doc xml:space="preserve">A read/write pointer to the translatable setting]</doc>
            <type name="gboolean" c:type="gboolean*"/>
          </parameter>
        </parameters>
      </function>
      <function name="show_object_dialog"
                c:identifier="glade_editor_property_show_object_dialog">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <parameter name="project" transfer-ownership="none">
            <type name="Project" c:type="GladeProject*"/>
          </parameter>
          <parameter name="title" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="parent" transfer-ownership="none">
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
          <parameter name="object_type" transfer-ownership="none">
            <type name="GType" c:type="GType"/>
          </parameter>
          <parameter name="exception" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
          <parameter name="object" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget**"/>
          </parameter>
        </parameters>
      </function>
      <function name="show_resource_dialog"
                c:identifier="glade_editor_property_show_resource_dialog">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <parameter name="project" transfer-ownership="none">
            <type name="Project" c:type="GladeProject*"/>
          </parameter>
          <parameter name="parent" transfer-ownership="none">
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
          <parameter name="filename" transfer-ownership="none">
            <type name="utf8" c:type="gchar**"/>
          </parameter>
        </parameters>
      </function>
      <virtual-method name="changed">
        <return-value transfer-ownership="none" nullable="1">
          <type name="gpointer" c:type="void*"/>
        </return-value>
        <parameters>
          <instance-parameter name="arg0" transfer-ownership="none">
            <type name="EditorProperty" c:type="GladeEditorProperty*"/>
          </instance-parameter>
          <parameter name="arg1" transfer-ownership="none">
            <type name="Property" c:type="GladeProperty*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="commit" invoker="commit">
        <doc xml:space="preserve">Commits @value to the property currently being edited by @eprop.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="arg0" transfer-ownership="none">
            <type name="EditorProperty" c:type="GladeEditorProperty*"/>
          </instance-parameter>
          <parameter name="arg1" transfer-ownership="none">
            <type name="GObject.Value" c:type="GValue*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="create_input" introspectable="0">
        <return-value>
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
        <parameters>
          <instance-parameter name="arg0" transfer-ownership="none">
            <type name="EditorProperty" c:type="GladeEditorProperty*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="load" invoker="load">
        <doc xml:space="preserve">Loads @property values into @eprop and connects.
(the editor property will watch the property's value
until its loaded with another property or %NULL)</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="arg0" transfer-ownership="none">
            <type name="EditorProperty" c:type="GladeEditorProperty*"/>
          </instance-parameter>
          <parameter name="arg1" transfer-ownership="none">
            <type name="Property" c:type="GladeProperty*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <method name="commit" c:identifier="glade_editor_property_commit">
        <doc xml:space="preserve">Commits @value to the property currently being edited by @eprop.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="eprop" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeEditorProperty</doc>
            <type name="EditorProperty" c:type="GladeEditorProperty*"/>
          </instance-parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve">The #GValue to commit</doc>
            <type name="GObject.Value" c:type="GValue*"/>
          </parameter>
        </parameters>
      </method>
      <method name="commit_no_callback"
              c:identifier="glade_editor_property_commit_no_callback">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="eprop" transfer-ownership="none">
            <type name="EditorProperty" c:type="GladeEditorProperty*"/>
          </instance-parameter>
          <parameter name="value" transfer-ownership="none">
            <type name="GObject.Value" c:type="GValue*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_custom_text"
              c:identifier="glade_editor_property_get_custom_text">
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="eprop" transfer-ownership="none">
            <type name="EditorProperty" c:type="GladeEditorProperty*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_disable_check"
              c:identifier="glade_editor_property_get_disable_check">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="eprop" transfer-ownership="none">
            <type name="EditorProperty" c:type="GladeEditorProperty*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_item_label"
              c:identifier="glade_editor_property_get_item_label"
              introspectable="0">
        <return-value>
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
        <parameters>
          <instance-parameter name="eprop" transfer-ownership="none">
            <type name="EditorProperty" c:type="GladeEditorProperty*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_pclass"
              c:identifier="glade_editor_property_get_pclass"
              introspectable="0">
        <return-value>
          <type name="PropertyClass" c:type="GladePropertyClass*"/>
        </return-value>
        <parameters>
          <instance-parameter name="eprop" transfer-ownership="none">
            <type name="EditorProperty" c:type="GladeEditorProperty*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_property"
              c:identifier="glade_editor_property_get_property"
              introspectable="0">
        <return-value>
          <type name="Property" c:type="GladeProperty*"/>
        </return-value>
        <parameters>
          <instance-parameter name="eprop" transfer-ownership="none">
            <type name="EditorProperty" c:type="GladeEditorProperty*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="load" c:identifier="glade_editor_property_load">
        <doc xml:space="preserve">Loads @property values into @eprop and connects.
(the editor property will watch the property's value
until its loaded with another property or %NULL)</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="eprop" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeEditorProperty</doc>
            <type name="EditorProperty" c:type="GladeEditorProperty*"/>
          </instance-parameter>
          <parameter name="property" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeProperty</doc>
            <type name="Property" c:type="GladeProperty*"/>
          </parameter>
        </parameters>
      </method>
      <method name="load_by_widget"
              c:identifier="glade_editor_property_load_by_widget">
        <doc xml:space="preserve">Convenience function to load the appropriate #GladeProperty into
@eprop from @widget</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="eprop" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeEditorProperty</doc>
            <type name="EditorProperty" c:type="GladeEditorProperty*"/>
          </instance-parameter>
          <parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
        </parameters>
      </method>
      <method name="loading" c:identifier="glade_editor_property_loading">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="eprop" transfer-ownership="none">
            <type name="EditorProperty" c:type="GladeEditorProperty*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_custom_text"
              c:identifier="glade_editor_property_set_custom_text">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="eprop" transfer-ownership="none">
            <type name="EditorProperty" c:type="GladeEditorProperty*"/>
          </instance-parameter>
          <parameter name="custom_text" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_disable_check"
              c:identifier="glade_editor_property_set_disable_check">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="eprop" transfer-ownership="none">
            <type name="EditorProperty" c:type="GladeEditorProperty*"/>
          </instance-parameter>
          <parameter name="disable_check" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <property name="custom-text" writable="1" transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="disable-check"
                writable="1"
                construct="1"
                transfer-ownership="none">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="property-class"
                writable="1"
                construct-only="1"
                transfer-ownership="none">
        <type name="gpointer" c:type="gpointer"/>
      </property>
      <property name="use-command" writable="1" transfer-ownership="none">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <field name="parent_instance">
        <type name="Gtk.Box" c:type="GtkBox"/>
      </field>
      <field name="priv">
        <type name="EditorPropertyPrivate"
              c:type="GladeEditorPropertyPrivate*"/>
      </field>
      <glib:signal name="commit" when="last">
        <doc xml:space="preserve">Emitted when a property's value is committed, can be useful to serialize
commands before and after the property's commit command from custom editors.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="arg1"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve">the new #GValue to commit.</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="value-changed" when="last">
        <doc xml:space="preserve">Emitted when a contained property changes value</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="arg1" transfer-ownership="none">
            <doc xml:space="preserve">the #GladeProperty that's value changed.</doc>
            <type name="Property"/>
          </parameter>
        </parameters>
      </glib:signal>
    </class>
    <record name="EditorPropertyClass"
            c:type="GladeEditorPropertyClass"
            glib:is-gtype-struct-for="EditorProperty">
      <field name="parent_class">
        <type name="Gtk.BoxClass" c:type="GtkBoxClass"/>
      </field>
      <field name="load">
        <callback name="load">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="arg0" transfer-ownership="none">
              <type name="EditorProperty" c:type="GladeEditorProperty*"/>
            </parameter>
            <parameter name="arg1" transfer-ownership="none">
              <type name="Property" c:type="GladeProperty*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="create_input" introspectable="0">
        <callback name="create_input" introspectable="0">
          <return-value>
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </return-value>
          <parameters>
            <parameter name="arg0" transfer-ownership="none">
              <type name="EditorProperty" c:type="GladeEditorProperty*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="commit">
        <callback name="commit">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="arg0" transfer-ownership="none">
              <type name="EditorProperty" c:type="GladeEditorProperty*"/>
            </parameter>
            <parameter name="arg1" transfer-ownership="none">
              <type name="GObject.Value" c:type="GValue*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="changed">
        <callback name="changed">
          <return-value transfer-ownership="none" nullable="1">
            <type name="gpointer" c:type="void*"/>
          </return-value>
          <parameters>
            <parameter name="arg0" transfer-ownership="none">
              <type name="EditorProperty" c:type="GladeEditorProperty*"/>
            </parameter>
            <parameter name="arg1" transfer-ownership="none">
              <type name="Property" c:type="GladeProperty*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="glade_reserved1">
        <callback name="glade_reserved1">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved2">
        <callback name="glade_reserved2">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved3">
        <callback name="glade_reserved3">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved4">
        <callback name="glade_reserved4">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
    </record>
    <record name="EditorPropertyPrivate"
            c:type="GladeEditorPropertyPrivate"
            disguised="1">
    </record>
    <class name="EditorSkeleton"
           c:symbol-prefix="editor_skeleton"
           c:type="GladeEditorSkeleton"
           parent="Gtk.Box"
           glib:type-name="GladeEditorSkeleton"
           glib:get-type="glade_editor_skeleton_get_type"
           glib:type-struct="EditorSkeletonClass">
      <implements name="Atk.ImplementorIface"/>
      <implements name="Editable"/>
      <implements name="Gtk.Buildable"/>
      <implements name="Gtk.Orientable"/>
      <constructor name="new" c:identifier="glade_editor_skeleton_new">
        <return-value transfer-ownership="none">
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
      </constructor>
      <method name="add_editor"
              c:identifier="glade_editor_skeleton_add_editor">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="skeleton" transfer-ownership="none">
            <type name="EditorSkeleton" c:type="GladeEditorSkeleton*"/>
          </instance-parameter>
          <parameter name="editor" transfer-ownership="none">
            <type name="Editable" c:type="GladeEditable*"/>
          </parameter>
        </parameters>
      </method>
      <field name="box" readable="0" private="1">
        <type name="Gtk.Box" c:type="GtkBox"/>
      </field>
      <field name="priv" readable="0" private="1">
        <type name="EditorSkeletonPrivate"
              c:type="GladeEditorSkeletonPrivate*"/>
      </field>
    </class>
    <record name="EditorSkeletonClass"
            c:type="GladeEditorSkeletonClass"
            glib:is-gtype-struct-for="EditorSkeleton">
      <field name="parent_class">
        <type name="Gtk.BoxClass" c:type="GtkBoxClass"/>
      </field>
    </record>
    <record name="EditorSkeletonPrivate"
            c:type="GladeEditorSkeletonPrivate"
            disguised="1">
    </record>
    <class name="EditorTable"
           c:symbol-prefix="editor_table"
           c:type="GladeEditorTable"
           parent="Gtk.Grid"
           glib:type-name="GladeEditorTable"
           glib:get-type="glade_editor_table_get_type"
           glib:type-struct="EditorTableClass">
      <implements name="Atk.ImplementorIface"/>
      <implements name="Editable"/>
      <implements name="Gtk.Buildable"/>
      <implements name="Gtk.Orientable"/>
      <constructor name="new" c:identifier="glade_editor_table_new">
        <doc xml:space="preserve">Creates a new #GladeEditorTable.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">a new #GladeEditorTable</doc>
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
        <parameters>
          <parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </parameter>
          <parameter name="type" transfer-ownership="none">
            <doc xml:space="preserve">The #GladeEditorPageType</doc>
            <type name="EditorPageType" c:type="GladeEditorPageType"/>
          </parameter>
        </parameters>
      </constructor>
      <property name="page-type"
                readable="0"
                writable="1"
                construct-only="1"
                transfer-ownership="none">
        <type name="EditorPageType"/>
      </property>
      <field name="parent">
        <type name="Gtk.Grid" c:type="GtkGrid"/>
      </field>
      <field name="priv">
        <type name="EditorTablePrivate" c:type="GladeEditorTablePrivate*"/>
      </field>
    </class>
    <record name="EditorTableClass"
            c:type="GladeEditorTableClass"
            glib:is-gtype-struct-for="EditorTable">
      <field name="parent">
        <type name="Gtk.GridClass" c:type="GtkGridClass"/>
      </field>
      <field name="glade_reserved1">
        <callback name="glade_reserved1">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved2">
        <callback name="glade_reserved2">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved3">
        <callback name="glade_reserved3">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved4">
        <callback name="glade_reserved4">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
    </record>
    <record name="EditorTablePrivate"
            c:type="GladeEditorTablePrivate"
            disguised="1">
    </record>
    <glib:boxed glib:name="GList"
                c:symbol-prefix="glist"
                glib:type-name="GladeGList"
                glib:get-type="glade_glist_get_type">
    </glib:boxed>
    <constant name="GTKBUILDER_VERSIONING_BASE_MAJOR"
              value="2"
              c:type="GLADE_GTKBUILDER_VERSIONING_BASE_MAJOR">
      <type name="gint" c:type="gint"/>
    </constant>
    <constant name="GTKBUILDER_VERSIONING_BASE_MINOR"
              value="14"
              c:type="GLADE_GTKBUILDER_VERSIONING_BASE_MINOR">
      <type name="gint" c:type="gint"/>
    </constant>
    <callback name="GetChildrenFunc"
              c:type="GladeGetChildrenFunc"
              introspectable="0">
      <doc xml:space="preserve">A function called to get @containers children.</doc>
      <return-value>
        <doc xml:space="preserve">A #GList of children</doc>
        <type name="GLib.List" c:type="GList*">
          <type name="gpointer" c:type="gpointer"/>
        </type>
      </return-value>
      <parameters>
        <parameter name="adaptor" transfer-ownership="none">
          <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
          <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
        </parameter>
        <parameter name="container" transfer-ownership="none">
          <doc xml:space="preserve">The #GObject container</doc>
          <type name="GObject.Object" c:type="GObject*"/>
        </parameter>
      </parameters>
    </callback>
    <callback name="GetInternalFunc"
              c:type="GladeGetInternalFunc"
              introspectable="0">
      <doc xml:space="preserve">Called to lookup @child in composite object @parent by @name.</doc>
      <return-value>
        <doc xml:space="preserve">The internal #GObject</doc>
        <type name="GObject.Object" c:type="GObject*"/>
      </return-value>
      <parameters>
        <parameter name="adaptor" transfer-ownership="none">
          <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
          <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
        </parameter>
        <parameter name="parent" transfer-ownership="none">
          <doc xml:space="preserve">A #GObject composite object</doc>
          <type name="GObject.Object" c:type="GObject*"/>
        </parameter>
        <parameter name="name" transfer-ownership="none">
          <doc xml:space="preserve">A string identifier</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </callback>
    <callback name="GetPropertyFunc" c:type="GladeGetPropertyFunc">
      <doc xml:space="preserve">Gets @value on @object for a given #GladePropertyClass</doc>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="adaptor" transfer-ownership="none">
          <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
          <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
        </parameter>
        <parameter name="object" transfer-ownership="none">
          <doc xml:space="preserve">The #GObject</doc>
          <type name="GObject.Object" c:type="GObject*"/>
        </parameter>
        <parameter name="property_name" transfer-ownership="none">
          <doc xml:space="preserve">The property identifier</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="value" transfer-ownership="none">
          <doc xml:space="preserve">The #GValue</doc>
          <type name="GObject.Value" c:type="GValue*"/>
        </parameter>
      </parameters>
    </callback>
    <record name="IDAllocator" c:type="GladeIDAllocator" disguised="1">
      <method name="allocate" c:identifier="glade_id_allocator_allocate">
        <return-value transfer-ownership="none">
          <type name="guint" c:type="guint"/>
        </return-value>
        <parameters>
          <instance-parameter name="allocator" transfer-ownership="none">
            <type name="IDAllocator" c:type="GladeIDAllocator*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="destroy" c:identifier="glade_id_allocator_destroy">
        <doc xml:space="preserve">Frees @allocator and its associated memory</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="allocator" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeIDAllocator</doc>
            <type name="IDAllocator" c:type="GladeIDAllocator*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="release" c:identifier="glade_id_allocator_release">
        <doc xml:space="preserve">TODO: write me</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="allocator" transfer-ownership="none">
            <type name="IDAllocator" c:type="GladeIDAllocator*"/>
          </instance-parameter>
          <parameter name="id" transfer-ownership="none">
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </method>
      <function name="new"
                c:identifier="glade_id_allocator_new"
                introspectable="0">
        <return-value>
          <doc xml:space="preserve">a new #GladeIDAllocator</doc>
          <type name="IDAllocator" c:type="GladeIDAllocator*"/>
        </return-value>
      </function>
    </record>
    <class name="Inspector"
           c:symbol-prefix="inspector"
           c:type="GladeInspector"
           parent="Gtk.Box"
           glib:type-name="GladeInspector"
           glib:get-type="glade_inspector_get_type"
           glib:type-struct="InspectorClass">
      <doc xml:space="preserve">The #GladeInspector struct contains private data only, and should be manipulated using the functions below.</doc>
      <implements name="Atk.ImplementorIface"/>
      <implements name="Gtk.Buildable"/>
      <implements name="Gtk.Orientable"/>
      <constructor name="new" c:identifier="glade_inspector_new">
        <doc xml:space="preserve">Creates a new #GladeInspector</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">a new #GladeInspector</doc>
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
      </constructor>
      <constructor name="new_with_project"
                   c:identifier="glade_inspector_new_with_project">
        <doc xml:space="preserve">Creates a new #GladeInspector with @project</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">a new #GladeInspector</doc>
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
        <parameters>
          <parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProject</doc>
            <type name="Project" c:type="GladeProject*"/>
          </parameter>
        </parameters>
      </constructor>
      <virtual-method name="item_activated">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="inspector" transfer-ownership="none">
            <type name="Inspector" c:type="GladeInspector*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="selection_changed">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="inspector" transfer-ownership="none">
            <type name="Inspector" c:type="GladeInspector*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <method name="get_project"
              c:identifier="glade_inspector_get_project"
              introspectable="0">
        <doc xml:space="preserve">Note that the method does not ref the returned #GladeProject.</doc>
        <return-value>
          <doc xml:space="preserve">A #GladeProject</doc>
          <type name="Project" c:type="GladeProject*"/>
        </return-value>
        <parameters>
          <instance-parameter name="inspector" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeInspector</doc>
            <type name="Inspector" c:type="GladeInspector*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_selected_items"
              c:identifier="glade_inspector_get_selected_items"
              introspectable="0">
        <doc xml:space="preserve">Returns the selected items in the inspector.</doc>
        <return-value>
          <doc xml:space="preserve">A #GList</doc>
          <type name="GLib.List" c:type="GList*">
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="inspector" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeInspector</doc>
            <type name="Inspector" c:type="GladeInspector*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_project" c:identifier="glade_inspector_set_project">
        <doc xml:space="preserve">Sets the current project of @inspector to @project. To unset the current
project, pass %NULL for @project.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="inspector" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeInspector</doc>
            <type name="Inspector" c:type="GladeInspector*"/>
          </instance-parameter>
          <parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProject</doc>
            <type name="Project" c:type="GladeProject*"/>
          </parameter>
        </parameters>
      </method>
      <property name="project" writable="1" transfer-ownership="none">
        <type name="Project"/>
      </property>
      <field name="parent_instance">
        <type name="Gtk.Box" c:type="GtkBox"/>
      </field>
      <field name="priv">
        <type name="InspectorPrivate" c:type="GladeInspectorPrivate*"/>
      </field>
      <glib:signal name="item-activated" when="last">
        <doc xml:space="preserve">Emitted when a item is activated in the GladeInspector.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
      <glib:signal name="selection-changed" when="last">
        <doc xml:space="preserve">Emitted when the selection changes in the GladeInspector.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
    </class>
    <record name="InspectorClass"
            c:type="GladeInspectorClass"
            glib:is-gtype-struct-for="Inspector">
      <field name="parent_class">
        <type name="Gtk.BoxClass" c:type="GtkBoxClass"/>
      </field>
      <field name="selection_changed">
        <callback name="selection_changed">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="inspector" transfer-ownership="none">
              <type name="Inspector" c:type="GladeInspector*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="item_activated">
        <callback name="item_activated">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="inspector" transfer-ownership="none">
              <type name="Inspector" c:type="GladeInspector*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="glade_reserved1">
        <callback name="glade_reserved1">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved2">
        <callback name="glade_reserved2">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved3">
        <callback name="glade_reserved3">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved4">
        <callback name="glade_reserved4">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
    </record>
    <record name="InspectorPrivate"
            c:type="GladeInspectorPrivate"
            disguised="1">
    </record>
    <enumeration name="ItemAppearance"
                 glib:type-name="GladeItemAppearance"
                 glib:get-type="glade_item_appearance_get_type"
                 c:type="GladeItemAppearance">
      <member name="icon_and_label"
              value="0"
              c:identifier="GLADE_ITEM_ICON_AND_LABEL"
              glib:nick="icon-and-label">
      </member>
      <member name="icon_only"
              value="1"
              c:identifier="GLADE_ITEM_ICON_ONLY"
              glib:nick="icon-only">
      </member>
      <member name="label_only"
              value="2"
              c:identifier="GLADE_ITEM_LABEL_ONLY"
              glib:nick="label-only">
      </member>
    </enumeration>
    <record name="NameContext" c:type="GladeNameContext" disguised="1">
      <method name="add_name" c:identifier="glade_name_context_add_name">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="context" transfer-ownership="none">
            <type name="NameContext" c:type="GladeNameContext*"/>
          </instance-parameter>
          <parameter name="name" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="destroy" c:identifier="glade_name_context_destroy">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="context" transfer-ownership="none">
            <type name="NameContext" c:type="GladeNameContext*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="has_name" c:identifier="glade_name_context_has_name">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="context" transfer-ownership="none">
            <type name="NameContext" c:type="GladeNameContext*"/>
          </instance-parameter>
          <parameter name="name" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="n_names" c:identifier="glade_name_context_n_names">
        <return-value transfer-ownership="none">
          <type name="guint" c:type="guint"/>
        </return-value>
        <parameters>
          <instance-parameter name="context" transfer-ownership="none">
            <type name="NameContext" c:type="GladeNameContext*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="new_name" c:identifier="glade_name_context_new_name">
        <return-value transfer-ownership="full">
          <type name="utf8" c:type="gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="context" transfer-ownership="none">
            <type name="NameContext" c:type="GladeNameContext*"/>
          </instance-parameter>
          <parameter name="base_name" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="release_name"
              c:identifier="glade_name_context_release_name">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="context" transfer-ownership="none">
            <type name="NameContext" c:type="GladeNameContext*"/>
          </instance-parameter>
          <parameter name="name" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <function name="new"
                c:identifier="glade_name_context_new"
                introspectable="0">
        <return-value>
          <type name="NameContext" c:type="GladeNameContext*"/>
        </return-value>
      </function>
    </record>
    <class name="NamedIconChooserDialog"
           c:symbol-prefix="named_icon_chooser_dialog"
           c:type="GladeNamedIconChooserDialog"
           parent="Gtk.Dialog"
           glib:type-name="GladeNamedIconChooserDialog"
           glib:get-type="glade_named_icon_chooser_dialog_get_type"
           glib:type-struct="NamedIconChooserDialogClass">
      <implements name="Atk.ImplementorIface"/>
      <implements name="Gtk.Buildable"/>
      <constructor name="new"
                   c:identifier="glade_named_icon_chooser_dialog_new"
                   introspectable="0">
        <doc xml:space="preserve">Creates a new #GladeNamedIconChooserDialog.  This function is analogous to
gtk_dialog_new_with_buttons().</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">a new #GladeNamedIconChooserDialog</doc>
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
        <parameters>
          <parameter name="title" transfer-ownership="none">
            <doc xml:space="preserve">Title of the dialog, or %NULL</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="parent" transfer-ownership="none">
            <doc xml:space="preserve">Transient parent of the dialog, or %NULL,</doc>
            <type name="Gtk.Window" c:type="GtkWindow*"/>
          </parameter>
          <parameter name="first_button_text" transfer-ownership="none">
            <doc xml:space="preserve">stock ID or text to go in the first button, or %NULL</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="..." transfer-ownership="none">
            <doc xml:space="preserve">response ID for the first button, then additional (button, id)
  pairs, ending with %NULL</doc>
            <varargs/>
          </parameter>
        </parameters>
      </constructor>
      <virtual-method name="icon_activated">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="dialog" transfer-ownership="none">
            <type name="NamedIconChooserDialog"
                  c:type="GladeNamedIconChooserDialog*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="selection_changed">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="dialog" transfer-ownership="none">
            <type name="NamedIconChooserDialog"
                  c:type="GladeNamedIconChooserDialog*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <method name="get_context"
              c:identifier="glade_named_icon_chooser_dialog_get_context">
        <return-value transfer-ownership="full">
          <type name="utf8" c:type="gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="chooser" transfer-ownership="none">
            <type name="NamedIconChooserDialog"
                  c:type="GladeNamedIconChooserDialog*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_icon_name"
              c:identifier="glade_named_icon_chooser_dialog_get_icon_name">
        <return-value transfer-ownership="full">
          <type name="utf8" c:type="gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="chooser" transfer-ownership="none">
            <type name="NamedIconChooserDialog"
                  c:type="GladeNamedIconChooserDialog*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_context"
              c:identifier="glade_named_icon_chooser_dialog_set_context">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="chooser" transfer-ownership="none">
            <type name="NamedIconChooserDialog"
                  c:type="GladeNamedIconChooserDialog*"/>
          </instance-parameter>
          <parameter name="context" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_icon_name"
              c:identifier="glade_named_icon_chooser_dialog_set_icon_name">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="chooser" transfer-ownership="none">
            <type name="NamedIconChooserDialog"
                  c:type="GladeNamedIconChooserDialog*"/>
          </instance-parameter>
          <parameter name="icon_name" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <field name="parent_instance">
        <type name="Gtk.Dialog" c:type="GtkDialog"/>
      </field>
      <field name="priv">
        <type name="NamedIconChooserDialogPrivate"
              c:type="GladeNamedIconChooserDialogPrivate*"/>
      </field>
      <glib:signal name="icon-activated" when="last">
        <doc xml:space="preserve">This signal is emitted when the user "activates" an icon
in the named icon chooser.  This can happen by double-clicking on an item
in the recently used resources list, or by pressing
&lt;keycap&gt;Enter&lt;/keycap&gt;.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
      <glib:signal name="selection-changed" when="last">
        <doc xml:space="preserve">This signal is emitted when there is a change in the set of
selected icon names.  This can happen when a user
modifies the selection with the mouse or the keyboard, or when
explicitely calling functions to change the selection.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
    </class>
    <record name="NamedIconChooserDialogClass"
            c:type="GladeNamedIconChooserDialogClass"
            glib:is-gtype-struct-for="NamedIconChooserDialog">
      <field name="parent_class">
        <type name="Gtk.DialogClass" c:type="GtkDialogClass"/>
      </field>
      <field name="icon_activated">
        <callback name="icon_activated">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="dialog" transfer-ownership="none">
              <type name="NamedIconChooserDialog"
                    c:type="GladeNamedIconChooserDialog*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="selection_changed">
        <callback name="selection_changed">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="dialog" transfer-ownership="none">
              <type name="NamedIconChooserDialog"
                    c:type="GladeNamedIconChooserDialog*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="glade_reserved1">
        <callback name="glade_reserved1">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved2">
        <callback name="glade_reserved2">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved3">
        <callback name="glade_reserved3">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved4">
        <callback name="glade_reserved4">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
    </record>
    <record name="NamedIconChooserDialogPrivate"
            c:type="GladeNamedIconChooserDialogPrivate"
            disguised="1">
    </record>
    <class name="Palette"
           c:symbol-prefix="palette"
           c:type="GladePalette"
           parent="Gtk.Box"
           glib:type-name="GladePalette"
           glib:get-type="glade_palette_get_type"
           glib:type-struct="PaletteClass">
      <implements name="Atk.ImplementorIface"/>
      <implements name="Gtk.Buildable"/>
      <implements name="Gtk.Orientable"/>
      <constructor name="new" c:identifier="glade_palette_new">
        <doc xml:space="preserve">Creates a new #GladePalette widget</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">a new #GladePalette</doc>
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
      </constructor>
      <virtual-method name="refresh">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="palette" transfer-ownership="none">
            <type name="Palette" c:type="GladePalette*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <method name="get_item_appearance"
              c:identifier="glade_palette_get_item_appearance">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">The appearance of the palette items</doc>
          <type name="ItemAppearance" c:type="GladeItemAppearance"/>
        </return-value>
        <parameters>
          <instance-parameter name="palette" transfer-ownership="none">
            <doc xml:space="preserve">a #GladePalette</doc>
            <type name="Palette" c:type="GladePalette*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_project"
              c:identifier="glade_palette_get_project"
              introspectable="0">
        <return-value>
          <type name="Project" c:type="GladeProject*"/>
        </return-value>
        <parameters>
          <instance-parameter name="palette" transfer-ownership="none">
            <type name="Palette" c:type="GladePalette*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_show_selector_button"
              c:identifier="glade_palette_get_show_selector_button">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">Whether the selector button is visible</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="palette" transfer-ownership="none">
            <doc xml:space="preserve">a #GladePalette</doc>
            <type name="Palette" c:type="GladePalette*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_tool_palette"
              c:identifier="glade_palette_get_tool_palette"
              introspectable="0">
        <return-value>
          <doc xml:space="preserve">the GtkToolPalette associated to this palette.</doc>
          <type name="Gtk.ToolPalette" c:type="GtkToolPalette*"/>
        </return-value>
        <parameters>
          <instance-parameter name="palette" transfer-ownership="none">
            <doc xml:space="preserve">a #GladePalette</doc>
            <type name="Palette" c:type="GladePalette*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_use_small_item_icons"
              c:identifier="glade_palette_get_use_small_item_icons">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">Whether small item icons are used</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="palette" transfer-ownership="none">
            <doc xml:space="preserve">a #GladePalette</doc>
            <type name="Palette" c:type="GladePalette*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_item_appearance"
              c:identifier="glade_palette_set_item_appearance">
        <doc xml:space="preserve">Sets the appearance of the palette items.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="palette" transfer-ownership="none">
            <doc xml:space="preserve">a #GladePalette</doc>
            <type name="Palette" c:type="GladePalette*"/>
          </instance-parameter>
          <parameter name="item_appearance" transfer-ownership="none">
            <doc xml:space="preserve">the item appearance</doc>
            <type name="ItemAppearance" c:type="GladeItemAppearance"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_project" c:identifier="glade_palette_set_project">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="palette" transfer-ownership="none">
            <type name="Palette" c:type="GladePalette*"/>
          </instance-parameter>
          <parameter name="project" transfer-ownership="none">
            <type name="Project" c:type="GladeProject*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_show_selector_button"
              c:identifier="glade_palette_set_show_selector_button">
        <doc xml:space="preserve">Sets whether to show the internal widget selector button</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="palette" transfer-ownership="none">
            <doc xml:space="preserve">a #GladePalette</doc>
            <type name="Palette" c:type="GladePalette*"/>
          </instance-parameter>
          <parameter name="show_selector_button" transfer-ownership="none">
            <doc xml:space="preserve">whether to show selector button</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_use_small_item_icons"
              c:identifier="glade_palette_set_use_small_item_icons">
        <doc xml:space="preserve">Sets whether to use small item icons.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="palette" transfer-ownership="none">
            <doc xml:space="preserve">a #GladePalette</doc>
            <type name="Palette" c:type="GladePalette*"/>
          </instance-parameter>
          <parameter name="use_small_item_icons" transfer-ownership="none">
            <doc xml:space="preserve">Whether to use small item icons</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <property name="item-appearance" writable="1" transfer-ownership="none">
        <type name="ItemAppearance"/>
      </property>
      <property name="project" writable="1" transfer-ownership="none">
        <type name="Project"/>
      </property>
      <property name="show-selector-button"
                writable="1"
                transfer-ownership="none">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="use-small-item-icons"
                writable="1"
                transfer-ownership="none">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <field name="parent_instance">
        <type name="Gtk.Box" c:type="GtkBox"/>
      </field>
      <field name="priv">
        <type name="PalettePrivate" c:type="GladePalettePrivate*"/>
      </field>
      <glib:signal name="refresh" when="last">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
    </class>
    <record name="PaletteClass"
            c:type="GladePaletteClass"
            glib:is-gtype-struct-for="Palette">
      <field name="parent_class">
        <type name="Gtk.BoxClass" c:type="GtkBoxClass"/>
      </field>
      <field name="refresh">
        <callback name="refresh">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="palette" transfer-ownership="none">
              <type name="Palette" c:type="GladePalette*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="glade_reserved1">
        <callback name="glade_reserved1">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved2">
        <callback name="glade_reserved2">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved3">
        <callback name="glade_reserved3">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved4">
        <callback name="glade_reserved4">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
    </record>
    <record name="PalettePrivate" c:type="GladePalettePrivate" disguised="1">
    </record>
    <class name="ParamObjects"
           c:symbol-prefix="param_objects"
           parent="GObject.ParamSpec"
           glib:type-name="GladeParamObjects"
           glib:get-type="glade_param_objects_get_type"
           glib:fundamental="1">
    </class>
    <record name="ParamSpecObjects"
            c:type="GladeParamSpecObjects"
            disguised="1">
      <method name="get_type" c:identifier="glade_param_spec_objects_get_type">
        <return-value transfer-ownership="none">
          <type name="GType" c:type="GType"/>
        </return-value>
        <parameters>
          <instance-parameter name="pspec" transfer-ownership="none">
            <type name="ParamSpecObjects" c:type="GladeParamSpecObjects*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_type" c:identifier="glade_param_spec_objects_set_type">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="pspec" transfer-ownership="none">
            <type name="ParamSpecObjects" c:type="GladeParamSpecObjects*"/>
          </instance-parameter>
          <parameter name="type" transfer-ownership="none">
            <type name="GType" c:type="GType"/>
          </parameter>
        </parameters>
      </method>
    </record>
    <class name="Placeholder"
           c:symbol-prefix="placeholder"
           c:type="GladePlaceholder"
           parent="Gtk.Widget"
           glib:type-name="GladePlaceholder"
           glib:get-type="glade_placeholder_get_type"
           glib:type-struct="PlaceholderClass">
      <implements name="Atk.ImplementorIface"/>
      <implements name="Gtk.Buildable"/>
      <implements name="Gtk.Scrollable"/>
      <constructor name="new" c:identifier="glade_placeholder_new">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">a new #GladePlaceholder cast as a #GtkWidget</doc>
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
      </constructor>
      <method name="get_parent"
              c:identifier="glade_placeholder_get_parent"
              introspectable="0">
        <return-value>
          <type name="Widget" c:type="GladeWidget*"/>
        </return-value>
        <parameters>
          <instance-parameter name="placeholder" transfer-ownership="none">
            <type name="Placeholder" c:type="GladePlaceholder*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_project"
              c:identifier="glade_placeholder_get_project"
              introspectable="0">
        <return-value>
          <type name="Project" c:type="GladeProject*"/>
        </return-value>
        <parameters>
          <instance-parameter name="placeholder" transfer-ownership="none">
            <type name="Placeholder" c:type="GladePlaceholder*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="packing_actions"
              c:identifier="glade_placeholder_packing_actions"
              introspectable="0">
        <return-value>
          <type name="GLib.List" c:type="GList*">
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="placeholder" transfer-ownership="none">
            <type name="Placeholder" c:type="GladePlaceholder*"/>
          </instance-parameter>
        </parameters>
      </method>
      <field name="widget">
        <type name="Gtk.Widget" c:type="GtkWidget"/>
      </field>
      <field name="priv">
        <type name="PlaceholderPrivate" c:type="GladePlaceholderPrivate*"/>
      </field>
    </class>
    <record name="PlaceholderClass"
            c:type="GladePlaceholderClass"
            glib:is-gtype-struct-for="Placeholder">
      <field name="parent_class">
        <type name="Gtk.WidgetClass" c:type="GtkWidgetClass"/>
      </field>
      <field name="glade_reserved1">
        <callback name="glade_reserved1">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved2">
        <callback name="glade_reserved2">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved3">
        <callback name="glade_reserved3">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved4">
        <callback name="glade_reserved4">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
    </record>
    <record name="PlaceholderPrivate"
            c:type="GladePlaceholderPrivate"
            disguised="1">
    </record>
    <enumeration name="PointerMode"
                 glib:type-name="GladePointerMode"
                 glib:get-type="glade_pointer_mode_get_type"
                 c:type="GladePointerMode">
      <doc xml:space="preserve">Indicates what the pointer is used for in the workspace.</doc>
      <member name="select"
              value="0"
              c:identifier="GLADE_POINTER_SELECT"
              glib:nick="select">
        <doc xml:space="preserve">Mouse pointer used for selecting widgets</doc>
      </member>
      <member name="add_widget"
              value="1"
              c:identifier="GLADE_POINTER_ADD_WIDGET"
              glib:nick="add-widget">
        <doc xml:space="preserve">Mouse pointer used for adding widgets</doc>
      </member>
      <member name="drag_resize"
              value="2"
              c:identifier="GLADE_POINTER_DRAG_RESIZE"
              glib:nick="drag-resize">
        <doc xml:space="preserve">Mouse pointer used for dragging and
                            resizing widgets in containers</doc>
      </member>
      <member name="margin_edit"
              value="3"
              c:identifier="GLADE_POINTER_MARGIN_EDIT"
              glib:nick="margin-edit">
        <doc xml:space="preserve">Mouse pointer used to edit widget margins</doc>
      </member>
      <member name="align_edit"
              value="4"
              c:identifier="GLADE_POINTER_ALIGN_EDIT"
              glib:nick="align-edit">
        <doc xml:space="preserve">Mouse pointer used to edit widget alignment</doc>
      </member>
    </enumeration>
    <callback name="PostCreateFunc" c:type="GladePostCreateFunc">
      <doc xml:space="preserve">This function is called exactly once for any project object
instance and can be for any #GladeCreateReason.</doc>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="adaptor" transfer-ownership="none">
          <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
          <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
        </parameter>
        <parameter name="object" transfer-ownership="none">
          <doc xml:space="preserve">The #GObject</doc>
          <type name="GObject.Object" c:type="GObject*"/>
        </parameter>
        <parameter name="reason" transfer-ownership="none">
          <doc xml:space="preserve">The #GladeCreateReason that @object was created for</doc>
          <type name="CreateReason" c:type="GladeCreateReason"/>
        </parameter>
      </parameters>
    </callback>
    <class name="Project"
           c:symbol-prefix="project"
           c:type="GladeProject"
           parent="GObject.Object"
           glib:type-name="GladeProject"
           glib:get-type="glade_project_get_type"
           glib:type-struct="ProjectClass">
      <implements name="Gtk.TreeDragSource"/>
      <implements name="Gtk.TreeModel"/>
      <constructor name="new" c:identifier="glade_project_new">
        <doc xml:space="preserve">Creates a new #GladeProject.</doc>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve">a new #GladeProject</doc>
          <type name="Project" c:type="GladeProject*"/>
        </return-value>
      </constructor>
      <function name="load"
                c:identifier="glade_project_load"
                introspectable="0">
        <doc xml:space="preserve">Opens a project at the given path.</doc>
        <return-value>
          <doc xml:space="preserve">a new #GladeProject for the opened project on success, %NULL on
         failure</doc>
          <type name="Project" c:type="GladeProject*"/>
        </return-value>
        <parameters>
          <parameter name="path" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="verify_property"
                c:identifier="glade_project_verify_property">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="property" transfer-ownership="none">
            <type name="Property" c:type="GladeProperty*"/>
          </parameter>
        </parameters>
      </function>
      <function name="verify_signal"
                c:identifier="glade_project_verify_signal">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="widget" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
          <parameter name="signal" transfer-ownership="none">
            <type name="Signal" c:type="GladeSignal*"/>
          </parameter>
        </parameters>
      </function>
      <virtual-method name="add_object" invoker="add_object">
        <doc xml:space="preserve">Adds an object to the project.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">the #GladeProject the widget is added to</doc>
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
          <parameter name="widget" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="changed">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
          <parameter name="command" transfer-ownership="none">
            <type name="Command" c:type="GladeCommand*"/>
          </parameter>
          <parameter name="forward" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="close">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="next_redo_item"
                      invoker="next_redo_item"
                      introspectable="0">
        <doc xml:space="preserve">Gets the next redo item on @project's command stack.</doc>
        <return-value>
          <doc xml:space="preserve">the #GladeCommand</doc>
          <type name="Command" c:type="GladeCommand*"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProject</doc>
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="next_undo_item"
                      invoker="next_undo_item"
                      introspectable="0">
        <doc xml:space="preserve">Gets the next undo item on @project's command stack.</doc>
        <return-value>
          <doc xml:space="preserve">the #GladeCommand</doc>
          <type name="Command" c:type="GladeCommand*"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProject</doc>
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="parse_finished">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="push_undo" invoker="push_undo">
        <doc xml:space="preserve">Pushes a newly created #GladeCommand onto @projects stack.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProject</doc>
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
          <parameter name="command" transfer-ownership="none">
            <type name="Command" c:type="GladeCommand*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="redo" invoker="redo">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="remove_object" invoker="remove_object">
        <doc xml:space="preserve">Removes @object from @project.

Note that when removing the #GObject from the project we
don't change -&gt;project in the associated #GladeWidget; this
way UNDO can work.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProject</doc>
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
          <parameter name="widget" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="selection_changed" invoker="selection_changed">
        <doc xml:space="preserve">Causes @project to emit a "selection_changed" signal.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProject</doc>
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="undo" invoker="undo">
        <doc xml:space="preserve">Redoes a #GladeCommand in this project.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProject</doc>
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="widget_name_changed">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
          <parameter name="widget" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <method name="add_object" c:identifier="glade_project_add_object">
        <doc xml:space="preserve">Adds an object to the project.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">the #GladeProject the widget is added to</doc>
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
          <parameter name="object" transfer-ownership="none">
            <doc xml:space="preserve">the #GObject to add</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
        </parameters>
      </method>
      <method name="autosave" c:identifier="glade_project_autosave" throws="1">
        <doc xml:space="preserve">Saves an autosave snapshot of @project to it's currently set path

If the project was never saved, nothing is done and %TRUE is returned.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">%TRUE on success, %FALSE on failure</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProject</doc>
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="available_widget_name"
              c:identifier="glade_project_available_widget_name">
        <doc xml:space="preserve">Checks whether @name is an appropriate name for @widget.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether the name is available or not.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProject</doc>
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
          <parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">the #GladeWidget intended to recieve a new name</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
          <parameter name="name" transfer-ownership="none">
            <doc xml:space="preserve">base name of the widget to create</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="backup" c:identifier="glade_project_backup" throws="1">
        <doc xml:space="preserve">Backup the last file which @project has saved to
or was loaded from.

If @path is not the same as the current project
path, then the current project path will be
backed up under the new location.

If this the first save, and no persisted file
exists, then %TRUE is returned and no backup is made.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">%TRUE on success, %FALSE on failure</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProject</doc>
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
          <parameter name="path" transfer-ownership="none">
            <doc xml:space="preserve">location to save glade file</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="cancel_load" c:identifier="glade_project_cancel_load">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="check_reordered"
              c:identifier="glade_project_check_reordered"
              introspectable="0">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
          <parameter name="parent" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
          <parameter name="old_order" transfer-ownership="none">
            <type name="GLib.List" c:type="GList*">
              <type name="gpointer" c:type="gpointer"/>
            </type>
          </parameter>
        </parameters>
      </method>
      <method name="command_cut" c:identifier="glade_project_command_cut">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="command_delete"
              c:identifier="glade_project_command_delete">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="command_paste" c:identifier="glade_project_command_paste">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
          <parameter name="placeholder" transfer-ownership="none">
            <type name="Placeholder" c:type="GladePlaceholder*"/>
          </parameter>
        </parameters>
      </method>
      <method name="copy_selection"
              c:identifier="glade_project_copy_selection">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="display_dependencies"
              c:identifier="glade_project_display_dependencies">
        <return-value transfer-ownership="full">
          <type name="utf8" c:type="gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_add_item"
              c:identifier="glade_project_get_add_item"
              introspectable="0">
        <return-value>
          <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_css_provider_path"
              c:identifier="glade_project_get_css_provider_path">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">the CSS path of the custom provider used for @project</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProject</doc>
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_file_mtime"
              c:identifier="glade_project_get_file_mtime">
        <return-value transfer-ownership="none">
          <type name="glong" c:type="time_t"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_has_selection"
              c:identifier="glade_project_get_has_selection">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether @project currently has a selection</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProject</doc>
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_license" c:identifier="glade_project_get_license">
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_modified" c:identifier="glade_project_get_modified">
        <doc xml:space="preserve">Get's whether the project has been modified since it was last saved.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">%TRUE if the project has been modified since it was last saved</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProject</doc>
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_name" c:identifier="glade_project_get_name">
        <return-value transfer-ownership="full">
          <type name="utf8" c:type="gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_objects"
              c:identifier="glade_project_get_objects"
              introspectable="0">
        <return-value transfer-ownership="none">
          <type name="GLib.List" c:type="const GList*">
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_path" c:identifier="glade_project_get_path">
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_pointer_mode"
              c:identifier="glade_project_get_pointer_mode">
        <return-value transfer-ownership="none">
          <type name="PointerMode" c:type="GladePointerMode"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_readonly" c:identifier="glade_project_get_readonly">
        <doc xml:space="preserve">Gets whether the project is read only or not</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">TRUE if project is read only</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProject</doc>
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_resource_path"
              c:identifier="glade_project_get_resource_path">
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_target_version"
              c:identifier="glade_project_get_target_version">
        <doc xml:space="preserve">Fetches the target version of the @project for @catalog.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProject</doc>
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
          <parameter name="catalog" transfer-ownership="none">
            <doc xml:space="preserve">the name of the catalog @project includes</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="major" transfer-ownership="none">
            <doc xml:space="preserve">the return location for the target major version</doc>
            <type name="gint" c:type="gint*"/>
          </parameter>
          <parameter name="minor" transfer-ownership="none">
            <doc xml:space="preserve">the return location for the target minor version</doc>
            <type name="gint" c:type="gint*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_template"
              c:identifier="glade_project_get_template"
              introspectable="0">
        <return-value>
          <type name="Widget" c:type="GladeWidget*"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_translation_domain"
              c:identifier="glade_project_get_translation_domain">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">the translation domain</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProject</doc>
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_widget_by_name"
              c:identifier="glade_project_get_widget_by_name"
              introspectable="0">
        <doc xml:space="preserve">Searches under @ancestor in @project looking for a #GladeWidget named @name.</doc>
        <return-value>
          <doc xml:space="preserve">a pointer to the widget, %NULL if the widget does not exist</doc>
          <type name="Widget" c:type="GladeWidget*"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProject</doc>
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
          <parameter name="name" transfer-ownership="none">
            <doc xml:space="preserve">The user visible name of the widget we are looking for</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="has_object" c:identifier="glade_project_has_object">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether this object is in this project.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">the #GladeProject the widget is added to</doc>
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
          <parameter name="object" transfer-ownership="none">
            <doc xml:space="preserve">the #GObject to search</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
        </parameters>
      </method>
      <method name="is_loading" c:identifier="glade_project_is_loading">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">Whether the project is being loaded or not</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeProject</doc>
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="is_selected" c:identifier="glade_project_is_selected">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether @object is in @project selection</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProject</doc>
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
          <parameter name="object" transfer-ownership="none">
            <doc xml:space="preserve">a #GObject</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
        </parameters>
      </method>
      <method name="load_cancelled"
              c:identifier="glade_project_load_cancelled">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="load_from_file"
              c:identifier="glade_project_load_from_file">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
          <parameter name="path" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="new_widget_name"
              c:identifier="glade_project_new_widget_name">
        <doc xml:space="preserve">Creates a new name for a widget that doesn't collide with any of the names
already in @project. This name will start with @base_name.

Note the @widget parameter is ignored and preserved only for historical reasons.</doc>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve">a string containing the new name, %NULL if there is not enough
         memory for this string</doc>
          <type name="utf8" c:type="gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProject</doc>
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
          <parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">the #GladeWidget intended to recieve a new name, or %NULL</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
          <parameter name="base_name" transfer-ownership="none">
            <doc xml:space="preserve">base name of the widget to create</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="next_redo_item"
              c:identifier="glade_project_next_redo_item"
              introspectable="0">
        <doc xml:space="preserve">Gets the next redo item on @project's command stack.</doc>
        <return-value>
          <doc xml:space="preserve">the #GladeCommand</doc>
          <type name="Command" c:type="GladeCommand*"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProject</doc>
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="next_undo_item"
              c:identifier="glade_project_next_undo_item"
              introspectable="0">
        <doc xml:space="preserve">Gets the next undo item on @project's command stack.</doc>
        <return-value>
          <doc xml:space="preserve">the #GladeCommand</doc>
          <type name="Command" c:type="GladeCommand*"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProject</doc>
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="preview" c:identifier="glade_project_preview">
        <doc xml:space="preserve">Creates and displays a preview window holding a snapshot of @gwidget's
toplevel window in @project. Note that the preview window is only a snapshot
of the current state of the project, there is no limit on how many preview
snapshots can be taken.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProject</doc>
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
          <parameter name="gwidget" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
        </parameters>
      </method>
      <method name="properties" c:identifier="glade_project_properties">
        <doc xml:space="preserve">Runs a document properties dialog for @project.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeProject</doc>
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="push_progress" c:identifier="glade_project_push_progress">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="push_undo" c:identifier="glade_project_push_undo">
        <doc xml:space="preserve">Pushes a newly created #GladeCommand onto @projects stack.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProject</doc>
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
          <parameter name="cmd" transfer-ownership="none">
            <doc xml:space="preserve">the #GladeCommand</doc>
            <type name="Command" c:type="GladeCommand*"/>
          </parameter>
        </parameters>
      </method>
      <method name="queue_selection_changed"
              c:identifier="glade_project_queue_selection_changed">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="redo" c:identifier="glade_project_redo">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="redo_items"
              c:identifier="glade_project_redo_items"
              introspectable="0">
        <doc xml:space="preserve">Creates a menu of the undo items in the project stack</doc>
        <return-value>
          <doc xml:space="preserve">A newly created menu</doc>
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeProject</doc>
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="remove_object" c:identifier="glade_project_remove_object">
        <doc xml:space="preserve">Removes @object from @project.

Note that when removing the #GObject from the project we
don't change -&gt;project in the associated #GladeWidget; this
way UNDO can work.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProject</doc>
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
          <parameter name="object" transfer-ownership="none">
            <doc xml:space="preserve">the #GObject to remove</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
        </parameters>
      </method>
      <method name="required_libs"
              c:identifier="glade_project_required_libs"
              introspectable="0">
        <return-value>
          <doc xml:space="preserve">a #GList of allocated strings which are the names
of the required catalogs for this project</doc>
          <type name="GLib.List" c:type="GList*">
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProject</doc>
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="reset_path" c:identifier="glade_project_reset_path">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="resource_fullpath"
              c:identifier="glade_project_resource_fullpath">
        <doc xml:space="preserve">Project resource strings may be relative or fullpaths, but glade
always expects a copy in the glade file directory, this function
is used to make a local path to the file.</doc>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve">A newly allocated string holding the
         local path the the project resource.</doc>
          <type name="utf8" c:type="gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">The #GladeProject.</doc>
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
          <parameter name="resource" transfer-ownership="none">
            <doc xml:space="preserve">The resource basename</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="save" c:identifier="glade_project_save" throws="1">
        <doc xml:space="preserve">Saves @project to the given path.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">%TRUE on success, %FALSE on failure</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProject</doc>
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
          <parameter name="path" transfer-ownership="none">
            <doc xml:space="preserve">location to save glade file</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="save_verify"
              c:identifier="glade_project_save_verify"
              throws="1">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
          <parameter name="path" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="flags" transfer-ownership="none">
            <type name="VerifyFlags" c:type="GladeVerifyFlags"/>
          </parameter>
        </parameters>
      </method>
      <method name="selection_add" c:identifier="glade_project_selection_add">
        <doc xml:space="preserve">Adds @object to the selection chain of @project

If @emit_signal is %TRUE, calls glade_project_selection_changed().</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProject</doc>
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
          <parameter name="object" transfer-ownership="none">
            <doc xml:space="preserve">a #GObject in @project</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="emit_signal" transfer-ownership="none">
            <doc xml:space="preserve">whether or not to emit a signal indicating
              a selection change</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="selection_changed"
              c:identifier="glade_project_selection_changed">
        <doc xml:space="preserve">Causes @project to emit a "selection_changed" signal.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProject</doc>
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="selection_clear"
              c:identifier="glade_project_selection_clear">
        <doc xml:space="preserve">Clears @project's selection chain

If @emit_signal is %TRUE, calls glade_project_selection_changed().</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProject</doc>
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
          <parameter name="emit_signal" transfer-ownership="none">
            <doc xml:space="preserve">whether or not to emit a signal indication a selection change</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="selection_get"
              c:identifier="glade_project_selection_get"
              introspectable="0">
        <return-value>
          <doc xml:space="preserve">a #GList containing the #GtkWidget items currently selected in @project</doc>
          <type name="GLib.List" c:type="GList*">
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProject</doc>
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="selection_remove"
              c:identifier="glade_project_selection_remove">
        <doc xml:space="preserve">Removes @object from the selection chain of @project

If @emit_signal is %TRUE, calls glade_project_selection_changed().</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProject</doc>
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
          <parameter name="object" transfer-ownership="none">
            <doc xml:space="preserve">a #GObject in @project</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="emit_signal" transfer-ownership="none">
            <doc xml:space="preserve">whether or not to emit a signal
              indicating a selection change</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="selection_set" c:identifier="glade_project_selection_set">
        <doc xml:space="preserve">Set the selection in @project to @object

If @emit_signal is %TRUE, calls glade_project_selection_changed().</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProject</doc>
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
          <parameter name="object" transfer-ownership="none">
            <doc xml:space="preserve">a #GObject in @project</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="emit_signal" transfer-ownership="none">
            <doc xml:space="preserve">whether or not to emit a signal
              indicating a selection change</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_add_item" c:identifier="glade_project_set_add_item">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
          <parameter name="adaptor" transfer-ownership="none">
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_css_provider_path"
              c:identifier="glade_project_set_css_provider_path">
        <doc xml:space="preserve">Set the custom CSS provider path to use in @project</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProject</doc>
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
          <parameter name="path" transfer-ownership="none">
            <doc xml:space="preserve">a CSS file path</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_license" c:identifier="glade_project_set_license">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
          <parameter name="license" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_pointer_mode"
              c:identifier="glade_project_set_pointer_mode">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
          <parameter name="mode" transfer-ownership="none">
            <type name="PointerMode" c:type="GladePointerMode"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_resource_path"
              c:identifier="glade_project_set_resource_path">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
          <parameter name="path" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_target_version"
              c:identifier="glade_project_set_target_version">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
          <parameter name="catalog" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="major" transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </parameter>
          <parameter name="minor" transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_template" c:identifier="glade_project_set_template">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
          <parameter name="widget" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_translation_domain"
              c:identifier="glade_project_set_translation_domain">
        <doc xml:space="preserve">Set the project translation domain.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProject</doc>
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
          <parameter name="domain" transfer-ownership="none">
            <doc xml:space="preserve">the translation domain</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_widget_name"
              c:identifier="glade_project_set_widget_name">
        <doc xml:space="preserve">Sets @name on @widget in @project, if @name is not
available then a new name will be used.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProject</doc>
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
          <parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">the #GladeWidget to set a name on</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
          <parameter name="name" transfer-ownership="none">
            <doc xml:space="preserve">the name to set.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="toplevels"
              c:identifier="glade_project_toplevels"
              introspectable="0">
        <return-value>
          <doc xml:space="preserve">a #GList containing the #GtkWidget toplevel items in @project</doc>
          <type name="GLib.List" c:type="GList*">
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProject</doc>
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="undo" c:identifier="glade_project_undo">
        <doc xml:space="preserve">Redoes a #GladeCommand in this project.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProject</doc>
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="undo_items"
              c:identifier="glade_project_undo_items"
              introspectable="0">
        <doc xml:space="preserve">Creates a menu of the undo items in the project stack</doc>
        <return-value>
          <doc xml:space="preserve">A newly created menu</doc>
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeProject</doc>
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="verify" c:identifier="glade_project_verify">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
          <parameter name="saving" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
          <parameter name="flags" transfer-ownership="none">
            <type name="VerifyFlags" c:type="GladeVerifyFlags"/>
          </parameter>
        </parameters>
      </method>
      <method name="verify_widget_adaptor"
              c:identifier="glade_project_verify_widget_adaptor">
        <doc xml:space="preserve">Checks the supported state of this widget adaptor
and generates a string to show in the UI describing why.</doc>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve">A newly allocated string</doc>
          <type name="utf8" c:type="gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeProject</doc>
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
          <parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">the #GladeWidgetAdaptor to verify</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </parameter>
          <parameter name="mask" transfer-ownership="none">
            <doc xml:space="preserve">a return location for a #GladeSupportMask</doc>
            <type name="SupportMask" c:type="GladeSupportMask*"/>
          </parameter>
        </parameters>
      </method>
      <method name="widget_changed"
              c:identifier="glade_project_widget_changed">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
          <parameter name="gwidget" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
        </parameters>
      </method>
      <method name="widget_visibility_changed"
              c:identifier="glade_project_widget_visibility_changed">
        <doc xml:space="preserve">Emmits  GladeProject::widget-visibility-changed signal</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">The #GladeProject.</doc>
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
          <parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">The widget which visibility changed</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
          <parameter name="visible" transfer-ownership="none">
            <doc xml:space="preserve">widget visibility value</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="writing_preview"
              c:identifier="glade_project_writing_preview">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="project" transfer-ownership="none">
            <type name="Project" c:type="GladeProject*"/>
          </instance-parameter>
        </parameters>
      </method>
      <property name="add-item" transfer-ownership="none">
        <type name="WidgetAdaptor"/>
      </property>
      <property name="css-provider-path"
                writable="1"
                transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="has-selection" transfer-ownership="none">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="license" writable="1" transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="modified" transfer-ownership="none">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="path" transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="pointer-mode" transfer-ownership="none">
        <type name="PointerMode"/>
      </property>
      <property name="read-only" transfer-ownership="none">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="resource-path" writable="1" transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="template" writable="1" transfer-ownership="none">
        <type name="Widget"/>
      </property>
      <property name="translation-domain"
                writable="1"
                transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <field name="parent_instance">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
      <field name="priv">
        <type name="ProjectPrivate" c:type="GladeProjectPrivate*"/>
      </field>
      <glib:signal name="add-widget" when="last">
        <doc xml:space="preserve">Emitted when a widget is added to a project.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="arg1" transfer-ownership="none">
            <doc xml:space="preserve">the #GladeWidget that was added to @gladeproject.</doc>
            <type name="Widget"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="changed" when="first">
        <doc xml:space="preserve">Emitted when a @gladeproject's state changes via a #GladeCommand.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="arg1" transfer-ownership="none">
            <doc xml:space="preserve">the #GladeCommand that was executed</doc>
            <type name="Command"/>
          </parameter>
          <parameter name="arg2" transfer-ownership="none">
            <doc xml:space="preserve">whether the command was executed or undone.</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="close" when="last">
        <doc xml:space="preserve">Emitted when a project is closing (a good time to clean up
any associated resources).</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
      <glib:signal name="load-progress" when="first">
        <doc xml:space="preserve">Emitted while @project is loading.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="objects_total" transfer-ownership="none">
            <doc xml:space="preserve">the total amount of objects to load</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
          <parameter name="objects_loaded" transfer-ownership="none">
            <doc xml:space="preserve">the current amount of loaded objects</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="parse-began" when="first">
        <doc xml:space="preserve">Emitted when @gladeproject parsing starts.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
      <glib:signal name="parse-finished" when="first">
        <doc xml:space="preserve">Emitted when @gladeproject parsing has finished.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
      <glib:signal name="remove-widget" when="last">
        <doc xml:space="preserve">Emitted when a widget is removed from a project.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="arg1" transfer-ownership="none">
            <doc xml:space="preserve">the #GladeWidget that was removed from @gladeproject.</doc>
            <type name="Widget"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="selection-changed" when="last">
        <doc xml:space="preserve">Emitted when @gladeproject selection list changes.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
      <glib:signal name="targets-changed" when="first">
        <doc xml:space="preserve">Emitted when @gladeproject target versions change.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
      <glib:signal name="widget-name-changed" when="last">
        <doc xml:space="preserve">Emitted when @gwidget's name changes.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="arg1" transfer-ownership="none">
            <doc xml:space="preserve">the #GladeWidget who's name changed.</doc>
            <type name="Widget"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="widget-visibility-changed" when="first">
        <doc xml:space="preserve">Emitted when the visivility of a widget changed</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">the widget that its visibity changed</doc>
            <type name="Widget"/>
          </parameter>
          <parameter name="visible" transfer-ownership="none">
            <doc xml:space="preserve">the current visiblity of the widget</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </glib:signal>
    </class>
    <record name="ProjectClass"
            c:type="GladeProjectClass"
            glib:is-gtype-struct-for="Project">
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
      <field name="add_object">
        <callback name="add_object">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="project" transfer-ownership="none">
              <doc xml:space="preserve">the #GladeProject the widget is added to</doc>
              <type name="Project" c:type="GladeProject*"/>
            </parameter>
            <parameter name="widget" transfer-ownership="none">
              <type name="Widget" c:type="GladeWidget*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="remove_object">
        <callback name="remove_object">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="project" transfer-ownership="none">
              <doc xml:space="preserve">a #GladeProject</doc>
              <type name="Project" c:type="GladeProject*"/>
            </parameter>
            <parameter name="widget" transfer-ownership="none">
              <type name="Widget" c:type="GladeWidget*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="undo">
        <callback name="undo">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="project" transfer-ownership="none">
              <doc xml:space="preserve">a #GladeProject</doc>
              <type name="Project" c:type="GladeProject*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="redo">
        <callback name="redo">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="project" transfer-ownership="none">
              <type name="Project" c:type="GladeProject*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="next_undo_item" introspectable="0">
        <callback name="next_undo_item" introspectable="0">
          <return-value>
            <doc xml:space="preserve">the #GladeCommand</doc>
            <type name="Command" c:type="GladeCommand*"/>
          </return-value>
          <parameters>
            <parameter name="project" transfer-ownership="none">
              <doc xml:space="preserve">a #GladeProject</doc>
              <type name="Project" c:type="GladeProject*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="next_redo_item" introspectable="0">
        <callback name="next_redo_item" introspectable="0">
          <return-value>
            <doc xml:space="preserve">the #GladeCommand</doc>
            <type name="Command" c:type="GladeCommand*"/>
          </return-value>
          <parameters>
            <parameter name="project" transfer-ownership="none">
              <doc xml:space="preserve">a #GladeProject</doc>
              <type name="Project" c:type="GladeProject*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="push_undo">
        <callback name="push_undo">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="project" transfer-ownership="none">
              <doc xml:space="preserve">a #GladeProject</doc>
              <type name="Project" c:type="GladeProject*"/>
            </parameter>
            <parameter name="command" transfer-ownership="none">
              <type name="Command" c:type="GladeCommand*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="changed">
        <callback name="changed">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="project" transfer-ownership="none">
              <type name="Project" c:type="GladeProject*"/>
            </parameter>
            <parameter name="command" transfer-ownership="none">
              <type name="Command" c:type="GladeCommand*"/>
            </parameter>
            <parameter name="forward" transfer-ownership="none">
              <type name="gboolean" c:type="gboolean"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="widget_name_changed">
        <callback name="widget_name_changed">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="project" transfer-ownership="none">
              <type name="Project" c:type="GladeProject*"/>
            </parameter>
            <parameter name="widget" transfer-ownership="none">
              <type name="Widget" c:type="GladeWidget*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="selection_changed">
        <callback name="selection_changed">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="project" transfer-ownership="none">
              <doc xml:space="preserve">a #GladeProject</doc>
              <type name="Project" c:type="GladeProject*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="close">
        <callback name="close">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="project" transfer-ownership="none">
              <type name="Project" c:type="GladeProject*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="parse_finished">
        <callback name="parse_finished">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="project" transfer-ownership="none">
              <type name="Project" c:type="GladeProject*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="glade_reserved1">
        <callback name="glade_reserved1">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved2">
        <callback name="glade_reserved2">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved3">
        <callback name="glade_reserved3">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved4">
        <callback name="glade_reserved4">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved5">
        <callback name="glade_reserved5">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved6">
        <callback name="glade_reserved6">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved7">
        <callback name="glade_reserved7">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved8">
        <callback name="glade_reserved8">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
    </record>
    <enumeration name="ProjectModelColumns"
                 glib:type-name="GladeProjectModelColumns"
                 glib:get-type="glade_project_model_columns_get_type"
                 c:type="GladeProjectModelColumns">
      <doc xml:space="preserve">The tree view columns provided by the GtkTreeModel implemented
by GladeProject</doc>
      <member name="column_icon_name"
              value="0"
              c:identifier="GLADE_PROJECT_MODEL_COLUMN_ICON_NAME"
              glib:nick="column-icon-name">
        <doc xml:space="preserve">name of the icon for the widget</doc>
      </member>
      <member name="column_name"
              value="1"
              c:identifier="GLADE_PROJECT_MODEL_COLUMN_NAME"
              glib:nick="column-name">
        <doc xml:space="preserve">Name of the widget</doc>
      </member>
      <member name="column_type_name"
              value="2"
              c:identifier="GLADE_PROJECT_MODEL_COLUMN_TYPE_NAME"
              glib:nick="column-type-name">
        <doc xml:space="preserve">The type name of the widget</doc>
      </member>
      <member name="column_object"
              value="3"
              c:identifier="GLADE_PROJECT_MODEL_COLUMN_OBJECT"
              glib:nick="column-object">
        <doc xml:space="preserve">the GObject of the widget</doc>
      </member>
      <member name="column_misc"
              value="4"
              c:identifier="GLADE_PROJECT_MODEL_COLUMN_MISC"
              glib:nick="column-misc">
        <doc xml:space="preserve">the auxilary text describing a widget's role</doc>
      </member>
      <member name="column_warning"
              value="5"
              c:identifier="GLADE_PROJECT_MODEL_COLUMN_WARNING"
              glib:nick="column-warning">
        <doc xml:space="preserve">the support warning text for this widget</doc>
      </member>
      <member name="n_columns"
              value="6"
              c:identifier="GLADE_PROJECT_MODEL_N_COLUMNS"
              glib:nick="n-columns">
        <doc xml:space="preserve">Number of columns</doc>
      </member>
    </enumeration>
    <record name="ProjectPrivate" c:type="GladeProjectPrivate" disguised="1">
    </record>
    <class name="Property"
           c:symbol-prefix="property"
           c:type="GladeProperty"
           parent="GObject.Object"
           glib:type-name="GladeProperty"
           glib:get-type="glade_property_get_type"
           glib:type-struct="PropertyClass">
      <constructor name="new" c:identifier="glade_property_new">
        <doc xml:space="preserve">Creates a #GladeProperty of type @klass for @widget with @value; if
@value is %NULL, then the introspected default value for that property
will be used.</doc>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve">The newly created #GladeProperty</doc>
          <type name="Property" c:type="GladeProperty*"/>
        </return-value>
        <parameters>
          <parameter name="klass" transfer-ownership="none">
            <doc xml:space="preserve">A #GladePropertyClass defining this property</doc>
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </parameter>
          <parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">The #GladeWidget this property is created for</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve">The initial #GValue of the property or %NULL
        (the #GladeProperty will assume ownership of @value)</doc>
            <type name="GObject.Value" c:type="GValue*"/>
          </parameter>
        </parameters>
      </constructor>
      <function name="pop_superuser"
                c:identifier="glade_property_pop_superuser">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </function>
      <function name="push_superuser"
                c:identifier="glade_property_push_superuser">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </function>
      <function name="superuser" c:identifier="glade_property_superuser">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
      </function>
      <method name="add_object" c:identifier="glade_property_add_object">
        <doc xml:space="preserve">Adds @object to the object list in @property.

Note: This function expects @property to be a #GladeParamSpecObjects
or #GParamSpecObject type property.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="property" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProperty</doc>
            <type name="Property" c:type="GladeProperty*"/>
          </instance-parameter>
          <parameter name="object" transfer-ownership="none">
            <doc xml:space="preserve">The #GObject to add</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
        </parameters>
      </method>
      <method name="default" c:identifier="glade_property_default">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">Whether this property is at its default value</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="property" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeProperty</doc>
            <type name="Property" c:type="GladeProperty*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="dup" c:identifier="glade_property_dup" introspectable="0">
        <return-value>
          <doc xml:space="preserve">A newly duplicated property based on the new widget</doc>
          <type name="Property" c:type="GladeProperty*"/>
        </return-value>
        <parameters>
          <instance-parameter name="template_prop" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeProperty</doc>
            <type name="Property" c:type="GladeProperty*"/>
          </instance-parameter>
          <parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
        </parameters>
      </method>
      <method name="equals"
              c:identifier="glade_property_equals"
              introspectable="0">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">Whether this property is equal to the value provided</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="property" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProperty</doc>
            <type name="Property" c:type="GladeProperty*"/>
          </instance-parameter>
          <parameter name="..." transfer-ownership="none">
            <doc xml:space="preserve">a provided property value</doc>
            <varargs/>
          </parameter>
        </parameters>
      </method>
      <method name="equals_value" c:identifier="glade_property_equals_value">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">Whether this property is equal to the value provided</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="property" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProperty</doc>
            <type name="Property" c:type="GladeProperty*"/>
          </instance-parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve">a #GValue</doc>
            <type name="GObject.Value" c:type="const GValue*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get" c:identifier="glade_property_get" introspectable="0">
        <doc xml:space="preserve">Retrieve the property value</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="property" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProperty</doc>
            <type name="Property" c:type="GladeProperty*"/>
          </instance-parameter>
          <parameter name="..." transfer-ownership="none">
            <doc xml:space="preserve">An address to store the value</doc>
            <varargs/>
          </parameter>
        </parameters>
      </method>
      <method name="get_class"
              c:identifier="glade_property_get_class"
              introspectable="0">
        <return-value>
          <type name="PropertyClass" c:type="GladePropertyClass*"/>
        </return-value>
        <parameters>
          <instance-parameter name="property" transfer-ownership="none">
            <type name="Property" c:type="GladeProperty*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_default" c:identifier="glade_property_get_default">
        <doc xml:space="preserve">Retrieve the default property value</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="property" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProperty</doc>
            <type name="Property" c:type="GladeProperty*"/>
          </instance-parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve">a #GValue</doc>
            <type name="GObject.Value" c:type="GValue*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_enabled" c:identifier="glade_property_get_enabled">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="property" transfer-ownership="none">
            <type name="Property" c:type="GladeProperty*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_save_always"
              c:identifier="glade_property_get_save_always">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether this property is special cased
to always be saved regardless of its default value.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="property" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeProperty</doc>
            <type name="Property" c:type="GladeProperty*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_sensitive" c:identifier="glade_property_get_sensitive">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="property" transfer-ownership="none">
            <type name="Property" c:type="GladeProperty*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_state" c:identifier="glade_property_get_state">
        <return-value transfer-ownership="none">
          <type name="PropertyState" c:type="GladePropertyState"/>
        </return-value>
        <parameters>
          <instance-parameter name="property" transfer-ownership="none">
            <type name="Property" c:type="GladeProperty*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_support_warning"
              c:identifier="glade_property_get_support_warning">
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="property" transfer-ownership="none">
            <type name="Property" c:type="GladeProperty*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_va_list"
              c:identifier="glade_property_get_va_list"
              introspectable="0">
        <doc xml:space="preserve">Retrieve the property value</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="property" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProperty</doc>
            <type name="Property" c:type="GladeProperty*"/>
          </instance-parameter>
          <parameter name="vl" transfer-ownership="none">
            <doc xml:space="preserve">a va_list</doc>
            <type name="va_list" c:type="va_list"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_value" c:identifier="glade_property_get_value">
        <doc xml:space="preserve">Retrieve the property value</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="property" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProperty</doc>
            <type name="Property" c:type="GladeProperty*"/>
          </instance-parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve">a #GValue</doc>
            <type name="GObject.Value" c:type="GValue*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_widget"
              c:identifier="glade_property_get_widget"
              introspectable="0">
        <return-value>
          <type name="Widget" c:type="GladeWidget*"/>
        </return-value>
        <parameters>
          <instance-parameter name="property" transfer-ownership="none">
            <type name="Property" c:type="GladeProperty*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="i18n_get_comment"
              c:identifier="glade_property_i18n_get_comment">
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="property" transfer-ownership="none">
            <type name="Property" c:type="GladeProperty*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="i18n_get_context"
              c:identifier="glade_property_i18n_get_context">
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="property" transfer-ownership="none">
            <type name="Property" c:type="GladeProperty*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="i18n_get_translatable"
              c:identifier="glade_property_i18n_get_translatable">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="property" transfer-ownership="none">
            <type name="Property" c:type="GladeProperty*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="i18n_set_comment"
              c:identifier="glade_property_i18n_set_comment">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="property" transfer-ownership="none">
            <type name="Property" c:type="GladeProperty*"/>
          </instance-parameter>
          <parameter name="str" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="i18n_set_context"
              c:identifier="glade_property_i18n_set_context">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="property" transfer-ownership="none">
            <type name="Property" c:type="GladeProperty*"/>
          </instance-parameter>
          <parameter name="str" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="i18n_set_translatable"
              c:identifier="glade_property_i18n_set_translatable">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="property" transfer-ownership="none">
            <type name="Property" c:type="GladeProperty*"/>
          </instance-parameter>
          <parameter name="translatable" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="inline_value" c:identifier="glade_property_inline_value">
        <return-value transfer-ownership="full">
          <type name="GObject.Value" c:type="GValue*"/>
        </return-value>
        <parameters>
          <instance-parameter name="property" transfer-ownership="none">
            <type name="Property" c:type="GladeProperty*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="load" c:identifier="glade_property_load">
        <doc xml:space="preserve">Loads the value of @property from the coresponding object instance</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="property" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProperty</doc>
            <type name="Property" c:type="GladeProperty*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="make_string" c:identifier="glade_property_make_string">
        <return-value transfer-ownership="full">
          <type name="utf8" c:type="gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="property" transfer-ownership="none">
            <type name="Property" c:type="GladeProperty*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="original_default"
              c:identifier="glade_property_original_default">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">Whether this property is at its original default value</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="property" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeProperty</doc>
            <type name="Property" c:type="GladeProperty*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="original_reset"
              c:identifier="glade_property_original_reset">
        <doc xml:space="preserve">Resets this property to its original default value</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="property" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeProperty</doc>
            <type name="Property" c:type="GladeProperty*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="read" c:identifier="glade_property_read">
        <doc xml:space="preserve">Read the value and any attributes for @property from @node, assumes
@property is being loaded for @project

Note that object values will only be resolved after the project is
completely loaded</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="property" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProperty or #NULL</doc>
            <type name="Property" c:type="GladeProperty*"/>
          </instance-parameter>
          <parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">the #GladeProject</doc>
            <type name="Project" c:type="GladeProject*"/>
          </parameter>
          <parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve">the #GladeXmlNode to read, will either be a 'widget'
       node or a 'child' node for packing properties.</doc>
            <type name="XmlNode" c:type="GladeXmlNode*"/>
          </parameter>
        </parameters>
      </method>
      <method name="remove_object" c:identifier="glade_property_remove_object">
        <doc xml:space="preserve">Removes @object from the object list in @property.

Note: This function expects @property to be a #GladeParamSpecObjects
or #GParamSpecObject type property.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="property" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProperty</doc>
            <type name="Property" c:type="GladeProperty*"/>
          </instance-parameter>
          <parameter name="object" transfer-ownership="none">
            <doc xml:space="preserve">The #GObject to add</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
        </parameters>
      </method>
      <method name="reset" c:identifier="glade_property_reset">
        <doc xml:space="preserve">Resets this property to its default value</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="property" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeProperty</doc>
            <type name="Property" c:type="GladeProperty*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set" c:identifier="glade_property_set" introspectable="0">
        <doc xml:space="preserve">Sets the property's value (in a convenient way)</doc>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="property" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProperty</doc>
            <type name="Property" c:type="GladeProperty*"/>
          </instance-parameter>
          <parameter name="..." transfer-ownership="none">
            <doc xml:space="preserve">the value to set</doc>
            <varargs/>
          </parameter>
        </parameters>
      </method>
      <method name="set_enabled" c:identifier="glade_property_set_enabled">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="property" transfer-ownership="none">
            <type name="Property" c:type="GladeProperty*"/>
          </instance-parameter>
          <parameter name="enabled" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_save_always"
              c:identifier="glade_property_set_save_always">
        <doc xml:space="preserve">Sets whether this property should be special cased
to always be saved regardless of its default value.
(used for some special cases like properties
that are assigned initial values in composite widgets
or derived widget code).</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="property" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeProperty</doc>
            <type name="Property" c:type="GladeProperty*"/>
          </instance-parameter>
          <parameter name="setting" transfer-ownership="none">
            <doc xml:space="preserve">the value to set</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_sensitive" c:identifier="glade_property_set_sensitive">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="property" transfer-ownership="none">
            <type name="Property" c:type="GladeProperty*"/>
          </instance-parameter>
          <parameter name="sensitive" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
          <parameter name="reason" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_support_warning"
              c:identifier="glade_property_set_support_warning">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="property" transfer-ownership="none">
            <type name="Property" c:type="GladeProperty*"/>
          </instance-parameter>
          <parameter name="disable" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
          <parameter name="reason" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_va_list"
              c:identifier="glade_property_set_va_list"
              introspectable="0">
        <doc xml:space="preserve">Sets the property's value</doc>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="property" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProperty</doc>
            <type name="Property" c:type="GladeProperty*"/>
          </instance-parameter>
          <parameter name="vl" transfer-ownership="none">
            <doc xml:space="preserve">a va_list with value to set</doc>
            <type name="va_list" c:type="va_list"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_value" c:identifier="glade_property_set_value">
        <doc xml:space="preserve">Sets the property's value</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">Whether the property was successfully set.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="property" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProperty</doc>
            <type name="Property" c:type="GladeProperty*"/>
          </instance-parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve">a #GValue</doc>
            <type name="GObject.Value" c:type="const GValue*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_widget" c:identifier="glade_property_set_widget">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="property" transfer-ownership="none">
            <type name="Property" c:type="GladeProperty*"/>
          </instance-parameter>
          <parameter name="widget" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
        </parameters>
      </method>
      <method name="sync" c:identifier="glade_property_sync">
        <doc xml:space="preserve">Synchronize the object with this property</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="property" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProperty</doc>
            <type name="Property" c:type="GladeProperty*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="warn_usage" c:identifier="glade_property_warn_usage">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="property" transfer-ownership="none">
            <type name="Property" c:type="GladeProperty*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="write" c:identifier="glade_property_write">
        <doc xml:space="preserve">Write @property to @node</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="property" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProperty</doc>
            <type name="Property" c:type="GladeProperty*"/>
          </instance-parameter>
          <parameter name="context" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeXmlContext</doc>
            <type name="XmlContext" c:type="GladeXmlContext*"/>
          </parameter>
          <parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeXmlNode</doc>
            <type name="XmlNode" c:type="GladeXmlNode*"/>
          </parameter>
        </parameters>
      </method>
      <property name="class"
                writable="1"
                construct-only="1"
                transfer-ownership="none">
        <type name="gpointer" c:type="gpointer"/>
      </property>
      <property name="enabled" writable="1" transfer-ownership="none">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="i18n-comment" writable="1" transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="i18n-context" writable="1" transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="i18n-translatable"
                writable="1"
                transfer-ownership="none">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="sensitive" writable="1" transfer-ownership="none">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="state" transfer-ownership="none">
        <type name="gint" c:type="gint"/>
      </property>
      <field name="parent_instance">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
      <field name="priv">
        <type name="PropertyPrivate" c:type="GladePropertyPrivate*"/>
      </field>
      <glib:signal name="tooltip-changed" when="last">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="object" transfer-ownership="none">
            <type name="utf8" c:type="gchar*"/>
          </parameter>
          <parameter name="p0" transfer-ownership="none">
            <type name="utf8" c:type="gchar*"/>
          </parameter>
          <parameter name="p1" transfer-ownership="none">
            <type name="utf8" c:type="gchar*"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="value-changed" when="last">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="object"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
          <parameter name="p0"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </glib:signal>
    </class>
    <record name="PropertyClass"
            c:type="GladePropertyClass"
            disguised="1"
            glib:is-gtype-struct-for="Property">
      <method name="atk" c:identifier="glade_property_class_atk">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="property_class" transfer-ownership="none">
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="clone"
              c:identifier="glade_property_class_clone"
              introspectable="0">
        <return-value>
          <doc xml:space="preserve">a new #GladePropertyClass cloned from @property_class</doc>
          <type name="PropertyClass" c:type="GladePropertyClass*"/>
        </return-value>
        <parameters>
          <instance-parameter name="property_class" transfer-ownership="none">
            <doc xml:space="preserve">a #GladePropertyClass</doc>
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
          <parameter name="reset_version" transfer-ownership="none">
            <doc xml:space="preserve">whether the introduction version should be reset in the clone</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="common" c:identifier="glade_property_class_common">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="property_class" transfer-ownership="none">
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="compare" c:identifier="glade_property_class_compare">
        <doc xml:space="preserve">Compares value1 with value2 according to @klass.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">-1, 0 or +1, if value1 is found to be less than,
equal to or greater than value2, respectively.</doc>
          <type name="gint" c:type="gint"/>
        </return-value>
        <parameters>
          <instance-parameter name="klass" transfer-ownership="none">
            <doc xml:space="preserve">a #GladePropertyClass</doc>
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
          <parameter name="value1" transfer-ownership="none">
            <doc xml:space="preserve">a GValue of correct type for @klass</doc>
            <type name="GObject.Value" c:type="const GValue*"/>
          </parameter>
          <parameter name="value2" transfer-ownership="none">
            <doc xml:space="preserve">a GValue of correct type for @klass</doc>
            <type name="GObject.Value" c:type="const GValue*"/>
          </parameter>
        </parameters>
      </method>
      <method name="create_type"
              c:identifier="glade_property_class_create_type">
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="property_class" transfer-ownership="none">
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="custom_layout"
              c:identifier="glade_property_class_custom_layout">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="property_class" transfer-ownership="none">
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="deprecated" c:identifier="glade_property_class_deprecated">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="property_class" transfer-ownership="none">
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="free" c:identifier="glade_property_class_free">
        <doc xml:space="preserve">Frees @klass and its associated memory.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="property_class" transfer-ownership="none">
            <doc xml:space="preserve">a #GladePropertyClass</doc>
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_adaptor"
              c:identifier="glade_property_class_get_adaptor"
              introspectable="0">
        <return-value>
          <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
        </return-value>
        <parameters>
          <instance-parameter name="property_class" transfer-ownership="none">
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_construct_only"
              c:identifier="glade_property_class_get_construct_only">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="property_class" transfer-ownership="none">
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_default"
              c:identifier="glade_property_class_get_default">
        <return-value transfer-ownership="none">
          <type name="GObject.Value" c:type="const GValue*"/>
        </return-value>
        <parameters>
          <instance-parameter name="property_class" transfer-ownership="none">
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_from_gvalue"
              c:identifier="glade_property_class_get_from_gvalue"
              introspectable="0">
        <doc xml:space="preserve">Assignes the provided return location to @value</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="klass" transfer-ownership="none">
            <doc xml:space="preserve">A #GladePropertyClass</doc>
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve">A #GValue to set</doc>
            <type name="GObject.Value" c:type="GValue*"/>
          </parameter>
          <parameter name="..." transfer-ownership="none">
            <doc xml:space="preserve">a return location of the correct type</doc>
            <varargs/>
          </parameter>
        </parameters>
      </method>
      <method name="get_ignore" c:identifier="glade_property_class_get_ignore">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="property_class" transfer-ownership="none">
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_is_packing"
              c:identifier="glade_property_class_get_is_packing">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="property_class" transfer-ownership="none">
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_name" c:identifier="glade_property_class_get_name">
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="property_class" transfer-ownership="none">
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_original_default"
              c:identifier="glade_property_class_get_original_default">
        <return-value transfer-ownership="none">
          <type name="GObject.Value" c:type="const GValue*"/>
        </return-value>
        <parameters>
          <instance-parameter name="property_class" transfer-ownership="none">
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_pspec"
              c:identifier="glade_property_class_get_pspec"
              introspectable="0">
        <return-value>
          <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
        </return-value>
        <parameters>
          <instance-parameter name="property_class" transfer-ownership="none">
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_tooltip"
              c:identifier="glade_property_class_get_tooltip">
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="property_class" transfer-ownership="none">
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_virtual"
              c:identifier="glade_property_class_get_virtual">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="property_class" transfer-ownership="none">
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="id" c:identifier="glade_property_class_id">
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="property_class" transfer-ownership="none">
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="is_object" c:identifier="glade_property_class_is_object">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether or not this is an object property
that refers to another object in this project.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="property_class" transfer-ownership="none">
            <doc xml:space="preserve">A #GladePropertyClass</doc>
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="is_visible" c:identifier="glade_property_class_is_visible">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether or not to show this property in the editor</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="property_class" transfer-ownership="none">
            <doc xml:space="preserve">A #GladePropertyClass</doc>
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="load_defaults_from_spec"
              c:identifier="glade_property_class_load_defaults_from_spec">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="property_class" transfer-ownership="none">
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="make_adjustment"
              c:identifier="glade_property_class_make_adjustment"
              introspectable="0">
        <doc xml:space="preserve">Creates and appropriate GtkAdjustment for use in the editor</doc>
        <return-value>
          <doc xml:space="preserve">An appropriate #GtkAdjustment for use in the Property editor</doc>
          <type name="Gtk.Adjustment" c:type="GtkAdjustment*"/>
        </return-value>
        <parameters>
          <instance-parameter name="property_class" transfer-ownership="none">
            <doc xml:space="preserve">a pointer to the property class</doc>
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="make_gvalue"
              c:identifier="glade_property_class_make_gvalue"
              introspectable="0">
        <return-value transfer-ownership="full">
          <doc xml:space="preserve">A #GValue created based on the @property_class
         and the provided argument.</doc>
          <type name="GObject.Value" c:type="GValue*"/>
        </return-value>
        <parameters>
          <instance-parameter name="klass" transfer-ownership="none">
            <doc xml:space="preserve">A #GladePropertyClass</doc>
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
          <parameter name="..." transfer-ownership="none">
            <doc xml:space="preserve">an argument of the correct type specified by @property_class</doc>
            <varargs/>
          </parameter>
        </parameters>
      </method>
      <method name="make_gvalue_from_string"
              c:identifier="glade_property_class_make_gvalue_from_string">
        <return-value transfer-ownership="full">
          <doc xml:space="preserve">A #GValue created based on the @property_class
         and @string criteria.</doc>
          <type name="GObject.Value" c:type="GValue*"/>
        </return-value>
        <parameters>
          <instance-parameter name="property_class" transfer-ownership="none">
            <doc xml:space="preserve">A #GladePropertyClass</doc>
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
          <parameter name="string" transfer-ownership="none">
            <doc xml:space="preserve">a string representation of this property</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">the #GladeProject that the property should be resolved for</doc>
            <type name="Project" c:type="GladeProject*"/>
          </parameter>
        </parameters>
      </method>
      <method name="make_gvalue_from_vl"
              c:identifier="glade_property_class_make_gvalue_from_vl"
              introspectable="0">
        <return-value transfer-ownership="full">
          <doc xml:space="preserve">A #GValue created based on the @property_class
         and a @vl arg of the correct type.</doc>
          <type name="GObject.Value" c:type="GValue*"/>
        </return-value>
        <parameters>
          <instance-parameter name="property_class" transfer-ownership="none">
            <doc xml:space="preserve">A #GladePropertyClass</doc>
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
          <parameter name="vl" transfer-ownership="none">
            <doc xml:space="preserve">a #va_list holding one argument of the correct type
     specified by @property_class</doc>
            <type name="va_list" c:type="va_list"/>
          </parameter>
        </parameters>
      </method>
      <method name="make_string_from_gvalue"
              c:identifier="glade_property_class_make_string_from_gvalue">
        <return-value transfer-ownership="full">
          <doc xml:space="preserve">A newly allocated string representation of @value</doc>
          <type name="utf8" c:type="gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="property_class" transfer-ownership="none">
            <doc xml:space="preserve">A #GladePropertyClass</doc>
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve">A #GValue</doc>
            <type name="GObject.Value" c:type="const GValue*"/>
          </parameter>
        </parameters>
      </method>
      <method name="match" c:identifier="glade_property_class_match">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether @klass and @comp are a match or not
         (properties in seperate decendant heirarchies that
          have the same name are not matches).</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="klass" transfer-ownership="none">
            <doc xml:space="preserve">a #GladePropertyClass</doc>
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
          <parameter name="comp" transfer-ownership="none">
            <doc xml:space="preserve">a #GladePropertyClass</doc>
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </parameter>
        </parameters>
      </method>
      <method name="multiline" c:identifier="glade_property_class_multiline">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="property_class" transfer-ownership="none">
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="needs_sync" c:identifier="glade_property_class_needs_sync">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="property_class" transfer-ownership="none">
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="optional" c:identifier="glade_property_class_optional">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="property_class" transfer-ownership="none">
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="optional_default"
              c:identifier="glade_property_class_optional_default">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="property_class" transfer-ownership="none">
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="parentless_widget"
              c:identifier="glade_property_class_parentless_widget">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="property_class" transfer-ownership="none">
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="query" c:identifier="glade_property_class_query">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="property_class" transfer-ownership="none">
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="save" c:identifier="glade_property_class_save">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="property_class" transfer-ownership="none">
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="save_always"
              c:identifier="glade_property_class_save_always">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="property_class" transfer-ownership="none">
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_adaptor"
              c:identifier="glade_property_class_set_adaptor">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="property_class" transfer-ownership="none">
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
          <parameter name="adaptor" transfer-ownership="none">
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_construct_only"
              c:identifier="glade_property_class_set_construct_only">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="property_class" transfer-ownership="none">
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
          <parameter name="construct_only" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_ignore" c:identifier="glade_property_class_set_ignore">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="property_class" transfer-ownership="none">
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
          <parameter name="ignore" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_is_packing"
              c:identifier="glade_property_class_set_is_packing">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="property_class" transfer-ownership="none">
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
          <parameter name="is_packing" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_name" c:identifier="glade_property_class_set_name">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="property_class" transfer-ownership="none">
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
          <parameter name="name" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_pspec" c:identifier="glade_property_class_set_pspec">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="property_class" transfer-ownership="none">
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
          <parameter name="pspec" transfer-ownership="none">
            <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_tooltip"
              c:identifier="glade_property_class_set_tooltip">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="property_class" transfer-ownership="none">
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
          <parameter name="tooltip" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_virtual"
              c:identifier="glade_property_class_set_virtual">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="property_class" transfer-ownership="none">
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
          <parameter name="value" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_vl_from_gvalue"
              c:identifier="glade_property_class_set_vl_from_gvalue"
              introspectable="0">
        <doc xml:space="preserve">Sets @vl from @value based on @klass criteria.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="klass" transfer-ownership="none">
            <doc xml:space="preserve">A #GladePropertyClass</doc>
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve">A #GValue to set</doc>
            <type name="GObject.Value" c:type="GValue*"/>
          </parameter>
          <parameter name="vl" transfer-ownership="none">
            <doc xml:space="preserve">a #va_list holding one argument of the correct type
     specified by @klass</doc>
            <type name="va_list" c:type="va_list"/>
          </parameter>
        </parameters>
      </method>
      <method name="since_major"
              c:identifier="glade_property_class_since_major">
        <return-value transfer-ownership="none">
          <type name="guint16" c:type="guint16"/>
        </return-value>
        <parameters>
          <instance-parameter name="property_class" transfer-ownership="none">
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="since_minor"
              c:identifier="glade_property_class_since_minor">
        <return-value transfer-ownership="none">
          <type name="guint16" c:type="guint16"/>
        </return-value>
        <parameters>
          <instance-parameter name="property_class" transfer-ownership="none">
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="stock" c:identifier="glade_property_class_stock">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="property_class" transfer-ownership="none">
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="stock_icon" c:identifier="glade_property_class_stock_icon">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="property_class" transfer-ownership="none">
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="themed_icon"
              c:identifier="glade_property_class_themed_icon">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="property_class" transfer-ownership="none">
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="transfer_on_paste"
              c:identifier="glade_property_class_transfer_on_paste">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="property_class" transfer-ownership="none">
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="translatable"
              c:identifier="glade_property_class_translatable">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="property_class" transfer-ownership="none">
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="void_value" c:identifier="glade_property_class_void_value">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">Whether @value for this @klass is voided; a voided value
         can be a %NULL value for boxed or object type param specs.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="klass" transfer-ownership="none">
            <doc xml:space="preserve">a #GladePropertyClass</doc>
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
          <parameter name="value" transfer-ownership="none">
            <type name="GObject.Value" c:type="GValue*"/>
          </parameter>
        </parameters>
      </method>
      <method name="weight" c:identifier="glade_property_class_weight">
        <return-value transfer-ownership="none">
          <type name="gdouble" c:type="gdouble"/>
        </return-value>
        <parameters>
          <instance-parameter name="property_class" transfer-ownership="none">
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </instance-parameter>
        </parameters>
      </method>
      <function name="get_default_from_spec"
                c:identifier="glade_property_class_get_default_from_spec">
        <return-value transfer-ownership="full">
          <type name="GObject.Value" c:type="GValue*"/>
        </return-value>
        <parameters>
          <parameter name="spec" transfer-ownership="none">
            <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
          </parameter>
        </parameters>
      </function>
      <function name="new"
                c:identifier="glade_property_class_new"
                introspectable="0">
        <return-value>
          <doc xml:space="preserve">a new #GladePropertyClass</doc>
          <type name="PropertyClass" c:type="GladePropertyClass*"/>
        </return-value>
        <parameters>
          <parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">The #GladeWidgetAdaptor to create this property for</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </parameter>
          <parameter name="id" transfer-ownership="none">
            <doc xml:space="preserve">the id for the new property class</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="new_from_spec"
                c:identifier="glade_property_class_new_from_spec"
                introspectable="0">
        <return-value>
          <doc xml:space="preserve">a newly created #GladePropertyClass based on @spec
         or %NULL if its unsupported.</doc>
          <type name="PropertyClass" c:type="GladePropertyClass*"/>
        </return-value>
        <parameters>
          <parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A generic pointer (i.e. a #GladeWidgetClass)</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </parameter>
          <parameter name="spec" transfer-ownership="none">
            <doc xml:space="preserve">A #GParamSpec</doc>
            <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
          </parameter>
        </parameters>
      </function>
      <function name="new_from_spec_full"
                c:identifier="glade_property_class_new_from_spec_full"
                introspectable="0">
        <return-value>
          <type name="PropertyClass" c:type="GladePropertyClass*"/>
        </return-value>
        <parameters>
          <parameter name="adaptor" transfer-ownership="none">
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </parameter>
          <parameter name="spec" transfer-ownership="none">
            <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
          </parameter>
          <parameter name="need_handle" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </function>
      <function name="set_weights"
                c:identifier="glade_property_class_set_weights"
                introspectable="0">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="properties" transfer-ownership="none">
            <type name="GLib.List" c:type="GList**">
              <type name="gpointer" c:type="gpointer"/>
            </type>
          </parameter>
          <parameter name="parent" transfer-ownership="none">
            <type name="GType" c:type="GType"/>
          </parameter>
        </parameters>
      </function>
      <function name="update_from_node"
                c:identifier="glade_property_class_update_from_node">
        <doc xml:space="preserve">Updates the @property_class with the contents of the node in the xml
file. Only the values found in the xml file are overridden.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">%TRUE on success. @property_class is set to NULL if the property
         has Disabled="TRUE".</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve">the property node</doc>
            <type name="XmlNode" c:type="GladeXmlNode*"/>
          </parameter>
          <parameter name="object_type" transfer-ownership="none">
            <doc xml:space="preserve">the #GType of the owning object</doc>
            <type name="GType" c:type="GType"/>
          </parameter>
          <parameter name="property_class" transfer-ownership="none">
            <doc xml:space="preserve">a pointer to the property class</doc>
            <type name="PropertyClass" c:type="GladePropertyClass**"/>
          </parameter>
          <parameter name="domain" transfer-ownership="none">
            <doc xml:space="preserve">the domain to translate catalog strings from</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
    </record>
    <record name="PropertyKlass" c:type="GladePropertyKlass">
      <field name="parent_class" writable="1">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
      <field name="dup" introspectable="0">
        <callback name="dup" introspectable="0">
          <return-value>
            <type name="Property" c:type="GladeProperty*"/>
          </return-value>
          <parameters>
            <parameter name="arg0" transfer-ownership="none">
              <type name="Property" c:type="GladeProperty*"/>
            </parameter>
            <parameter name="arg1" transfer-ownership="none">
              <type name="Widget" c:type="GladeWidget*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="equals_value">
        <callback name="equals_value">
          <return-value transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </return-value>
          <parameters>
            <parameter name="arg0" transfer-ownership="none">
              <type name="Property" c:type="GladeProperty*"/>
            </parameter>
            <parameter name="arg1" transfer-ownership="none">
              <type name="GObject.Value" c:type="const GValue*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="set_value">
        <callback name="set_value">
          <return-value transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </return-value>
          <parameters>
            <parameter name="arg0" transfer-ownership="none">
              <type name="Property" c:type="GladeProperty*"/>
            </parameter>
            <parameter name="arg1" transfer-ownership="none">
              <type name="GObject.Value" c:type="const GValue*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="get_value">
        <callback name="get_value">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="arg0" transfer-ownership="none">
              <type name="Property" c:type="GladeProperty*"/>
            </parameter>
            <parameter name="arg1" transfer-ownership="none">
              <type name="GObject.Value" c:type="GValue*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="sync">
        <callback name="sync">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="arg0" transfer-ownership="none">
              <type name="Property" c:type="GladeProperty*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="load">
        <callback name="load">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="arg0" transfer-ownership="none">
              <type name="Property" c:type="GladeProperty*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="value_changed">
        <callback name="value_changed">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="arg0" transfer-ownership="none">
              <type name="Property" c:type="GladeProperty*"/>
            </parameter>
            <parameter name="arg1" transfer-ownership="none">
              <type name="GObject.Value" c:type="GValue*"/>
            </parameter>
            <parameter name="arg2" transfer-ownership="none">
              <type name="GObject.Value" c:type="GValue*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="tooltip_changed">
        <callback name="tooltip_changed">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="arg0" transfer-ownership="none">
              <type name="Property" c:type="GladeProperty*"/>
            </parameter>
            <parameter name="arg1" transfer-ownership="none">
              <type name="utf8" c:type="const gchar*"/>
            </parameter>
            <parameter name="arg2" transfer-ownership="none">
              <type name="utf8" c:type="const gchar*"/>
            </parameter>
            <parameter name="arg3" transfer-ownership="none">
              <type name="utf8" c:type="const gchar*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="glade_reserved1">
        <callback name="glade_reserved1">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved2">
        <callback name="glade_reserved2">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved3">
        <callback name="glade_reserved3">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved4">
        <callback name="glade_reserved4">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved5">
        <callback name="glade_reserved5">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved6">
        <callback name="glade_reserved6">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
    </record>
    <class name="PropertyLabel"
           c:symbol-prefix="property_label"
           c:type="GladePropertyLabel"
           parent="Gtk.EventBox"
           glib:type-name="GladePropertyLabel"
           glib:get-type="glade_property_label_get_type"
           glib:type-struct="PropertyLabelClass">
      <implements name="Atk.ImplementorIface"/>
      <implements name="Editable"/>
      <implements name="Gtk.Buildable"/>
      <constructor name="new" c:identifier="glade_property_label_new">
        <return-value transfer-ownership="none">
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
      </constructor>
      <method name="get_append_colon"
              c:identifier="glade_property_label_get_append_colon">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="label" transfer-ownership="none">
            <type name="PropertyLabel" c:type="GladePropertyLabel*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_custom_text"
              c:identifier="glade_property_label_get_custom_text">
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="label" transfer-ownership="none">
            <type name="PropertyLabel" c:type="GladePropertyLabel*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_custom_tooltip"
              c:identifier="glade_property_label_get_custom_tooltip">
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="label" transfer-ownership="none">
            <type name="PropertyLabel" c:type="GladePropertyLabel*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_packing"
              c:identifier="glade_property_label_get_packing">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="label" transfer-ownership="none">
            <type name="PropertyLabel" c:type="GladePropertyLabel*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_property"
              c:identifier="glade_property_label_get_property"
              introspectable="0">
        <return-value>
          <type name="Property" c:type="GladeProperty*"/>
        </return-value>
        <parameters>
          <instance-parameter name="label" transfer-ownership="none">
            <type name="PropertyLabel" c:type="GladePropertyLabel*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_property_name"
              c:identifier="glade_property_label_get_property_name">
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="label" transfer-ownership="none">
            <type name="PropertyLabel" c:type="GladePropertyLabel*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_append_colon"
              c:identifier="glade_property_label_set_append_colon">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="label" transfer-ownership="none">
            <type name="PropertyLabel" c:type="GladePropertyLabel*"/>
          </instance-parameter>
          <parameter name="append_colon" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_custom_text"
              c:identifier="glade_property_label_set_custom_text">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="label" transfer-ownership="none">
            <type name="PropertyLabel" c:type="GladePropertyLabel*"/>
          </instance-parameter>
          <parameter name="custom_text" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_custom_tooltip"
              c:identifier="glade_property_label_set_custom_tooltip">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="label" transfer-ownership="none">
            <type name="PropertyLabel" c:type="GladePropertyLabel*"/>
          </instance-parameter>
          <parameter name="custom_tooltip" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_packing"
              c:identifier="glade_property_label_set_packing">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="label" transfer-ownership="none">
            <type name="PropertyLabel" c:type="GladePropertyLabel*"/>
          </instance-parameter>
          <parameter name="packing" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_property"
              c:identifier="glade_property_label_set_property">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="label" transfer-ownership="none">
            <type name="PropertyLabel" c:type="GladePropertyLabel*"/>
          </instance-parameter>
          <parameter name="property" transfer-ownership="none">
            <type name="Property" c:type="GladeProperty*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_property_name"
              c:identifier="glade_property_label_set_property_name">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="label" transfer-ownership="none">
            <type name="PropertyLabel" c:type="GladePropertyLabel*"/>
          </instance-parameter>
          <parameter name="property_name" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <property name="append-colon" writable="1" transfer-ownership="none">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="custom-text" writable="1" transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="custom-tooltip" writable="1" transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="packing" writable="1" transfer-ownership="none">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="property" writable="1" transfer-ownership="none">
        <type name="Property"/>
      </property>
      <property name="property-name" writable="1" transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <field name="box" readable="0" private="1">
        <type name="Gtk.EventBox" c:type="GtkEventBox"/>
      </field>
      <field name="priv" readable="0" private="1">
        <type name="PropertyLabelPrivate" c:type="GladePropertyLabelPrivate*"/>
      </field>
    </class>
    <record name="PropertyLabelClass"
            c:type="GladePropertyLabelClass"
            glib:is-gtype-struct-for="PropertyLabel">
      <field name="parent_class">
        <type name="Gtk.EventBoxClass" c:type="GtkEventBoxClass"/>
      </field>
    </record>
    <record name="PropertyLabelPrivate"
            c:type="GladePropertyLabelPrivate"
            disguised="1">
    </record>
    <record name="PropertyPrivate" c:type="GladePropertyPrivate" disguised="1">
    </record>
    <class name="PropertyShell"
           c:symbol-prefix="property_shell"
           c:type="GladePropertyShell"
           parent="Gtk.Box"
           glib:type-name="GladePropertyShell"
           glib:get-type="glade_property_shell_get_type"
           glib:type-struct="PropertyShellClass">
      <implements name="Atk.ImplementorIface"/>
      <implements name="Editable"/>
      <implements name="Gtk.Buildable"/>
      <implements name="Gtk.Orientable"/>
      <constructor name="new" c:identifier="glade_property_shell_new">
        <return-value transfer-ownership="none">
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
      </constructor>
      <method name="get_custom_text"
              c:identifier="glade_property_shell_get_custom_text">
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="shell" transfer-ownership="none">
            <type name="PropertyShell" c:type="GladePropertyShell*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_disable_check"
              c:identifier="glade_property_shell_get_disable_check">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="shell" transfer-ownership="none">
            <type name="PropertyShell" c:type="GladePropertyShell*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_packing"
              c:identifier="glade_property_shell_get_packing">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="shell" transfer-ownership="none">
            <type name="PropertyShell" c:type="GladePropertyShell*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_property_name"
              c:identifier="glade_property_shell_get_property_name">
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="shell" transfer-ownership="none">
            <type name="PropertyShell" c:type="GladePropertyShell*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_use_command"
              c:identifier="glade_property_shell_get_use_command">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="shell" transfer-ownership="none">
            <type name="PropertyShell" c:type="GladePropertyShell*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_custom_text"
              c:identifier="glade_property_shell_set_custom_text">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="shell" transfer-ownership="none">
            <type name="PropertyShell" c:type="GladePropertyShell*"/>
          </instance-parameter>
          <parameter name="custom_text" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_disable_check"
              c:identifier="glade_property_shell_set_disable_check">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="shell" transfer-ownership="none">
            <type name="PropertyShell" c:type="GladePropertyShell*"/>
          </instance-parameter>
          <parameter name="disable_check" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_packing"
              c:identifier="glade_property_shell_set_packing">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="shell" transfer-ownership="none">
            <type name="PropertyShell" c:type="GladePropertyShell*"/>
          </instance-parameter>
          <parameter name="packing" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_property_name"
              c:identifier="glade_property_shell_set_property_name">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="shell" transfer-ownership="none">
            <type name="PropertyShell" c:type="GladePropertyShell*"/>
          </instance-parameter>
          <parameter name="property_name" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_use_command"
              c:identifier="glade_property_shell_set_use_command">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="shell" transfer-ownership="none">
            <type name="PropertyShell" c:type="GladePropertyShell*"/>
          </instance-parameter>
          <parameter name="use_command" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <property name="custom-text" writable="1" transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="disable-check" writable="1" transfer-ownership="none">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="editor-type"
                readable="0"
                writable="1"
                construct-only="1"
                transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="packing" writable="1" transfer-ownership="none">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="property-name" writable="1" transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="use-command" writable="1" transfer-ownership="none">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <field name="box" readable="0" private="1">
        <type name="Gtk.Box" c:type="GtkBox"/>
      </field>
      <field name="priv" readable="0" private="1">
        <type name="PropertyShellPrivate" c:type="GladePropertyShellPrivate*"/>
      </field>
      <glib:signal name="post-commit" when="last">
        <doc xml:space="preserve">Emitted after a property's value is committed, can be useful to serialize
commands after a property's commit command from custom editors.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="arg1"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve">the new #GValue to commit.</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="pre-commit" when="last">
        <doc xml:space="preserve">Emitted before a property's value is committed, can be useful to serialize
commands before a property's commit command from custom editors.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="arg1"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve">the new #GValue to commit.</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </glib:signal>
    </class>
    <record name="PropertyShellClass"
            c:type="GladePropertyShellClass"
            glib:is-gtype-struct-for="PropertyShell">
      <field name="parent_class">
        <type name="Gtk.BoxClass" c:type="GtkBoxClass"/>
      </field>
    </record>
    <record name="PropertyShellPrivate"
            c:type="GladePropertyShellPrivate"
            disguised="1">
    </record>
    <bitfield name="PropertyState"
              glib:type-name="GladePropertyState"
              glib:get-type="glade_property_state_get_type"
              c:type="GladePropertyState">
      <member name="normal"
              value="0"
              c:identifier="GLADE_STATE_NORMAL"
              glib:nick="normal">
      </member>
      <member name="changed"
              value="1"
              c:identifier="GLADE_STATE_CHANGED"
              glib:nick="changed">
      </member>
      <member name="unsupported"
              value="2"
              c:identifier="GLADE_STATE_UNSUPPORTED"
              glib:nick="unsupported">
      </member>
      <member name="support_disabled"
              value="4"
              c:identifier="GLADE_STATE_SUPPORT_DISABLED"
              glib:nick="support-disabled">
      </member>
    </bitfield>
    <callback name="ReadWidgetFunc" c:type="GladeReadWidgetFunc">
      <doc xml:space="preserve">This function is called to update @widget from @node.</doc>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="adaptor" transfer-ownership="none">
          <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
          <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
        </parameter>
        <parameter name="widget" transfer-ownership="none">
          <doc xml:space="preserve">The #GladeWidget</doc>
          <type name="Widget" c:type="GladeWidget*"/>
        </parameter>
        <parameter name="node" transfer-ownership="none">
          <doc xml:space="preserve">The #GladeXmlNode</doc>
          <type name="XmlNode" c:type="GladeXmlNode*"/>
        </parameter>
      </parameters>
    </callback>
    <callback name="RemoveChildFunc" c:type="GladeRemoveChildFunc">
      <doc xml:space="preserve">Called to remove @child from @parent.</doc>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="adaptor" transfer-ownership="none">
          <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
          <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
        </parameter>
        <parameter name="parent" transfer-ownership="none">
          <doc xml:space="preserve">A #GObject container</doc>
          <type name="GObject.Object" c:type="GObject*"/>
        </parameter>
        <parameter name="child" transfer-ownership="none">
          <doc xml:space="preserve">The #GObject child</doc>
          <type name="GObject.Object" c:type="GObject*"/>
        </parameter>
      </parameters>
    </callback>
    <callback name="ReplaceChildFunc" c:type="GladeReplaceChildFunc">
      <doc xml:space="preserve">Called to swap placeholders with project objects
in containers.</doc>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="adaptor" transfer-ownership="none">
          <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
          <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
        </parameter>
        <parameter name="container" transfer-ownership="none">
          <doc xml:space="preserve">The #GObject container</doc>
          <type name="GObject.Object" c:type="GObject*"/>
        </parameter>
        <parameter name="old_obj" transfer-ownership="none">
          <doc xml:space="preserve">The old #GObject child</doc>
          <type name="GObject.Object" c:type="GObject*"/>
        </parameter>
        <parameter name="new_obj" transfer-ownership="none">
          <doc xml:space="preserve">The new #GObject child</doc>
          <type name="GObject.Object" c:type="GObject*"/>
        </parameter>
      </parameters>
    </callback>
    <callback name="SetPropertyFunc" c:type="GladeSetPropertyFunc">
      <doc xml:space="preserve">This delagate function is used to apply the property value on
the runtime object.

Sets @value on @object for a given #GladePropertyClass</doc>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="adaptor" transfer-ownership="none">
          <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
          <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
        </parameter>
        <parameter name="object" transfer-ownership="none">
          <doc xml:space="preserve">The #GObject</doc>
          <type name="GObject.Object" c:type="GObject*"/>
        </parameter>
        <parameter name="property_name" transfer-ownership="none">
          <doc xml:space="preserve">The property identifier</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="value" transfer-ownership="none">
          <doc xml:space="preserve">The #GValue</doc>
          <type name="GObject.Value" c:type="const GValue*"/>
        </parameter>
      </parameters>
    </callback>
    <class name="Signal"
           c:symbol-prefix="signal"
           c:type="GladeSignal"
           parent="GObject.Object"
           glib:type-name="GladeSignal"
           glib:get-type="glade_signal_get_type"
           glib:type-struct="SignalClass">
      <constructor name="new" c:identifier="glade_signal_new">
        <doc xml:space="preserve">Creates a new #GladeSignal with the given parameters.</doc>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve">the new #GladeSignal</doc>
          <type name="Signal" c:type="GladeSignal*"/>
        </return-value>
        <parameters>
          <parameter name="sig_class" transfer-ownership="none">
            <type name="SignalClass" c:type="const GladeSignalClass*"/>
          </parameter>
          <parameter name="handler" transfer-ownership="none">
            <doc xml:space="preserve">a handler function for the signal</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="userdata" transfer-ownership="none">
            <doc xml:space="preserve">the userdata for this signal</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="after" transfer-ownership="none">
            <doc xml:space="preserve">whether this handler should be called after the default emission phase</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
          <parameter name="swapped" transfer-ownership="none">
            <doc xml:space="preserve">whether the handler's user data should be swapped with the emitter instance.</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </constructor>
      <function name="read"
                c:identifier="glade_signal_read"
                introspectable="0">
        <doc xml:space="preserve">Reads and creates a ner #GladeSignal based on @node</doc>
        <return-value>
          <doc xml:space="preserve">A newly created #GladeSignal</doc>
          <type name="Signal" c:type="GladeSignal*"/>
        </return-value>
        <parameters>
          <parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve">The #GladeXmlNode to read</doc>
            <type name="XmlNode" c:type="GladeXmlNode*"/>
          </parameter>
          <parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">The #GladeWidgetAdaptor for thw widget</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </parameter>
        </parameters>
      </function>
      <method name="clone"
              c:identifier="glade_signal_clone"
              introspectable="0">
        <return-value>
          <doc xml:space="preserve">a new #GladeSignal with the same attributes as @signal</doc>
          <type name="Signal" c:type="GladeSignal*"/>
        </return-value>
        <parameters>
          <instance-parameter name="signal" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeSignal</doc>
            <type name="Signal" c:type="const GladeSignal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="equal" c:identifier="glade_signal_equal">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">%TRUE if @sig1 and @sig2 have identical attributes, %FALSE otherwise</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="sig1" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeSignal</doc>
            <type name="Signal" c:type="const GladeSignal*"/>
          </instance-parameter>
          <parameter name="sig2" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeSignal</doc>
            <type name="Signal" c:type="const GladeSignal*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_after" c:identifier="glade_signal_get_after">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="signal" transfer-ownership="none">
            <type name="Signal" c:type="const GladeSignal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_class" c:identifier="glade_signal_get_class">
        <return-value transfer-ownership="none">
          <type name="SignalClass" c:type="const GladeSignalClass*"/>
        </return-value>
        <parameters>
          <instance-parameter name="signal" transfer-ownership="none">
            <type name="Signal" c:type="const GladeSignal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_detail" c:identifier="glade_signal_get_detail">
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="signal" transfer-ownership="none">
            <type name="Signal" c:type="const GladeSignal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_handler" c:identifier="glade_signal_get_handler">
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="signal" transfer-ownership="none">
            <type name="Signal" c:type="const GladeSignal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_name" c:identifier="glade_signal_get_name">
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="signal" transfer-ownership="none">
            <type name="Signal" c:type="const GladeSignal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_support_warning"
              c:identifier="glade_signal_get_support_warning">
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="signal" transfer-ownership="none">
            <type name="Signal" c:type="const GladeSignal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_swapped" c:identifier="glade_signal_get_swapped">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="signal" transfer-ownership="none">
            <type name="Signal" c:type="const GladeSignal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_userdata" c:identifier="glade_signal_get_userdata">
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="signal" transfer-ownership="none">
            <type name="Signal" c:type="const GladeSignal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_after" c:identifier="glade_signal_set_after">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="signal" transfer-ownership="none">
            <type name="Signal" c:type="GladeSignal*"/>
          </instance-parameter>
          <parameter name="after" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_detail" c:identifier="glade_signal_set_detail">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="signal" transfer-ownership="none">
            <type name="Signal" c:type="GladeSignal*"/>
          </instance-parameter>
          <parameter name="detail" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_handler" c:identifier="glade_signal_set_handler">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="signal" transfer-ownership="none">
            <type name="Signal" c:type="GladeSignal*"/>
          </instance-parameter>
          <parameter name="handler" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_support_warning"
              c:identifier="glade_signal_set_support_warning">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="signal" transfer-ownership="none">
            <type name="Signal" c:type="GladeSignal*"/>
          </instance-parameter>
          <parameter name="support_warning" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_swapped" c:identifier="glade_signal_set_swapped">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="signal" transfer-ownership="none">
            <type name="Signal" c:type="GladeSignal*"/>
          </instance-parameter>
          <parameter name="swapped" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_userdata" c:identifier="glade_signal_set_userdata">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="signal" transfer-ownership="none">
            <type name="Signal" c:type="GladeSignal*"/>
          </instance-parameter>
          <parameter name="userdata" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="write" c:identifier="glade_signal_write">
        <doc xml:space="preserve">Writes @signal to @node</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="signal" transfer-ownership="none">
            <doc xml:space="preserve">The #GladeSignal</doc>
            <type name="Signal" c:type="GladeSignal*"/>
          </instance-parameter>
          <parameter name="context" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeXmlContext</doc>
            <type name="XmlContext" c:type="GladeXmlContext*"/>
          </parameter>
          <parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeXmlNode</doc>
            <type name="XmlNode" c:type="GladeXmlNode*"/>
          </parameter>
        </parameters>
      </method>
      <property name="after" writable="1" transfer-ownership="none">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="class"
                writable="1"
                construct-only="1"
                transfer-ownership="none">
        <type name="gpointer" c:type="gpointer"/>
      </property>
      <property name="detail" writable="1" transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="handler" writable="1" transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="support-warning" writable="1" transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="swapped" writable="1" transfer-ownership="none">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="userdata" writable="1" transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <field name="object">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
      <field name="priv">
        <type name="SignalPrivate" c:type="GladeSignalPrivate*"/>
      </field>
    </class>
    <record name="SignalClass"
            c:type="GladeSignalClass"
            disguised="1"
            glib:is-gtype-struct-for="Signal">
      <method name="deprecated" c:identifier="glade_signal_class_deprecated">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="signal_class" transfer-ownership="none">
            <type name="SignalClass" c:type="GladeSignalClass*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="free" c:identifier="glade_signal_class_free">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="signal_class" transfer-ownership="none">
            <type name="SignalClass" c:type="GladeSignalClass*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_adaptor"
              c:identifier="glade_signal_class_get_adaptor"
              introspectable="0">
        <return-value>
          <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
        </return-value>
        <parameters>
          <instance-parameter name="signal_class" transfer-ownership="none">
            <type name="SignalClass" c:type="const GladeSignalClass*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_flags" c:identifier="glade_signal_class_get_flags">
        <return-value transfer-ownership="none">
          <type name="GObject.SignalFlags" c:type="GSignalFlags"/>
        </return-value>
        <parameters>
          <instance-parameter name="signal_class" transfer-ownership="none">
            <type name="SignalClass" c:type="const GladeSignalClass*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_name" c:identifier="glade_signal_class_get_name">
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="signal_class" transfer-ownership="none">
            <type name="SignalClass" c:type="const GladeSignalClass*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_type" c:identifier="glade_signal_class_get_type">
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="signal_class" transfer-ownership="none">
            <type name="SignalClass" c:type="const GladeSignalClass*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_deprecated"
              c:identifier="glade_signal_class_set_deprecated">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="signal_class" transfer-ownership="none">
            <type name="SignalClass" c:type="GladeSignalClass*"/>
          </instance-parameter>
          <parameter name="deprecated" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_since" c:identifier="glade_signal_class_set_since">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="signal_class" transfer-ownership="none">
            <type name="SignalClass" c:type="GladeSignalClass*"/>
          </instance-parameter>
          <parameter name="since_major" transfer-ownership="none">
            <type name="guint16" c:type="guint16"/>
          </parameter>
          <parameter name="since_minor" transfer-ownership="none">
            <type name="guint16" c:type="guint16"/>
          </parameter>
        </parameters>
      </method>
      <method name="since_major" c:identifier="glade_signal_class_since_major">
        <return-value transfer-ownership="none">
          <type name="guint16" c:type="guint16"/>
        </return-value>
        <parameters>
          <instance-parameter name="signal_class" transfer-ownership="none">
            <type name="SignalClass" c:type="GladeSignalClass*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="since_minor" c:identifier="glade_signal_class_since_minor">
        <return-value transfer-ownership="none">
          <type name="guint16" c:type="guint16"/>
        </return-value>
        <parameters>
          <instance-parameter name="signal_class" transfer-ownership="none">
            <type name="SignalClass" c:type="GladeSignalClass*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="update_from_node"
              c:identifier="glade_signal_class_update_from_node">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="signal_class" transfer-ownership="none">
            <type name="SignalClass" c:type="GladeSignalClass*"/>
          </instance-parameter>
          <parameter name="node" transfer-ownership="none">
            <type name="XmlNode" c:type="GladeXmlNode*"/>
          </parameter>
          <parameter name="domain" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <function name="new"
                c:identifier="glade_signal_class_new"
                introspectable="0">
        <return-value>
          <type name="SignalClass" c:type="GladeSignalClass*"/>
        </return-value>
        <parameters>
          <parameter name="adaptor" transfer-ownership="none">
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </parameter>
          <parameter name="for_type" transfer-ownership="none">
            <type name="GType" c:type="GType"/>
          </parameter>
          <parameter name="signal_id" transfer-ownership="none">
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </function>
    </record>
    <class name="SignalEditor"
           c:symbol-prefix="signal_editor"
           c:type="GladeSignalEditor"
           parent="Gtk.Box"
           glib:type-name="GladeSignalEditor"
           glib:get-type="glade_signal_editor_get_type"
           glib:type-struct="SignalEditorClass">
      <implements name="Atk.ImplementorIface"/>
      <implements name="Gtk.Buildable"/>
      <implements name="Gtk.Orientable"/>
      <constructor name="new" c:identifier="glade_signal_editor_new">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">a new #GladeSignalEditor</doc>
          <type name="SignalEditor" c:type="GladeSignalEditor*"/>
        </return-value>
      </constructor>
      <virtual-method name="callback_suggestions" introspectable="0">
        <return-value>
          <array c:type="gchar**">
            <type name="utf8"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="editor" transfer-ownership="none">
            <type name="SignalEditor" c:type="GladeSignalEditor*"/>
          </instance-parameter>
          <parameter name="signal" transfer-ownership="none">
            <type name="Signal" c:type="GladeSignal*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="detail_suggestions" introspectable="0">
        <return-value>
          <array c:type="gchar**">
            <type name="utf8"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="editor" transfer-ownership="none">
            <type name="SignalEditor" c:type="GladeSignalEditor*"/>
          </instance-parameter>
          <parameter name="signal" transfer-ownership="none">
            <type name="Signal" c:type="GladeSignal*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <method name="enable_dnd" c:identifier="glade_signal_editor_enable_dnd">
        <doc xml:space="preserve">If drag and drop support is enabled, the user will be able to drag signal handler
from the tree to some editor. The type of the dnd data will be "application/x-glade-signal"
and it will be in the form of "widget:signal:handler" so for example
"GtkToggleButton:toggled:on_toggle_button_toggled".</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="editor" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeSignalEditor</doc>
            <type name="SignalEditor" c:type="GladeSignalEditor*"/>
          </instance-parameter>
          <parameter name="enabled" transfer-ownership="none">
            <doc xml:space="preserve">whether the drag and drop support should be enabled</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_widget"
              c:identifier="glade_signal_editor_get_widget"
              introspectable="0">
        <return-value>
          <type name="Widget" c:type="GladeWidget*"/>
        </return-value>
        <parameters>
          <instance-parameter name="editor" transfer-ownership="none">
            <type name="SignalEditor" c:type="GladeSignalEditor*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="load_widget"
              c:identifier="glade_signal_editor_load_widget">
        <doc xml:space="preserve">Load a widget in the signal editor. This will show all signals of the widget
an it's accessors in the signal editor where the user can edit them.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="editor" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeSignalEditor</doc>
            <type name="SignalEditor" c:type="GladeSignalEditor*"/>
          </instance-parameter>
          <parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidget or NULL</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
        </parameters>
      </method>
      <property name="glade-widget" writable="1" transfer-ownership="none">
        <type name="Gtk.TreeModel"/>
      </property>
      <field name="parent">
        <type name="Gtk.Box" c:type="GtkBox"/>
      </field>
      <field name="priv">
        <type name="SignalEditorPrivate" c:type="GladeSignalEditorPrivate*"/>
      </field>
      <glib:signal name="callback-suggestions" when="last" introspectable="0">
        <doc xml:space="preserve">Emitted when the editor needs to show a list of callbacks suggestions to the user.

Returns wheter or not the event was handled.</doc>
        <return-value>
          <array>
            <type name="utf8"/>
          </array>
        </return-value>
        <parameters>
          <parameter name="signal" transfer-ownership="none">
            <doc xml:space="preserve">the #GladeSignal that needs callbacks suggestions</doc>
            <type name="Signal"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="detail-suggestions" when="last" introspectable="0">
        <doc xml:space="preserve">Emitted when the editor needs to show a list of detail suggestions to the user.

Returns wheter or not the event was handled.</doc>
        <return-value>
          <array>
            <type name="utf8"/>
          </array>
        </return-value>
        <parameters>
          <parameter name="signal" transfer-ownership="none">
            <doc xml:space="preserve">the #GladeSignal that needs callbacks suggestions</doc>
            <type name="Signal"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="signal-activated" when="last">
        <doc xml:space="preserve">Emitted when a item is activated in the GladeInspector.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="object" transfer-ownership="none">
            <type name="Signal"/>
          </parameter>
        </parameters>
      </glib:signal>
    </class>
    <record name="SignalEditorClass"
            c:type="GladeSignalEditorClass"
            glib:is-gtype-struct-for="SignalEditor">
      <field name="parent_class">
        <type name="Gtk.BoxClass" c:type="GtkBoxClass"/>
      </field>
      <field name="callback_suggestions" introspectable="0">
        <callback name="callback_suggestions" introspectable="0">
          <return-value>
            <array c:type="gchar**">
              <type name="utf8"/>
            </array>
          </return-value>
          <parameters>
            <parameter name="editor" transfer-ownership="none">
              <type name="SignalEditor" c:type="GladeSignalEditor*"/>
            </parameter>
            <parameter name="signal" transfer-ownership="none">
              <type name="Signal" c:type="GladeSignal*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="detail_suggestions" introspectable="0">
        <callback name="detail_suggestions" introspectable="0">
          <return-value>
            <array c:type="gchar**">
              <type name="utf8"/>
            </array>
          </return-value>
          <parameters>
            <parameter name="editor" transfer-ownership="none">
              <type name="SignalEditor" c:type="GladeSignalEditor*"/>
            </parameter>
            <parameter name="signal" transfer-ownership="none">
              <type name="Signal" c:type="GladeSignal*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="glade_reserved1">
        <callback name="glade_reserved1">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved2">
        <callback name="glade_reserved2">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved3">
        <callback name="glade_reserved3">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved4">
        <callback name="glade_reserved4">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
    </record>
    <record name="SignalEditorPrivate"
            c:type="GladeSignalEditorPrivate"
            disguised="1">
    </record>
    <record name="SignalKlass" c:type="GladeSignalKlass">
      <field name="object_class" writable="1">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
      <field name="glade_reserved1">
        <callback name="glade_reserved1">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved2">
        <callback name="glade_reserved2">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved3">
        <callback name="glade_reserved3">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved4">
        <callback name="glade_reserved4">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
    </record>
    <class name="SignalModel"
           c:symbol-prefix="signal_model"
           c:type="GladeSignalModel"
           parent="GObject.Object"
           glib:type-name="GladeSignalModel"
           glib:get-type="glade_signal_model_get_type"
           glib:type-struct="SignalModelClass">
      <implements name="Gtk.TreeDragSource"/>
      <implements name="Gtk.TreeModel"/>
      <function name="new"
                c:identifier="glade_signal_model_new"
                introspectable="0">
        <return-value>
          <type name="Gtk.TreeModel" c:type="GtkTreeModel*"/>
        </return-value>
        <parameters>
          <parameter name="widget" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
          <parameter name="signals" transfer-ownership="none">
            <type name="GLib.HashTable" c:type="GHashTable*">
              <type name="gpointer" c:type="gpointer"/>
              <type name="gpointer" c:type="gpointer"/>
            </type>
          </parameter>
        </parameters>
      </function>
      <property name="signals"
                readable="0"
                writable="1"
                construct-only="1"
                transfer-ownership="none">
        <type name="gpointer" c:type="gpointer"/>
      </property>
      <property name="widget"
                readable="0"
                writable="1"
                construct-only="1"
                transfer-ownership="none">
        <type name="Widget"/>
      </property>
      <field name="parent_instance">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
      <field name="priv">
        <type name="SignalModelPrivate" c:type="GladeSignalModelPrivate*"/>
      </field>
    </class>
    <record name="SignalModelClass"
            c:type="GladeSignalModelClass"
            glib:is-gtype-struct-for="SignalModel">
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
    </record>
    <enumeration name="SignalModelColumns"
                 glib:type-name="GladeSignalModelColumns"
                 glib:get-type="glade_signal_model_columns_get_type"
                 c:type="GladeSignalModelColumns">
      <member name="column_name"
              value="0"
              c:identifier="GLADE_SIGNAL_COLUMN_NAME"
              glib:nick="column-name">
      </member>
      <member name="column_show_name"
              value="1"
              c:identifier="GLADE_SIGNAL_COLUMN_SHOW_NAME"
              glib:nick="column-show-name">
      </member>
      <member name="column_handler"
              value="2"
              c:identifier="GLADE_SIGNAL_COLUMN_HANDLER"
              glib:nick="column-handler">
      </member>
      <member name="column_object"
              value="3"
              c:identifier="GLADE_SIGNAL_COLUMN_OBJECT"
              glib:nick="column-object">
      </member>
      <member name="column_swap"
              value="4"
              c:identifier="GLADE_SIGNAL_COLUMN_SWAP"
              glib:nick="column-swap">
      </member>
      <member name="column_after"
              value="5"
              c:identifier="GLADE_SIGNAL_COLUMN_AFTER"
              glib:nick="column-after">
      </member>
      <member name="column_tooltip"
              value="6"
              c:identifier="GLADE_SIGNAL_COLUMN_TOOLTIP"
              glib:nick="column-tooltip">
      </member>
      <member name="column_signal"
              value="7"
              c:identifier="GLADE_SIGNAL_COLUMN_SIGNAL"
              glib:nick="column-signal">
      </member>
      <member name="column_detail"
              value="8"
              c:identifier="GLADE_SIGNAL_COLUMN_DETAIL"
              glib:nick="column-detail">
      </member>
      <member name="n_columns"
              value="9"
              c:identifier="GLADE_SIGNAL_N_COLUMNS"
              glib:nick="n-columns">
      </member>
    </enumeration>
    <record name="SignalModelPrivate"
            c:type="GladeSignalModelPrivate"
            disguised="1">
    </record>
    <record name="SignalPrivate" c:type="GladeSignalPrivate" disguised="1">
    </record>
    <enumeration name="Stock"
                 glib:type-name="GladeStock"
                 glib:get-type="glade_standard_stock_get_type"
                 c:type="GladeStock">
      <member name="Dummy" value="0" c:identifier="dummy" glib:nick="Dummy">
      </member>
      <function name="append_prefix"
                c:identifier="glade_standard_stock_append_prefix">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="prefix" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="spec"
                c:identifier="glade_standard_stock_spec"
                introspectable="0">
        <return-value>
          <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
        </return-value>
      </function>
    </enumeration>
    <enumeration name="StockImage"
                 glib:type-name="GladeStockImage"
                 glib:get-type="glade_standard_stock_image_get_type"
                 c:type="GladeStockImage">
      <member name="Dummy" value="0" c:identifier="dummy" glib:nick="Dummy">
      </member>
      <function name="spec"
                c:identifier="glade_standard_stock_image_spec"
                introspectable="0">
        <return-value>
          <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
        </return-value>
      </function>
    </enumeration>
    <callback name="StringFromValueFunc" c:type="GladeStringFromValueFunc">
      <doc xml:space="preserve">For normal properties this is used to serialize
property values, for custom properties (only when new pspecs are
introduced) its needed for value comparisons in boxed pspecs
and also to update the UI for undo/redo items etc.</doc>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve">A newly allocated string representation of @value</doc>
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="adaptor" transfer-ownership="none">
          <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
          <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
        </parameter>
        <parameter name="klass" transfer-ownership="none">
          <doc xml:space="preserve">The #GladePropertyClass</doc>
          <type name="PropertyClass" c:type="GladePropertyClass*"/>
        </parameter>
        <parameter name="value" transfer-ownership="none">
          <doc xml:space="preserve">The #GValue to convert to a string</doc>
          <type name="GObject.Value" c:type="const GValue*"/>
        </parameter>
      </parameters>
    </callback>
    <bitfield name="SupportMask"
              glib:type-name="GladeSupportMask"
              glib:get-type="glade_support_mask_get_type"
              c:type="GladeSupportMask">
      <member name="ok"
              value="0"
              c:identifier="GLADE_SUPPORT_OK"
              glib:nick="ok">
      </member>
      <member name="deprecated"
              value="1"
              c:identifier="GLADE_SUPPORT_DEPRECATED"
              glib:nick="deprecated">
      </member>
      <member name="mismatch"
              value="2"
              c:identifier="GLADE_SUPPORT_MISMATCH"
              glib:nick="mismatch">
      </member>
    </bitfield>
    <constant name="TAG_ACTION" value="action" c:type="GLADE_TAG_ACTION">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_ACTIONS" value="actions" c:type="GLADE_TAG_ACTIONS">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_ACTION_ACTIVATE_FUNCTION"
              value="action-activate-function"
              c:type="GLADE_TAG_ACTION_ACTIVATE_FUNCTION">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_ACTION_SUBMENU_FUNCTION"
              value="action-submenu-function"
              c:type="GLADE_TAG_ACTION_SUBMENU_FUNCTION">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_ADAPTOR" value="adaptor" c:type="GLADE_TAG_ADAPTOR">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_ADD_CHILD_FUNCTION"
              value="add-child-function"
              c:type="GLADE_TAG_ADD_CHILD_FUNCTION">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_ADD_CHILD_VERIFY_FUNCTION"
              value="add-child-verify-function"
              c:type="GLADE_TAG_ADD_CHILD_VERIFY_FUNCTION">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_ANARCHIST"
              value="anarchist"
              c:type="GLADE_TAG_ANARCHIST">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_ATK_PROPERTY"
              value="atk-property"
              c:type="GLADE_TAG_ATK_PROPERTY">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_BOOK" value="book" c:type="GLADE_TAG_BOOK">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_BUILDER_SINCE"
              value="gtkbuilder-since"
              c:type="GLADE_TAG_BUILDER_SINCE">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_CHILD_ACTION_ACTIVATE_FUNCTION"
              value="child-action-activate-function"
              c:type="GLADE_TAG_CHILD_ACTION_ACTIVATE_FUNCTION">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_CHILD_GET_PROP_FUNCTION"
              value="child-get-property-function"
              c:type="GLADE_TAG_CHILD_GET_PROP_FUNCTION">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_CHILD_PROPERTY"
              value="child-property"
              c:type="GLADE_TAG_CHILD_PROPERTY">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_CHILD_SET_PROP_FUNCTION"
              value="child-set-property-function"
              c:type="GLADE_TAG_CHILD_SET_PROP_FUNCTION">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_CHILD_VERIFY_FUNCTION"
              value="child-verify-function"
              c:type="GLADE_TAG_CHILD_VERIFY_FUNCTION">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_COMMENT" value="comments" c:type="GLADE_TAG_COMMENT">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_COMMON" value="common" c:type="GLADE_TAG_COMMON">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_CONSTRUCTOR_FUNCTION"
              value="constructor-function"
              c:type="GLADE_TAG_CONSTRUCTOR_FUNCTION">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_CONSTRUCT_OBJECT_FUNCTION"
              value="construct-object-function"
              c:type="GLADE_TAG_CONSTRUCT_OBJECT_FUNCTION">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_CONSTRUCT_ONLY"
              value="construct-only"
              c:type="GLADE_TAG_CONSTRUCT_ONLY">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_CONTEXT" value="context" c:type="GLADE_TAG_CONTEXT">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_CREATE_EDITABLE_FUNCTION"
              value="create-editable-function"
              c:type="GLADE_TAG_CREATE_EDITABLE_FUNCTION">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_CREATE_EPROP_FUNCTION"
              value="create-editor-property-function"
              c:type="GLADE_TAG_CREATE_EPROP_FUNCTION">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_CREATE_TYPE"
              value="create-type"
              c:type="GLADE_TAG_CREATE_TYPE">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_CREATE_WIDGET_FUNCTION"
              value="create-widget-function"
              c:type="GLADE_TAG_CREATE_WIDGET_FUNCTION">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_CUSTOM_LAYOUT"
              value="custom-layout"
              c:type="GLADE_TAG_CUSTOM_LAYOUT">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_DEEP_POST_CREATE_FUNCTION"
              value="deep-post-create-function"
              c:type="GLADE_TAG_DEEP_POST_CREATE_FUNCTION">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_DEFAULT" value="default" c:type="GLADE_TAG_DEFAULT">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_DEFAULT_HEIGHT"
              value="default-height"
              c:type="GLADE_TAG_DEFAULT_HEIGHT">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_DEFAULT_PALETTE_STATE"
              value="default-palette-state"
              c:type="GLADE_TAG_DEFAULT_PALETTE_STATE">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_DEFAULT_WIDTH"
              value="default-width"
              c:type="GLADE_TAG_DEFAULT_WIDTH">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_DEPENDS" value="depends" c:type="GLADE_TAG_DEPENDS">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_DEPENDS_FUNCTION"
              value="depends-function"
              c:type="GLADE_TAG_DEPENDS_FUNCTION">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_DEPRECATED"
              value="deprecated"
              c:type="GLADE_TAG_DEPRECATED">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_DESTROY_OBJECT_FUNCTION"
              value="destroy-object-function"
              c:type="GLADE_TAG_DESTROY_OBJECT_FUNCTION">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_DISABLED" value="disabled" c:type="GLADE_TAG_DISABLED">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_DISPLAYABLE_VALUES"
              value="displayable-values"
              c:type="GLADE_TAG_DISPLAYABLE_VALUES">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_DOMAIN" value="domain" c:type="GLADE_TAG_DOMAIN">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_EDITABLE" value="editable" c:type="GLADE_TAG_EDITABLE">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_EVENT_HANDLER_CONNECTED"
              value="EventHandlerConnected"
              c:type="GLADE_TAG_EVENT_HANDLER_CONNECTED">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_EXPANDED" value="expanded" c:type="GLADE_TAG_EXPANDED">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_FALSE" value="False" c:type="GLADE_TAG_FALSE">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_GENERIC_NAME"
              value="generic-name"
              c:type="GLADE_TAG_GENERIC_NAME">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_GET_CHILDREN_FUNCTION"
              value="get-children-function"
              c:type="GLADE_TAG_GET_CHILDREN_FUNCTION">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_GET_FUNCTION"
              value="get-property-function"
              c:type="GLADE_TAG_GET_FUNCTION">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_GET_INTERNAL_CHILD_FUNCTION"
              value="get-internal-child-function"
              c:type="GLADE_TAG_GET_INTERNAL_CHILD_FUNCTION">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_GET_TYPE_FUNCTION"
              value="get-type-function"
              c:type="GLADE_TAG_GET_TYPE_FUNCTION">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_GLADE_CATALOG"
              value="glade-catalog"
              c:type="GLADE_TAG_GLADE_CATALOG">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_GLADE_WIDGET_CLASS"
              value="glade-widget-class"
              c:type="GLADE_TAG_GLADE_WIDGET_CLASS">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_GLADE_WIDGET_CLASSES"
              value="glade-widget-classes"
              c:type="GLADE_TAG_GLADE_WIDGET_CLASSES">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_GLADE_WIDGET_CLASS_REF"
              value="glade-widget-class-ref"
              c:type="GLADE_TAG_GLADE_WIDGET_CLASS_REF">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_GLADE_WIDGET_GROUP"
              value="glade-widget-group"
              c:type="GLADE_TAG_GLADE_WIDGET_GROUP">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_HAS_CONTEXT"
              value="context"
              c:type="GLADE_TAG_HAS_CONTEXT">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_ICON_NAME"
              value="icon-name"
              c:type="GLADE_TAG_ICON_NAME">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_ICON_PREFIX"
              value="icon-prefix"
              c:type="GLADE_TAG_ICON_PREFIX">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_ID" value="id" c:type="GLADE_TAG_ID">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_IGNORE" value="ignore" c:type="GLADE_TAG_IGNORE">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_IMPORTANT"
              value="important"
              c:type="GLADE_TAG_IMPORTANT">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_INIT_FUNCTION"
              value="init-function"
              c:type="GLADE_TAG_INIT_FUNCTION">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_INTERNAL_CHILDREN"
              value="internal-children"
              c:type="GLADE_TAG_INTERNAL_CHILDREN">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_KEY" value="key" c:type="GLADE_TAG_KEY">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_LIBRARY" value="library" c:type="GLADE_TAG_LIBRARY">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_MAX_VALUE" value="max" c:type="GLADE_TAG_MAX_VALUE">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_MIN_VALUE" value="min" c:type="GLADE_TAG_MIN_VALUE">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_MULTILINE"
              value="multiline"
              c:type="GLADE_TAG_MULTILINE">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_NAME" value="name" c:type="GLADE_TAG_NAME">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_NEEDS_SYNC"
              value="needs-sync"
              c:type="GLADE_TAG_NEEDS_SYNC">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_NICK" value="nick" c:type="GLADE_TAG_NICK">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_NO" value="No" c:type="GLADE_TAG_NO">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_OPTIONAL" value="optional" c:type="GLADE_TAG_OPTIONAL">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_OPTIONAL_DEFAULT"
              value="optional-default"
              c:type="GLADE_TAG_OPTIONAL_DEFAULT">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_PACKING_ACTIONS"
              value="packing-actions"
              c:type="GLADE_TAG_PACKING_ACTIONS">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_PACKING_DEFAULTS"
              value="packing-defaults"
              c:type="GLADE_TAG_PACKING_DEFAULTS">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_PACKING_PROPERTIES"
              value="packing-properties"
              c:type="GLADE_TAG_PACKING_PROPERTIES">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_PARENT" value="parent" c:type="GLADE_TAG_PARENT">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_PARENTLESS_WIDGET"
              value="parentless-widget"
              c:type="GLADE_TAG_PARENTLESS_WIDGET">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_PARENT_CLASS"
              value="parent-class"
              c:type="GLADE_TAG_PARENT_CLASS">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_POST_CREATE_FUNCTION"
              value="post-create-function"
              c:type="GLADE_TAG_POST_CREATE_FUNCTION">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_PROPERTIES"
              value="properties"
              c:type="GLADE_TAG_PROPERTIES">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_PROPERTY" value="property" c:type="GLADE_TAG_PROPERTY">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_QUERY" value="query" c:type="GLADE_TAG_QUERY">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_READ_CHILD_FUNCTION"
              value="read-child-function"
              c:type="GLADE_TAG_READ_CHILD_FUNCTION">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_READ_WIDGET_FUNCTION"
              value="read-widget-function"
              c:type="GLADE_TAG_READ_WIDGET_FUNCTION">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_REMOVE_CHILD_FUNCTION"
              value="remove-child-function"
              c:type="GLADE_TAG_REMOVE_CHILD_FUNCTION">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_REPLACE_CHILD_FUNCTION"
              value="replace-child-function"
              c:type="GLADE_TAG_REPLACE_CHILD_FUNCTION">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_RESOURCE" value="resource" c:type="GLADE_TAG_RESOURCE">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_SAVE" value="save" c:type="GLADE_TAG_SAVE">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_SAVE_ALWAYS"
              value="save-always"
              c:type="GLADE_TAG_SAVE_ALWAYS">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_SET_FUNCTION"
              value="set-property-function"
              c:type="GLADE_TAG_SET_FUNCTION">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_SIGNAL" value="signal" c:type="GLADE_TAG_SIGNAL">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_SIGNALS" value="signals" c:type="GLADE_TAG_SIGNALS">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_SPEC" value="spec" c:type="GLADE_TAG_SPEC">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_SPECIAL_CHILD_TYPE"
              value="special-child-type"
              c:type="GLADE_TAG_SPECIAL_CHILD_TYPE">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_SPECIFICATIONS"
              value="parameter-spec"
              c:type="GLADE_TAG_SPECIFICATIONS">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_STOCK" value="stock" c:type="GLADE_TAG_STOCK">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_STOCK_ICON"
              value="stock-icon"
              c:type="GLADE_TAG_STOCK_ICON">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_STRING_FROM_VALUE_FUNCTION"
              value="string-from-value-function"
              c:type="GLADE_TAG_STRING_FROM_VALUE_FUNCTION">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_TARGETABLE"
              value="targetable"
              c:type="GLADE_TAG_TARGETABLE">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_THEMED_ICON"
              value="themed-icon"
              c:type="GLADE_TAG_THEMED_ICON">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_TITLE" value="title" c:type="GLADE_TAG_TITLE">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_TOOLTIP" value="tooltip" c:type="GLADE_TAG_TOOLTIP">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_TOPLEVEL" value="toplevel" c:type="GLADE_TAG_TOPLEVEL">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_TRANSFER_ON_PASTE"
              value="transfer-on-paste"
              c:type="GLADE_TAG_TRANSFER_ON_PASTE">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_TRANSLATABLE"
              value="translatable"
              c:type="GLADE_TAG_TRANSLATABLE">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_TRUE" value="True" c:type="GLADE_TAG_TRUE">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_TYPE" value="type" c:type="GLADE_TAG_TYPE">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_USE_PLACEHOLDERS"
              value="use-placeholders"
              c:type="GLADE_TAG_USE_PLACEHOLDERS">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_VALUE" value="value" c:type="GLADE_TAG_VALUE">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_VALUE_TYPE"
              value="value-type"
              c:type="GLADE_TAG_VALUE_TYPE">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_VERIFY_FUNCTION"
              value="verify-function"
              c:type="GLADE_TAG_VERIFY_FUNCTION">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_VERSION" value="version" c:type="GLADE_TAG_VERSION">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_VERSION_SINCE"
              value="since"
              c:type="GLADE_TAG_VERSION_SINCE">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_VISIBLE" value="visible" c:type="GLADE_TAG_VISIBLE">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_WEIGHT" value="weight" c:type="GLADE_TAG_WEIGHT">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_WRITE_CHILD_FUNCTION"
              value="write-child-function"
              c:type="GLADE_TAG_WRITE_CHILD_FUNCTION">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_WRITE_WIDGET_AFTER_FUNCTION"
              value="write-widget-after-function"
              c:type="GLADE_TAG_WRITE_WIDGET_AFTER_FUNCTION">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_WRITE_WIDGET_FUNCTION"
              value="write-widget-function"
              c:type="GLADE_TAG_WRITE_WIDGET_FUNCTION">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TAG_YES" value="Yes" c:type="GLADE_TAG_YES">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <record name="TargetableVersion" c:type="GladeTargetableVersion">
      <field name="major" writable="1">
        <type name="gint" c:type="gint"/>
      </field>
      <field name="minor" writable="1">
        <type name="gint" c:type="gint"/>
      </field>
    </record>
    <enumeration name="UIMessageType"
                 glib:type-name="GladeUIMessageType"
                 glib:get-type="glade_ui_message_type_get_type"
                 c:type="GladeUIMessageType">
      <member name="info"
              value="0"
              c:identifier="GLADE_UI_INFO"
              glib:nick="info">
      </member>
      <member name="warn"
              value="1"
              c:identifier="GLADE_UI_WARN"
              glib:nick="warn">
      </member>
      <member name="error"
              value="2"
              c:identifier="GLADE_UI_ERROR"
              glib:nick="error">
      </member>
      <member name="are_you_sure"
              value="3"
              c:identifier="GLADE_UI_ARE_YOU_SURE"
              glib:nick="are-you-sure">
      </member>
      <member name="yes_or_no"
              value="4"
              c:identifier="GLADE_UI_YES_OR_NO"
              glib:nick="yes-or-no">
      </member>
    </enumeration>
    <constant name="UNNAMED_PREFIX"
              value="__glade_unnamed_"
              c:type="GLADE_UNNAMED_PREFIX">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <enumeration name="UtilFileDialogType"
                 glib:type-name="GladeUtilFileDialogType"
                 glib:get-type="glade_util_file_dialog_type_get_type"
                 c:type="GladeUtilFileDialogType">
      <member name="open"
              value="0"
              c:identifier="GLADE_FILE_DIALOG_ACTION_OPEN"
              glib:nick="open">
      </member>
      <member name="save"
              value="1"
              c:identifier="GLADE_FILE_DIALOG_ACTION_SAVE"
              glib:nick="save">
      </member>
    </enumeration>
    <bitfield name="VerifyFlags"
              glib:type-name="GladeVerifyFlags"
              glib:get-type="glade_verify_flags_get_type"
              c:type="GladeVerifyFlags">
      <member name="versions"
              value="1"
              c:identifier="GLADE_VERIFY_VERSIONS"
              glib:nick="versions">
        <doc xml:space="preserve">Verify version mismatches</doc>
      </member>
      <member name="deprecations"
              value="2"
              c:identifier="GLADE_VERIFY_DEPRECATIONS"
              glib:nick="deprecations">
        <doc xml:space="preserve">Verify deprecations</doc>
      </member>
      <member name="unrecognized"
              value="4"
              c:identifier="GLADE_VERIFY_UNRECOGNIZED"
              glib:nick="unrecognized">
        <doc xml:space="preserve">Verify unrecognized types</doc>
      </member>
    </bitfield>
    <callback name="VerifyPropertyFunc" c:type="GladeVerifyPropertyFunc">
      <doc xml:space="preserve">This delagate function is always called whenever setting any
properties with the exception of load time, and copy/paste time
(basicly the two places where we recreate a hierarchy that we
already know "works") its basicly an optional backend provided
boundry checker for properties.</doc>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve">whether or not its OK to set @value on @object, this function
will silently return TRUE if the class did not provide a verify function.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="adaptor" transfer-ownership="none">
          <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
          <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
        </parameter>
        <parameter name="object" transfer-ownership="none">
          <doc xml:space="preserve">The #GObject</doc>
          <type name="GObject.Object" c:type="GObject*"/>
        </parameter>
        <parameter name="property_name" transfer-ownership="none">
          <doc xml:space="preserve">The property identifier</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="value" transfer-ownership="none">
          <doc xml:space="preserve">The #GValue</doc>
          <type name="GObject.Value" c:type="const GValue*"/>
        </parameter>
      </parameters>
    </callback>
    <class name="Widget"
           c:symbol-prefix="widget"
           c:type="GladeWidget"
           parent="GObject.InitiallyUnowned"
           glib:type-name="GladeWidget"
           glib:get-type="glade_widget_get_type"
           glib:type-struct="WidgetClass">
      <function name="get_device_from_event"
                c:identifier="glade_widget_get_device_from_event"
                introspectable="0"
                deprecated="1">
        <doc xml:space="preserve">Currently only motion and button events are handled (see IS_GLADE_WIDGET_EVENT)</doc>
        <doc-deprecated xml:space="preserve">use gdk_event_get_device() instead.</doc-deprecated>
        <return-value>
          <doc xml:space="preserve">the asociated GdkDevice for this glade widget event.</doc>
          <type name="Gdk.Device" c:type="GdkDevice*"/>
        </return-value>
        <parameters>
          <parameter name="event" transfer-ownership="none">
            <doc xml:space="preserve">a GdkEvent</doc>
            <type name="Gdk.Event" c:type="GdkEvent*"/>
          </parameter>
        </parameters>
      </function>
      <function name="get_from_gobject"
                c:identifier="glade_widget_get_from_gobject"
                introspectable="0">
        <return-value>
          <type name="Widget" c:type="GladeWidget*"/>
        </return-value>
        <parameters>
          <parameter name="object"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </function>
      <function name="pop_superuser" c:identifier="glade_widget_pop_superuser">
        <doc xml:space="preserve">Unsets superuser mode</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </function>
      <function name="push_superuser"
                c:identifier="glade_widget_push_superuser">
        <doc xml:space="preserve">Sets superuser mode</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </function>
      <function name="read"
                c:identifier="glade_widget_read"
                introspectable="0">
        <return-value>
          <doc xml:space="preserve">a new #GladeWidget for @project, based on @node</doc>
          <type name="Widget" c:type="GladeWidget*"/>
        </return-value>
        <parameters>
          <parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProject</doc>
            <type name="Project" c:type="GladeProject*"/>
          </parameter>
          <parameter name="parent" transfer-ownership="none">
            <doc xml:space="preserve">The parent #GladeWidget or %NULL</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
          <parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeXmlNode</doc>
            <type name="XmlNode" c:type="GladeXmlNode*"/>
          </parameter>
          <parameter name="internal" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="superuser" c:identifier="glade_widget_superuser">
        <doc xml:space="preserve">Checks if we are in superuser mode.

Superuser mode is when we are
  - Loading a project
  - Dupping a widget recursively
  - Rebuilding an instance for a construct-only property

In these cases, we must act like a load, this should be checked
from the plugin when implementing containers, when undo/redo comes
around, the plugin is responsable for maintaining the same container
size when widgets are added/removed.</doc>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
      </function>
      <virtual-method name="add_child" invoker="add_child">
        <doc xml:space="preserve">Adds @child to @parent in a generic way for this #GladeWidget parent.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="arg0" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="arg1" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
          <parameter name="arg2" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="add_signal_handler" invoker="add_signal_handler">
        <doc xml:space="preserve">Adds a signal handler for @widget</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="arg0" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="arg1" transfer-ownership="none">
            <type name="Signal" c:type="GladeSignal*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="button_press_event">
        <return-value transfer-ownership="none">
          <type name="gint" c:type="gint"/>
        </return-value>
        <parameters>
          <instance-parameter name="arg0" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="arg1" transfer-ownership="none">
            <type name="Gdk.Event" c:type="GdkEvent*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="button_release_event">
        <return-value transfer-ownership="none">
          <type name="gint" c:type="gint"/>
        </return-value>
        <parameters>
          <instance-parameter name="arg0" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="arg1" transfer-ownership="none">
            <type name="Gdk.Event" c:type="GdkEvent*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="change_signal_handler">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="arg0" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="arg1" transfer-ownership="none">
            <type name="Signal" c:type="GladeSignal*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="event" invoker="event">
        <doc xml:space="preserve">Feed an event to be handled on the project GladeWidget
hierarchy.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether the event was handled or not.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="arg0" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="arg1" transfer-ownership="none">
            <type name="Gdk.Event" c:type="GdkEvent*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="motion_notify_event">
        <return-value transfer-ownership="none">
          <type name="gint" c:type="gint"/>
        </return-value>
        <parameters>
          <instance-parameter name="arg0" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="arg1" transfer-ownership="none">
            <type name="Gdk.Event" c:type="GdkEvent*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="remove_child" invoker="remove_child">
        <doc xml:space="preserve">Removes @child from @parent in a generic way for this #GladeWidget parent.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="arg0" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="arg1" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="remove_signal_handler"
                      invoker="remove_signal_handler">
        <doc xml:space="preserve">Removes a signal handler from @widget</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="arg0" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="arg1" transfer-ownership="none">
            <type name="Signal" c:type="GladeSignal*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="replace_child">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="arg0" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="arg1" transfer-ownership="none">
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="arg2" transfer-ownership="none">
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <method name="adaptor_create_internal"
              c:identifier="glade_widget_adaptor_create_internal"
              introspectable="0">
        <doc xml:space="preserve">A convenienve function to create a #GladeWidget of the prescribed type
for internal widgets.</doc>
        <return-value>
          <doc xml:space="preserve">a freshly created #GladeWidget wrapper object for the
         @internal_object of name @internal_name</doc>
          <type name="Widget" c:type="GladeWidget*"/>
        </return-value>
        <parameters>
          <instance-parameter name="parent" transfer-ownership="none">
            <doc xml:space="preserve">The parent #GladeWidget, or %NULL for children
                    outside of the hierarchy.</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="internal_object" transfer-ownership="none">
            <doc xml:space="preserve">the #GObject</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="internal_name" transfer-ownership="none">
            <doc xml:space="preserve">a string identifier for this internal widget.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="parent_name" transfer-ownership="none">
            <doc xml:space="preserve">the generic name of the parent used for fancy child names.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="anarchist" transfer-ownership="none">
            <doc xml:space="preserve">Whether or not this widget is a widget outside
                    of the parent's hierarchy (like a popup window)</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
          <parameter name="reason" transfer-ownership="none">
            <doc xml:space="preserve">The #GladeCreateReason for which this internal widget
                    was created (usually just pass the reason from the post_create
                    function; note also this is used only by the plugin code so
                    pass something usefull here).</doc>
            <type name="CreateReason" c:type="GladeCreateReason"/>
          </parameter>
        </parameters>
      </method>
      <method name="add_child" c:identifier="glade_widget_add_child">
        <doc xml:space="preserve">Adds @child to @parent in a generic way for this #GladeWidget parent.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="parent" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="child" transfer-ownership="none">
            <doc xml:space="preserve">the #GladeWidget to add</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
          <parameter name="at_mouse" transfer-ownership="none">
            <doc xml:space="preserve">whether the added widget should be added
           at the current mouse position</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="add_prop_ref" c:identifier="glade_widget_add_prop_ref">
        <doc xml:space="preserve">Adds @property to @widget 's list of referenced properties.

Note: this is used to track properties on other objects that
      reffer to this object.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="property" transfer-ownership="none">
            <doc xml:space="preserve">the #GladeProperty</doc>
            <type name="Property" c:type="GladeProperty*"/>
          </parameter>
        </parameters>
      </method>
      <method name="add_signal_handler"
              c:identifier="glade_widget_add_signal_handler">
        <doc xml:space="preserve">Adds a signal handler for @widget</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="signal_handler" transfer-ownership="none">
            <doc xml:space="preserve">The #GladeSignal</doc>
            <type name="Signal" c:type="const GladeSignal*"/>
          </parameter>
        </parameters>
      </method>
      <method name="add_verify" c:identifier="glade_widget_add_verify">
        <doc xml:space="preserve">Checks whether @child can be added to @parent.

If @user_feedback is %TRUE and @child cannot be
added then this shows a notification dialog to the user
explaining why.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether @child can be added to @widget.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="parent" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="child" transfer-ownership="none">
            <doc xml:space="preserve">The child #GladeWidget to add</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
          <parameter name="user_feedback" transfer-ownership="none">
            <doc xml:space="preserve">whether a notification dialog should be
presented in the case that the child cannot not be added.</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="change_signal_handler"
              c:identifier="glade_widget_change_signal_handler">
        <doc xml:space="preserve">Changes a #GladeSignal on @widget</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="old_signal_handler" transfer-ownership="none">
            <doc xml:space="preserve">the old #GladeSignal</doc>
            <type name="Signal" c:type="const GladeSignal*"/>
          </parameter>
          <parameter name="new_signal_handler" transfer-ownership="none">
            <doc xml:space="preserve">the new #GladeSignal</doc>
            <type name="Signal" c:type="const GladeSignal*"/>
          </parameter>
        </parameters>
      </method>
      <method name="child_get_property"
              c:identifier="glade_widget_child_get_property">
        <doc xml:space="preserve">Gets @child's packing property identified by @property_name.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="child" transfer-ownership="none">
            <doc xml:space="preserve">The #GladeWidget child</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
          <parameter name="property_name" transfer-ownership="none">
            <doc xml:space="preserve">The id of the property</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve">The @GValue</doc>
            <type name="GObject.Value" c:type="GValue*"/>
          </parameter>
        </parameters>
      </method>
      <method name="child_set_property"
              c:identifier="glade_widget_child_set_property">
        <doc xml:space="preserve">Sets @child's packing property identified by @property_name to @value.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="child" transfer-ownership="none">
            <doc xml:space="preserve">The #GladeWidget child</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
          <parameter name="property_name" transfer-ownership="none">
            <doc xml:space="preserve">The id of the property</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve">The @GValue</doc>
            <type name="GObject.Value" c:type="const GValue*"/>
          </parameter>
        </parameters>
      </method>
      <method name="copy_properties"
              c:identifier="glade_widget_copy_properties">
        <doc xml:space="preserve">Sets properties in @widget based on the values of
matching properties in @template_widget</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">a 'dest' #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="template_widget" transfer-ownership="none">
            <doc xml:space="preserve">a 'src' #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
          <parameter name="copy_parentless" transfer-ownership="none">
            <doc xml:space="preserve">whether to copy reffed widgets at all</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
          <parameter name="exact" transfer-ownership="none">
            <doc xml:space="preserve">whether to copy reffed widgets exactly</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="copy_signals" c:identifier="glade_widget_copy_signals">
        <doc xml:space="preserve">Sets signals in @widget based on the values of
matching signals in @template_widget</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">a 'dest' #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="template_widget" transfer-ownership="none">
            <doc xml:space="preserve">a 'src' #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
        </parameters>
      </method>
      <method name="create_editor_property"
              c:identifier="glade_widget_create_editor_property"
              introspectable="0">
        <doc xml:space="preserve">This is a convenience function to create a GladeEditorProperty corresponding
to @property</doc>
        <return-value>
          <doc xml:space="preserve">A newly created and connected GladeEditorProperty</doc>
          <type name="EditorProperty" c:type="GladeEditorProperty*"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="property" transfer-ownership="none">
            <doc xml:space="preserve">The widget's property</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="packing" transfer-ownership="none">
            <doc xml:space="preserve">whether @property indicates a packing property or not.</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
          <parameter name="use_command" transfer-ownership="none">
            <doc xml:space="preserve">Whether the undo/redo stack applies here.</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="depends"
              c:identifier="glade_widget_depends"
              deprecated="1"
              deprecated-version="3.18">
        <doc xml:space="preserve">Determines whether @widget is somehow dependent on @other, in
which case it should be serialized after @other.

A widget is dependent on another widget.
It does not take into account for children dependencies.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">%TRUE if @widget depends on @other.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="other" transfer-ownership="none">
            <doc xml:space="preserve">another #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
        </parameters>
      </method>
      <method name="dup" c:identifier="glade_widget_dup" introspectable="0">
        <doc xml:space="preserve">Creates a deep copy of #GladeWidget. if @exact is specified,
the widget name is preserved and signals are carried over
(this is used to maintain names &amp; signals in Cut/Paste context
as opposed to Copy/Paste contexts).</doc>
        <return-value>
          <doc xml:space="preserve">The newly created #GladeWidget</doc>
          <type name="Widget" c:type="GladeWidget*"/>
        </return-value>
        <parameters>
          <instance-parameter name="template_widget" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="exact" transfer-ownership="none">
            <doc xml:space="preserve">whether or not to creat an exact duplicate</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="dup_properties"
              c:identifier="glade_widget_dup_properties"
              introspectable="0">
        <doc xml:space="preserve">Copies a list of properties, if @as_load is specified, then
properties that are not saved to the glade file are ignored.</doc>
        <return-value>
          <doc xml:space="preserve">A newly allocated #GList of new #GladeProperty objects.</doc>
          <type name="GLib.List" c:type="GList*">
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="dest_widget" transfer-ownership="none">
            <doc xml:space="preserve">the widget we are copying properties for</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="template_props" transfer-ownership="none">
            <doc xml:space="preserve">the #GladeProperty list to copy</doc>
            <type name="GLib.List" c:type="GList*">
              <type name="gpointer" c:type="gpointer"/>
            </type>
          </parameter>
          <parameter name="as_load" transfer-ownership="none">
            <doc xml:space="preserve">whether to behave as if loading the project</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
          <parameter name="copy_parentless" transfer-ownership="none">
            <doc xml:space="preserve">whether to copy reffed widgets at all</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
          <parameter name="exact" transfer-ownership="none">
            <doc xml:space="preserve">whether to copy reffed widgets exactly</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="ensure_name" c:identifier="glade_widget_ensure_name">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="project" transfer-ownership="none">
            <type name="Project" c:type="GladeProject*"/>
          </parameter>
          <parameter name="use_command" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="event" c:identifier="glade_widget_event">
        <doc xml:space="preserve">Feed an event to be handled on the project GladeWidget
hierarchy.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether the event was handled or not.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="gwidget" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="event" transfer-ownership="none">
            <doc xml:space="preserve">A #GdkEvent</doc>
            <type name="Gdk.Event" c:type="GdkEvent*"/>
          </parameter>
        </parameters>
      </method>
      <method name="find_child"
              c:identifier="glade_widget_find_child"
              introspectable="0">
        <doc xml:space="preserve">Finds a child widget named @name.</doc>
        <return-value>
          <doc xml:space="preserve">The child of widget or NULL if it was not found.</doc>
          <type name="Widget" c:type="GladeWidget*"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="name" transfer-ownership="none">
            <doc xml:space="preserve">child name</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="generate_path_name"
              c:identifier="glade_widget_generate_path_name">
        <doc xml:space="preserve">Creates a user friendly name to describe project widgets</doc>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve">A newly allocated string</doc>
          <type name="utf8" c:type="gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_action"
              c:identifier="glade_widget_get_action"
              introspectable="0">
        <doc xml:space="preserve">Returns a #GladeWidgetAction object indentified by @action_path.</doc>
        <return-value>
          <doc xml:space="preserve">the action or NULL if not found.</doc>
          <type name="WidgetAction" c:type="GladeWidgetAction*"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="action_path" transfer-ownership="none">
            <doc xml:space="preserve">a full action path including groups</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_actions"
              c:identifier="glade_widget_get_actions"
              introspectable="0">
        <return-value>
          <type name="GLib.List" c:type="GList*">
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_adaptor"
              c:identifier="glade_widget_get_adaptor"
              introspectable="0">
        <return-value>
          <doc xml:space="preserve">the #GladeWidgetAdaptor of @widget</doc>
          <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_children"
              c:identifier="glade_widget_get_children"
              introspectable="0">
        <doc xml:space="preserve">Fetches any wrapped children of @widget.</doc>
        <return-value>
          <doc xml:space="preserve">The children of widget

&lt;note&gt;&lt;para&gt;This differs from a direct call to glade_widget_adaptor_get_children() as
it only returns children which have an associated GladeWidget. This function will
not return any placeholders or internal composite children that have not been
exposed for Glade configuration&lt;/para&gt;&lt;/note&gt;</doc>
          <type name="GLib.List" c:type="GList*">
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_display_name"
              c:identifier="glade_widget_get_display_name">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">a pointer to @widget's displayable name

This should be used to display the widget's ID in
the UI, it will automatically return an "(unnamed)"
string if the widget is not intended to be serialized
with an ID (i.e. the user did not provide a name).</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_internal" c:identifier="glade_widget_get_internal">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">the internal name of @widget</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_is_composite"
              c:identifier="glade_widget_get_is_composite">
        <doc xml:space="preserve">Checks if @widget is a composite template to be used
with gtk_widget_class_set_template().</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether @widget is composite.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_locker"
              c:identifier="glade_widget_get_locker"
              introspectable="0">
        <return-value>
          <type name="Widget" c:type="GladeWidget*"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_name" c:identifier="glade_widget_get_name">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">a pointer to @widget's name

This is what will be serialized as the widget's ID, unless
the name currently carries the %GLADE_UNNAMED_PREFIX.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_object"
              c:identifier="glade_widget_get_object"
              introspectable="0">
        <return-value>
          <doc xml:space="preserve">the #GObject associated with @widget</doc>
          <type name="GObject.Object" c:type="GObject*"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_pack_action"
              c:identifier="glade_widget_get_pack_action"
              introspectable="0">
        <doc xml:space="preserve">Returns a #GladeWidgetAction object indentified by @action_path.</doc>
        <return-value>
          <doc xml:space="preserve">the action or NULL if not found.</doc>
          <type name="WidgetAction" c:type="GladeWidgetAction*"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="action_path" transfer-ownership="none">
            <doc xml:space="preserve">a full action path including groups</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_pack_actions"
              c:identifier="glade_widget_get_pack_actions"
              introspectable="0">
        <return-value>
          <type name="GLib.List" c:type="GList*">
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_pack_property"
              c:identifier="glade_widget_get_pack_property"
              introspectable="0">
        <return-value>
          <doc xml:space="preserve">the #GladeProperty in @widget named @id_property</doc>
          <type name="Property" c:type="GladeProperty*"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="id_property" transfer-ownership="none">
            <doc xml:space="preserve">a string naming a #GladeProperty</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_packing_properties"
              c:identifier="glade_widget_get_packing_properties"
              introspectable="0">
        <return-value>
          <type name="GLib.List" c:type="GList*">
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_parent"
              c:identifier="glade_widget_get_parent"
              introspectable="0">
        <return-value>
          <doc xml:space="preserve">The parenting #GladeWidget</doc>
          <type name="Widget" c:type="GladeWidget*"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_parentless_reffed_widgets"
              c:identifier="glade_widget_get_parentless_reffed_widgets"
              introspectable="0">
        <return-value>
          <type name="GLib.List" c:type="GList*">
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_parentless_widget_ref"
              c:identifier="glade_widget_get_parentless_widget_ref"
              introspectable="0">
        <return-value>
          <type name="Property" c:type="GladeProperty*"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_project"
              c:identifier="glade_widget_get_project"
              introspectable="0">
        <return-value>
          <doc xml:space="preserve">the #GladeProject that @widget belongs to</doc>
          <type name="Project" c:type="GladeProject*"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_properties"
              c:identifier="glade_widget_get_properties"
              introspectable="0">
        <return-value>
          <type name="GLib.List" c:type="GList*">
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_property"
              c:identifier="glade_widget_get_property"
              introspectable="0">
        <return-value>
          <doc xml:space="preserve">the #GladeProperty in @widget named @id_property</doc>
          <type name="Property" c:type="GladeProperty*"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="id_property" transfer-ownership="none">
            <doc xml:space="preserve">a string naming a #GladeProperty</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_signal_list"
              c:identifier="glade_widget_get_signal_list"
              introspectable="0">
        <doc xml:space="preserve">Compiles a list of #GladeSignal elements</doc>
        <return-value>
          <doc xml:space="preserve">a newly allocated #GList of #GladeSignals, the caller
must call g_list_free() to free the list.</doc>
          <type name="GLib.List" c:type="GList*">
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">a 'dest' #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_signal_model"
              c:identifier="glade_widget_get_signal_model"
              introspectable="0">
        <return-value>
          <doc xml:space="preserve">a GtkTreeModel that can be used to view the widget's signals.
         The signal model is owned by the #GladeWidget.</doc>
          <type name="Gtk.TreeModel" c:type="GtkTreeModel*"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_toplevel"
              c:identifier="glade_widget_get_toplevel"
              introspectable="0">
        <return-value>
          <doc xml:space="preserve">The toplevel #GladeWidget in the hierarchy (or @widget)</doc>
          <type name="Widget" c:type="GladeWidget*"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="has_decendant" c:identifier="glade_widget_has_decendant">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether this GladeWidget has any decendants of type @type
         or any decendants that implement the @type interface</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="type" transfer-ownership="none">
            <doc xml:space="preserve">a  #GType</doc>
            <type name="GType" c:type="GType"/>
          </parameter>
        </parameters>
      </method>
      <method name="has_name" c:identifier="glade_widget_has_name">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether the user has named this widget with an ID</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="has_prop_refs" c:identifier="glade_widget_has_prop_refs">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="hide" c:identifier="glade_widget_hide">
        <doc xml:space="preserve">Hide @widget</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="in_project" c:identifier="glade_widget_in_project">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="is_ancestor" c:identifier="glade_widget_is_ancestor">
        <doc xml:space="preserve">Determines whether @widget is somewhere inside @ancestor, possibly with
intermediate containers.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">%TRUE if @ancestor contains @widget as a child,
   grandchild, great grandchild, etc.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="ancestor" transfer-ownership="none">
            <doc xml:space="preserve">another #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
        </parameters>
      </method>
      <method name="list_locked_widgets"
              c:identifier="glade_widget_list_locked_widgets"
              introspectable="0">
        <return-value>
          <type name="GLib.List" c:type="GList*">
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="list_prop_refs"
              c:identifier="glade_widget_list_prop_refs"
              introspectable="0">
        <return-value>
          <type name="GLib.List" c:type="GList*">
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="list_signal_handlers"
              c:identifier="glade_widget_list_signal_handlers"
              introspectable="0">
        <return-value>
          <doc xml:space="preserve">A #GPtrArray of #GladeSignal for @signal_name</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="gpointer" c:type="gpointer"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="signal_name" transfer-ownership="none">
            <doc xml:space="preserve">the name of the signal</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="lock" c:identifier="glade_widget_lock">
        <doc xml:space="preserve">Sets @locked to be in a locked up state
spoken for by @widget, locked widgets cannot
be removed from the project until unlocked.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="locked" transfer-ownership="none">
            <doc xml:space="preserve">The #GladeWidget to lock</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
        </parameters>
      </method>
      <method name="object_get_property"
              c:identifier="glade_widget_object_get_property">
        <doc xml:space="preserve">This function retrieves the value of the property @property_name on
the runtime object of @widget and sets it in @value.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="property_name" transfer-ownership="none">
            <doc xml:space="preserve">The property identifier</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve">The #GValue</doc>
            <type name="GObject.Value" c:type="GValue*"/>
          </parameter>
        </parameters>
      </method>
      <method name="object_set_property"
              c:identifier="glade_widget_object_set_property">
        <doc xml:space="preserve">This function applies @value to the property @property_name on
the runtime object of @widget.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="property_name" transfer-ownership="none">
            <doc xml:space="preserve">The property identifier</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve">The #GValue</doc>
            <type name="GObject.Value" c:type="const GValue*"/>
          </parameter>
        </parameters>
      </method>
      <method name="pack_property_default"
              c:identifier="glade_widget_pack_property_default">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether whether @id_property was found and is
currently set to it's default value.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="id_property" transfer-ownership="none">
            <doc xml:space="preserve">a string naming a #GladeProperty</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="pack_property_get"
              c:identifier="glade_widget_pack_property_get"
              introspectable="0">
        <doc xml:space="preserve">Gets the value of @id_property in @widget packing properties</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether @id_property was found or not.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="id_property" transfer-ownership="none">
            <doc xml:space="preserve">a string naming a #GladeProperty</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="..." transfer-ownership="none">
            <doc xml:space="preserve">The return location for the value of the said #GladeProperty</doc>
            <varargs/>
          </parameter>
        </parameters>
      </method>
      <method name="pack_property_reset"
              c:identifier="glade_widget_pack_property_reset">
        <doc xml:space="preserve">Resets @id_property in @widget's packing properties to it's default value</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether @id_property was found or not.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="id_property" transfer-ownership="none">
            <doc xml:space="preserve">a string naming a #GladeProperty</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="pack_property_set"
              c:identifier="glade_widget_pack_property_set"
              introspectable="0">
        <doc xml:space="preserve">Sets the value of @id_property in @widget packing properties</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether @id_property was found or not.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="id_property" transfer-ownership="none">
            <doc xml:space="preserve">a string naming a #GladeProperty</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="..." transfer-ownership="none">
            <doc xml:space="preserve">The return location for the value of the said #GladeProperty</doc>
            <varargs/>
          </parameter>
        </parameters>
      </method>
      <method name="pack_property_set_enabled"
              c:identifier="glade_widget_pack_property_set_enabled">
        <doc xml:space="preserve">Sets the enabled state of @id_property in @widget's packing
properties; this is used for optional properties.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether @id_property was found or not.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="id_property" transfer-ownership="none">
            <doc xml:space="preserve">a string naming a #GladeProperty</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="enabled" transfer-ownership="none">
            <doc xml:space="preserve">setting enabled or disabled</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="pack_property_set_save_always"
              c:identifier="glade_widget_pack_property_set_save_always">
        <doc xml:space="preserve">Sets whether @id_property in @widget should be special cased
to always be saved regardless of its default value.
(used for some special cases like properties
that are assigned initial values in composite widgets
or derived widget code).</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether @id_property was found or not.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="id_property" transfer-ownership="none">
            <doc xml:space="preserve">a string naming a #GladeProperty</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="setting" transfer-ownership="none">
            <doc xml:space="preserve">the setting</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="pack_property_set_sensitive"
              c:identifier="glade_widget_pack_property_set_sensitive">
        <doc xml:space="preserve">Sets the sensitivity of @id_property in @widget's packing properties.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether @id_property was found or not.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="id_property" transfer-ownership="none">
            <doc xml:space="preserve">a string naming a #GladeProperty</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="sensitive" transfer-ownership="none">
            <doc xml:space="preserve">setting sensitive or insensitive</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
          <parameter name="reason" transfer-ownership="none">
            <doc xml:space="preserve">a description of why the user cant edit this property
         which will be used as a tooltip</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="pack_property_string"
              c:identifier="glade_widget_pack_property_string">
        <doc xml:space="preserve">Same as glade_widget_property_string() but for packing
properties.</doc>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve">A newly allocated string representing @id_property</doc>
          <type name="utf8" c:type="gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="id_property" transfer-ownership="none">
            <doc xml:space="preserve">a string naming a #GladeProperty</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve">the #GValue to print or %NULL</doc>
            <type name="GObject.Value" c:type="const GValue*"/>
          </parameter>
        </parameters>
      </method>
      <method name="placeholder_relation"
              c:identifier="glade_widget_placeholder_relation">
        <doc xml:space="preserve">Returns whether placeholders should be used
in operations concerning this parent &amp; child.

Currently that criteria is whether @parent is a
GtkContainer, @widget is a GtkWidget and the parent
adaptor has been marked to use placeholders.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether to use placeholders for this relationship.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="parent" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">The child #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
        </parameters>
      </method>
      <method name="property_default"
              c:identifier="glade_widget_property_default">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether whether @id_property was found and is
currently set to it's default value.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="id_property" transfer-ownership="none">
            <doc xml:space="preserve">a string naming a #GladeProperty</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="property_get"
              c:identifier="glade_widget_property_get"
              introspectable="0">
        <doc xml:space="preserve">Gets the value of @id_property in @widget</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether @id_property was found or not.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="id_property" transfer-ownership="none">
            <doc xml:space="preserve">a string naming a #GladeProperty</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="..." transfer-ownership="none">
            <doc xml:space="preserve">The return location for the value of the said #GladeProperty</doc>
            <varargs/>
          </parameter>
        </parameters>
      </method>
      <method name="property_original_default"
              c:identifier="glade_widget_property_original_default">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether whether @id_property was found and is
currently set to it's original default value.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="id_property" transfer-ownership="none">
            <doc xml:space="preserve">a string naming a #GladeProperty</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="property_reset" c:identifier="glade_widget_property_reset">
        <doc xml:space="preserve">Resets @id_property in @widget to it's default value</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether @id_property was found or not.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="id_property" transfer-ownership="none">
            <doc xml:space="preserve">a string naming a #GladeProperty</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="property_set"
              c:identifier="glade_widget_property_set"
              introspectable="0">
        <doc xml:space="preserve">Sets the value of @id_property in @widget</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether @id_property was found or not.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="id_property" transfer-ownership="none">
            <doc xml:space="preserve">a string naming a #GladeProperty</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="..." transfer-ownership="none">
            <doc xml:space="preserve">A value of the correct type for the said #GladeProperty</doc>
            <varargs/>
          </parameter>
        </parameters>
      </method>
      <method name="property_set_enabled"
              c:identifier="glade_widget_property_set_enabled">
        <doc xml:space="preserve">Sets the enabled state of @id_property in @widget; this is
used for optional properties.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether @id_property was found or not.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="id_property" transfer-ownership="none">
            <doc xml:space="preserve">a string naming a #GladeProperty</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="enabled" transfer-ownership="none">
            <doc xml:space="preserve">setting enabled or disabled</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="property_set_save_always"
              c:identifier="glade_widget_property_set_save_always">
        <doc xml:space="preserve">Sets whether @id_property in @widget should be special cased
to always be saved regardless of its default value.
(used for some special cases like properties
that are assigned initial values in composite widgets
or derived widget code).</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether @id_property was found or not.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="id_property" transfer-ownership="none">
            <doc xml:space="preserve">a string naming a #GladeProperty</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="setting" transfer-ownership="none">
            <doc xml:space="preserve">the setting</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="property_set_sensitive"
              c:identifier="glade_widget_property_set_sensitive">
        <doc xml:space="preserve">Sets the sensitivity of @id_property in @widget</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether @id_property was found or not.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="id_property" transfer-ownership="none">
            <doc xml:space="preserve">a string naming a #GladeProperty</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="sensitive" transfer-ownership="none">
            <doc xml:space="preserve">setting sensitive or insensitive</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
          <parameter name="reason" transfer-ownership="none">
            <doc xml:space="preserve">a description of why the user cant edit this property
         which will be used as a tooltip</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="property_string"
              c:identifier="glade_widget_property_string">
        <doc xml:space="preserve">Creates a printable string representing @id_property in
@widget, if @value is specified it will be used in place
of @id_property's real value (this is a convinience
function to print/debug properties usually from plugin
backends).</doc>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve">A newly allocated string representing @id_property</doc>
          <type name="utf8" c:type="gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="id_property" transfer-ownership="none">
            <doc xml:space="preserve">a string naming a #GladeProperty</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve">the #GValue to print or %NULL</doc>
            <type name="GObject.Value" c:type="const GValue*"/>
          </parameter>
        </parameters>
      </method>
      <method name="read_child" c:identifier="glade_widget_read_child">
        <doc xml:space="preserve">Reads in a child widget from the xml (handles 'child' tag)</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeXmlNode</doc>
            <type name="XmlNode" c:type="GladeXmlNode*"/>
          </parameter>
        </parameters>
      </method>
      <method name="rebuild" c:identifier="glade_widget_rebuild">
        <doc xml:space="preserve">Replaces the current widget instance with
a new one while preserving all properties children and
takes care of reparenting.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="gwidget" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="remove_child" c:identifier="glade_widget_remove_child">
        <doc xml:space="preserve">Removes @child from @parent in a generic way for this #GladeWidget parent.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="parent" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="child" transfer-ownership="none">
            <doc xml:space="preserve">the #GladeWidget to add</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
        </parameters>
      </method>
      <method name="remove_prop_ref"
              c:identifier="glade_widget_remove_prop_ref">
        <doc xml:space="preserve">Removes @property from @widget 's list of referenced properties.

Note: this is used to track properties on other objects that
      reffer to this object.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="property" transfer-ownership="none">
            <doc xml:space="preserve">the #GladeProperty</doc>
            <type name="Property" c:type="GladeProperty*"/>
          </parameter>
        </parameters>
      </method>
      <method name="remove_property"
              c:identifier="glade_widget_remove_property">
        <doc xml:space="preserve">Removes the #GladeProperty indicated by @id_property
from @widget (this is intended for use in the plugin, to
remove properties from composite children that dont make
sence to allow the user to specify, notably - properties
that are proxied through the composite widget's properties or
style properties).</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="id_property" transfer-ownership="none">
            <doc xml:space="preserve">the name of the property</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="remove_signal_handler"
              c:identifier="glade_widget_remove_signal_handler">
        <doc xml:space="preserve">Removes a signal handler from @widget</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="signal_handler" transfer-ownership="none">
            <doc xml:space="preserve">The #GladeSignal</doc>
            <type name="Signal" c:type="const GladeSignal*"/>
          </parameter>
        </parameters>
      </method>
      <method name="replace" c:identifier="glade_widget_replace">
        <doc xml:space="preserve">Replaces a GObject with another GObject inside a GObject which
behaves as a container.

Note that both GObjects must be owned by a GladeWidget.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="parent" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="old_object" transfer-ownership="none">
            <doc xml:space="preserve">a #GObject</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="new_object" transfer-ownership="none">
            <doc xml:space="preserve">a #GObject</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_action_sensitive"
              c:identifier="glade_widget_set_action_sensitive">
        <doc xml:space="preserve">Sets the sensitivity of @action_path in @widget</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether @action_path was found or not.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="action_path" transfer-ownership="none">
            <doc xml:space="preserve">a full action path including groups</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="sensitive" transfer-ownership="none">
            <doc xml:space="preserve">setting sensitive or insensitive</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_action_visible"
              c:identifier="glade_widget_set_action_visible">
        <doc xml:space="preserve">Sets the visibility of @action_path in @widget</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether @action_path was found or not.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="action_path" transfer-ownership="none">
            <doc xml:space="preserve">a full action path including groups</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="sensitive" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_child_type_from_node"
              c:identifier="glade_widget_set_child_type_from_node">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="parent" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="child" transfer-ownership="none">
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="node" transfer-ownership="none">
            <type name="XmlNode" c:type="GladeXmlNode*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_in_project" c:identifier="glade_widget_set_in_project">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="in_project" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_internal" c:identifier="glade_widget_set_internal">
        <doc xml:space="preserve">Sets the internal name of @widget to @internal</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="internal" transfer-ownership="none">
            <doc xml:space="preserve">The internal name</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_is_composite"
              c:identifier="glade_widget_set_is_composite">
        <doc xml:space="preserve">Set's this widget to be toplevel composite object to be
eventually used with gtk_widget_class_set_template()

Only one widget in a project should be composite.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="composite" transfer-ownership="none">
            <doc xml:space="preserve">whether @widget should be a composite template</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_name" c:identifier="glade_widget_set_name">
        <doc xml:space="preserve">Sets @widget's name to @name.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="name" transfer-ownership="none">
            <doc xml:space="preserve">a string</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_pack_action_sensitive"
              c:identifier="glade_widget_set_pack_action_sensitive">
        <doc xml:space="preserve">Sets the sensitivity of @action_path in @widget</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether @action_path was found or not.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="action_path" transfer-ownership="none">
            <doc xml:space="preserve">a full action path including groups</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="sensitive" transfer-ownership="none">
            <doc xml:space="preserve">setting sensitive or insensitive</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_pack_action_visible"
              c:identifier="glade_widget_set_pack_action_visible">
        <doc xml:space="preserve">Sets the visibility of @action_path in @widget</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether @action_path was found or not.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="action_path" transfer-ownership="none">
            <doc xml:space="preserve">a full action path including groups</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="sensitive" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_packing_properties"
              c:identifier="glade_widget_set_packing_properties">
        <doc xml:space="preserve">Generates the packing_properties list of the widget, given
the class of the container we are adding the widget to.
If the widget already has packing_properties, but the container
has changed, the current list is freed and replaced.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="container" transfer-ownership="none">
            <doc xml:space="preserve">The parent #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_parent" c:identifier="glade_widget_set_parent">
        <doc xml:space="preserve">sets the parenting #GladeWidget</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="parent" transfer-ownership="none">
            <doc xml:space="preserve">the parenting #GladeWidget (or %NULL)</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_project" c:identifier="glade_widget_set_project">
        <doc xml:space="preserve">Makes @widget belong to @project.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="project" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeProject</doc>
            <type name="Project" c:type="GladeProject*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_support_warning"
              c:identifier="glade_widget_set_support_warning">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="warning" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="show" c:identifier="glade_widget_show">
        <doc xml:space="preserve">Display @widget in it's project's GladeDesignView</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="support_changed"
              c:identifier="glade_widget_support_changed">
        <doc xml:space="preserve">Notifies that support metadata has changed on the widget.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="support_warning"
              c:identifier="glade_widget_support_warning">
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="unlock" c:identifier="glade_widget_unlock">
        <doc xml:space="preserve">Unlocks @widget so that it can be removed
from the project again</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="verify" c:identifier="glade_widget_verify">
        <doc xml:space="preserve">Verify this widget for deprecation and versioning warnings.

This function will update the widget's support warning.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="write" c:identifier="glade_widget_write">
        <doc xml:space="preserve">Recursively writes out @widget and its children
and appends the created #GladeXmlNode to @node.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">The #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="context" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeXmlContext</doc>
            <type name="XmlContext" c:type="GladeXmlContext*"/>
          </parameter>
          <parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeXmlNode</doc>
            <type name="XmlNode" c:type="GladeXmlNode*"/>
          </parameter>
        </parameters>
      </method>
      <method name="write_child" c:identifier="glade_widget_write_child">
        <doc xml:space="preserve">Writes out a widget to the xml, takes care
of packing properties and special child types.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="child" transfer-ownership="none">
            <doc xml:space="preserve">The child #GladeWidget to write</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
          <parameter name="context" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeXmlContext</doc>
            <type name="XmlContext" c:type="GladeXmlContext*"/>
          </parameter>
          <parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeXmlNode</doc>
            <type name="XmlNode" c:type="GladeXmlNode*"/>
          </parameter>
        </parameters>
      </method>
      <method name="write_placeholder"
              c:identifier="glade_widget_write_placeholder">
        <doc xml:space="preserve">Writes out a placeholder to the xml</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="parent" transfer-ownership="none">
            <doc xml:space="preserve">The parent #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="object" transfer-ownership="none">
            <doc xml:space="preserve">A #GladePlaceHolder</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="context" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeXmlContext</doc>
            <type name="XmlContext" c:type="GladeXmlContext*"/>
          </parameter>
          <parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeXmlNode</doc>
            <type name="XmlNode" c:type="GladeXmlNode*"/>
          </parameter>
        </parameters>
      </method>
      <method name="write_signals" c:identifier="glade_widget_write_signals">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="context" transfer-ownership="none">
            <type name="XmlContext" c:type="GladeXmlContext*"/>
          </parameter>
          <parameter name="node" transfer-ownership="none">
            <type name="XmlNode" c:type="GladeXmlNode*"/>
          </parameter>
        </parameters>
      </method>
      <method name="write_special_child_prop"
              c:identifier="glade_widget_write_special_child_prop">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="parent" transfer-ownership="none">
            <type name="Widget" c:type="GladeWidget*"/>
          </instance-parameter>
          <parameter name="object" transfer-ownership="none">
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="context" transfer-ownership="none">
            <type name="XmlContext" c:type="GladeXmlContext*"/>
          </parameter>
          <parameter name="node" transfer-ownership="none">
            <type name="XmlNode" c:type="GladeXmlNode*"/>
          </parameter>
        </parameters>
      </method>
      <property name="adaptor"
                writable="1"
                construct-only="1"
                transfer-ownership="none">
        <type name="WidgetAdaptor"/>
      </property>
      <property name="anarchist"
                writable="1"
                construct-only="1"
                transfer-ownership="none">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="composite" writable="1" transfer-ownership="none">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="internal"
                writable="1"
                construct="1"
                transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="internal-name"
                readable="0"
                writable="1"
                construct-only="1"
                transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="name"
                writable="1"
                construct="1"
                transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="object"
                writable="1"
                construct="1"
                transfer-ownership="none">
        <type name="GObject.Object"/>
      </property>
      <property name="parent"
                writable="1"
                construct="1"
                transfer-ownership="none">
        <type name="Widget"/>
      </property>
      <property name="project"
                writable="1"
                construct="1"
                transfer-ownership="none">
        <type name="Project"/>
      </property>
      <property name="properties"
                writable="1"
                construct-only="1"
                transfer-ownership="none">
        <type name="gpointer" c:type="gpointer"/>
      </property>
      <property name="reason"
                writable="1"
                construct-only="1"
                transfer-ownership="none">
        <type name="gint" c:type="gint"/>
      </property>
      <property name="support-warning" transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="template"
                readable="0"
                writable="1"
                construct-only="1"
                transfer-ownership="none">
        <type name="Widget"/>
      </property>
      <property name="template-exact"
                readable="0"
                writable="1"
                construct-only="1"
                transfer-ownership="none">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="toplevel-height" writable="1" transfer-ownership="none">
        <type name="gint" c:type="gint"/>
      </property>
      <property name="toplevel-width" writable="1" transfer-ownership="none">
        <type name="gint" c:type="gint"/>
      </property>
      <property name="visible" transfer-ownership="none">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <field name="parent_instance">
        <type name="GObject.InitiallyUnowned" c:type="GInitiallyUnowned"/>
      </field>
      <field name="priv">
        <type name="WidgetPrivate" c:type="GladeWidgetPrivate*"/>
      </field>
      <glib:signal name="add-signal-handler" when="last">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="arg1" transfer-ownership="none">
            <doc xml:space="preserve">the #GladeSignal that was added to @gladewidget.</doc>
            <type name="Signal"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="button-press-event" when="last">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <parameter name="arg1" transfer-ownership="none">
            <doc xml:space="preserve">the #GdkEvent</doc>
            <type name="Gdk.Event"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="button-release-event" when="last">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <parameter name="object" transfer-ownership="none">
            <type name="Gdk.Event"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="change-signal-handler" when="last">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="arg1" transfer-ownership="none">
            <doc xml:space="preserve">the old #GladeSignal</doc>
            <type name="Signal"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="motion-notify-event" when="last">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <parameter name="arg1" transfer-ownership="none">
            <doc xml:space="preserve">the #GdkEvent</doc>
            <type name="Gdk.Event"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="remove-signal-handler" when="last">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="arg1" transfer-ownership="none">
            <doc xml:space="preserve">the #GladeSignal that was removed from @gladewidget.</doc>
            <type name="Signal"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="support-changed" when="last">
        <doc xml:space="preserve">Emitted when property and signal support metadatas and messages
have been updated.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
    </class>
    <class name="WidgetAction"
           c:symbol-prefix="widget_action"
           c:type="GladeWidgetAction"
           parent="GObject.Object"
           glib:type-name="GladeWidgetAction"
           glib:get-type="glade_widget_action_get_type"
           glib:type-struct="WidgetActionClass">
      <method name="get_children"
              c:identifier="glade_widget_action_get_children"
              introspectable="0">
        <return-value>
          <type name="GLib.List" c:type="GList*">
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="action" transfer-ownership="none">
            <type name="WidgetAction" c:type="GladeWidgetAction*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_class"
              c:identifier="glade_widget_action_get_class"
              introspectable="0">
        <return-value>
          <type c:type="GWActionClass*"/>
        </return-value>
        <parameters>
          <instance-parameter name="action" transfer-ownership="none">
            <type name="WidgetAction" c:type="GladeWidgetAction*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_sensitive"
              c:identifier="glade_widget_action_get_sensitive">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="action" transfer-ownership="none">
            <type name="WidgetAction" c:type="GladeWidgetAction*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_visible"
              c:identifier="glade_widget_action_get_visible">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="action" transfer-ownership="none">
            <type name="WidgetAction" c:type="GladeWidgetAction*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_sensitive"
              c:identifier="glade_widget_action_set_sensitive">
        <doc xml:space="preserve">Set whether or not this action is sensitive.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="action" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidgetAction</doc>
            <type name="WidgetAction" c:type="GladeWidgetAction*"/>
          </instance-parameter>
          <parameter name="sensitive" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_visible"
              c:identifier="glade_widget_action_set_visible">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="action" transfer-ownership="none">
            <type name="WidgetAction" c:type="GladeWidgetAction*"/>
          </instance-parameter>
          <parameter name="visible" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <property name="class"
                readable="0"
                writable="1"
                construct-only="1"
                transfer-ownership="none">
        <type name="gpointer" c:type="gpointer"/>
      </property>
      <property name="sensitive" writable="1" transfer-ownership="none">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="visible" writable="1" transfer-ownership="none">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <field name="parent_instance">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
      <field name="priv">
        <type name="WidgetActionPrivate" c:type="GladeWidgetActionPrivate*"/>
      </field>
    </class>
    <record name="WidgetActionClass"
            c:type="GladeWidgetActionClass"
            glib:is-gtype-struct-for="WidgetAction">
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
      <field name="glade_reserved1">
        <callback name="glade_reserved1">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved2">
        <callback name="glade_reserved2">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved3">
        <callback name="glade_reserved3">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved4">
        <callback name="glade_reserved4">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <function name="clone"
                c:identifier="glade_widget_action_class_clone"
                introspectable="0">
        <return-value>
          <doc xml:space="preserve">a newlly allocated copy of @action.</doc>
          <type c:type="GWActionClass*"/>
        </return-value>
        <parameters>
          <parameter name="action" transfer-ownership="none">
            <doc xml:space="preserve">a GWActionClass</doc>
            <type c:type="GWActionClass*"/>
          </parameter>
        </parameters>
      </function>
      <function name="free"
                c:identifier="glade_widget_action_class_free"
                introspectable="0">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="action" transfer-ownership="none">
            <type c:type="GWActionClass*"/>
          </parameter>
        </parameters>
      </function>
      <function name="new"
                c:identifier="glade_widget_action_class_new"
                introspectable="0">
        <return-value>
          <doc xml:space="preserve">a newlly created #GWActionClass for @path.</doc>
          <type c:type="GWActionClass*"/>
        </return-value>
        <parameters>
          <parameter name="path" transfer-ownership="none">
            <doc xml:space="preserve">the action path</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="set_important"
                c:identifier="glade_widget_action_class_set_important"
                introspectable="0">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="action" transfer-ownership="none">
            <type c:type="GWActionClass*"/>
          </parameter>
          <parameter name="important" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </function>
      <function name="set_label"
                c:identifier="glade_widget_action_class_set_label"
                introspectable="0">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="action" transfer-ownership="none">
            <type c:type="GWActionClass*"/>
          </parameter>
          <parameter name="label" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="set_stock"
                c:identifier="glade_widget_action_class_set_stock"
                introspectable="0">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="action" transfer-ownership="none">
            <type c:type="GWActionClass*"/>
          </parameter>
          <parameter name="stock" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
    </record>
    <record name="WidgetActionPrivate"
            c:type="GladeWidgetActionPrivate"
            disguised="1">
    </record>
    <class name="WidgetAdaptor"
           c:symbol-prefix="widget_adaptor"
           c:type="GladeWidgetAdaptor"
           parent="GObject.Object"
           glib:type-name="GladeWidgetAdaptor"
           glib:get-type="glade_widget_adaptor_get_type"
           glib:type-struct="WidgetAdaptorClass">
      <function name="create_widget_real"
                c:identifier="glade_widget_adaptor_create_widget_real"
                introspectable="0">
        <return-value>
          <type name="Widget" c:type="GladeWidget*"/>
        </return-value>
        <parameters>
          <parameter name="query" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
          <parameter name="first_property" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="..." transfer-ownership="none">
            <varargs/>
          </parameter>
        </parameters>
      </function>
      <function name="from_catalog"
                c:identifier="glade_widget_adaptor_from_catalog"
                introspectable="0">
        <doc xml:space="preserve">Dynamicly creates a subclass of #GladeWidgetAdaptor and subclasses
the closest parent adaptor (parent class adapters must be creates/registerd
prior to child classes, otherwise inheritance wont work) and parses in
the relevent catalog info.</doc>
        <return-value>
          <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
        </return-value>
        <parameters>
          <parameter name="catalog" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeCatalog</doc>
            <type name="Catalog" c:type="GladeCatalog*"/>
          </parameter>
          <parameter name="class_node" transfer-ownership="none">
            <doc xml:space="preserve">the #GladeXmlNode to load</doc>
            <type name="XmlNode" c:type="GladeXmlNode*"/>
          </parameter>
          <parameter name="module" transfer-ownership="none">
            <doc xml:space="preserve">the plugin GModule.</doc>
            <type name="GModule.Module" c:type="GModule*"/>
          </parameter>
        </parameters>
      </function>
      <function name="get_by_name"
                c:identifier="glade_widget_adaptor_get_by_name"
                introspectable="0">
        <return-value>
          <doc xml:space="preserve">an existing #GladeWidgetAdaptor with the name equaling @name,
         or %NULL if such a class doesn't exist</doc>
          <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
        </return-value>
        <parameters>
          <parameter name="name" transfer-ownership="none">
            <doc xml:space="preserve">name of the widget class (for instance: GtkButton)</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="get_by_type"
                c:identifier="glade_widget_adaptor_get_by_type"
                introspectable="0">
        <return-value>
          <doc xml:space="preserve">an existing #GladeWidgetAdaptor with the type equaling @type,
         or %NULL if such a class doesn't exist</doc>
          <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
        </return-value>
        <parameters>
          <parameter name="type" transfer-ownership="none">
            <doc xml:space="preserve">the #GType of an object class</doc>
            <type name="GType" c:type="GType"/>
          </parameter>
        </parameters>
      </function>
      <function name="list_adaptors"
                c:identifier="glade_widget_adaptor_list_adaptors"
                introspectable="0">
        <doc xml:space="preserve">Compiles a list of all registered adaptors.</doc>
        <return-value>
          <doc xml:space="preserve">A newly allocated #GList which must be freed with g_list_free()</doc>
          <type name="GLib.List" c:type="GList*">
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </return-value>
      </function>
      <virtual-method name="action_activate" invoker="action_activate">
        <doc xml:space="preserve">An adaptor function to be called on widget actions.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="object" transfer-ownership="none">
            <doc xml:space="preserve">The #GObject</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="action_path" transfer-ownership="none">
            <doc xml:space="preserve">The action identifier in the action tree</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="action_submenu"
                      invoker="action_submenu"
                      introspectable="0">
        <doc xml:space="preserve">This delagate function is used to create dynamically customized
submenus. Called only for actions that dont have children.</doc>
        <return-value>
          <doc xml:space="preserve">A newly created #GtkMenu or %NULL</doc>
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="object" transfer-ownership="none">
            <doc xml:space="preserve">The #GObject</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="action_path" transfer-ownership="none">
            <doc xml:space="preserve">The action identifier in the action tree</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="add" invoker="add">
        <doc xml:space="preserve">Adds @child to @container.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="parent" transfer-ownership="none">
            <doc xml:space="preserve">A #GObject container</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="child" transfer-ownership="none">
            <doc xml:space="preserve">The #GObject child</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="add_verify" invoker="add_verify">
        <doc xml:space="preserve">Checks whether @child can be added to @parent.

If @user_feedback is %TRUE and @child cannot be
added then this shows a notification dialog to the user
explaining why.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether @child can be added to @parent.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="parent" transfer-ownership="none">
            <doc xml:space="preserve">A #GObject container</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="child" transfer-ownership="none">
            <doc xml:space="preserve">A #GObject child</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="user_feedback" transfer-ownership="none">
            <doc xml:space="preserve">whether a notification dialog should be
presented in the case that the child cannot not be added.</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="child_action_activate"
                      invoker="child_action_activate">
        <doc xml:space="preserve">An adaptor function to be called on widget actions.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="container" transfer-ownership="none">
            <doc xml:space="preserve">The #GtkContainer</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="object" transfer-ownership="none">
            <doc xml:space="preserve">The #GObject</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="action_path" transfer-ownership="none">
            <doc xml:space="preserve">The action identifier in the action tree</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="child_get_property" invoker="child_get_property">
        <doc xml:space="preserve">Gets @child's packing property identified by @property_name.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="container" transfer-ownership="none">
            <doc xml:space="preserve">The #GObject container</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="child" transfer-ownership="none">
            <doc xml:space="preserve">The #GObject child</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="property_name" transfer-ownership="none">
            <doc xml:space="preserve">The id of the property</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve">The @GValue</doc>
            <type name="GObject.Value" c:type="GValue*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="child_set_property" invoker="child_set_property">
        <doc xml:space="preserve">Sets @child's packing property identified by @property_name to @value.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="container" transfer-ownership="none">
            <doc xml:space="preserve">The #GObject container</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="child" transfer-ownership="none">
            <doc xml:space="preserve">The #GObject child</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="property_name" transfer-ownership="none">
            <doc xml:space="preserve">The id of the property</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve">The @GValue</doc>
            <type name="GObject.Value" c:type="const GValue*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="child_verify_property"
                      invoker="child_verify_property">
        <doc xml:space="preserve">This delagate function is always called whenever setting any
properties with the exception of load time, and copy/paste time
(basicly the two places where we recreate a hierarchy that we
already know "works") its basicly an optional backend provided
boundry checker for properties.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether or not its OK to set @value on @object, this function
will silently return TRUE if the class did not provide a verify function.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="container" transfer-ownership="none">
            <doc xml:space="preserve">The #GObject container</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="child" transfer-ownership="none">
            <doc xml:space="preserve">The #GObject child</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="property_name" transfer-ownership="none">
            <doc xml:space="preserve">The id of the property</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve">The @GValue</doc>
            <type name="GObject.Value" c:type="const GValue*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="construct_object"
                      invoker="construct_object"
                      introspectable="0">
        <doc xml:space="preserve">This function is called to construct a GObject instance for
a #GladeWidget of the said @adaptor. (provided for language
bindings that may need to construct a wrapper object).</doc>
        <return-value>
          <doc xml:space="preserve">A newly created #GObject</doc>
          <type name="GObject.Object" c:type="GObject*"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="n_parameters" transfer-ownership="none">
            <doc xml:space="preserve">amount of construct parameters</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
          <parameter name="parameters" transfer-ownership="none">
            <doc xml:space="preserve">array of construct #GParameter args to create
             the new object with.</doc>
            <type name="GObject.Parameter" c:type="GParameter*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="create_editable"
                      invoker="create_editable"
                      introspectable="0">
        <doc xml:space="preserve">This is used to allow the backend to override the way an
editor page is layed out (note that editor widgets are created
on demand and not at startup).</doc>
        <return-value>
          <doc xml:space="preserve">A new #GladeEditable widget</doc>
          <type name="Editable" c:type="GladeEditable*"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="type" transfer-ownership="none">
            <doc xml:space="preserve">The #GladeEditorPageType</doc>
            <type name="EditorPageType" c:type="GladeEditorPageType"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="create_eprop"
                      invoker="create_eprop"
                      introspectable="0">
        <doc xml:space="preserve">Creates a GladeEditorProperty to edit @klass</doc>
        <return-value>
          <doc xml:space="preserve">A newly created #GladeEditorProperty</doc>
          <type name="EditorProperty" c:type="GladeEditorProperty*"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="klass" transfer-ownership="none">
            <doc xml:space="preserve">The #GladePropertyClass to be edited</doc>
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </parameter>
          <parameter name="use_command" transfer-ownership="none">
            <doc xml:space="preserve">whether to use the GladeCommand interface
to commit property changes</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="create_widget" introspectable="0">
        <return-value>
          <doc xml:space="preserve">A newly created #GladeWidget for the said adaptor.</doc>
          <type name="Widget" c:type="GladeWidget*"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="first_property_name" transfer-ownership="none">
            <doc xml:space="preserve">the name of the first property</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="var_args" transfer-ownership="none">
            <doc xml:space="preserve">the value of the first property, followed optionally by more
 name/value pairs, followed by %NULL</doc>
            <type name="va_list" c:type="va_list"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="deep_post_create">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="object" transfer-ownership="none">
            <doc xml:space="preserve">The #GObject</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="reason" transfer-ownership="none">
            <doc xml:space="preserve">The #GladeCreateReason that @object was created for</doc>
            <type name="CreateReason" c:type="GladeCreateReason"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="depends"
                      invoker="depends"
                      deprecated="1"
                      deprecated-version="3.18">
        <doc xml:space="preserve">Checks whether @widget depends on @another to be placed earlier in
the glade file.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether @widget depends on @another being parsed first in
the resulting glade file.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidget of the adaptor</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
          <parameter name="another" transfer-ownership="none">
            <doc xml:space="preserve">another #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="destroy_object" invoker="destroy_object">
        <doc xml:space="preserve">This function is called to destroy a GObject instance.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="object" transfer-ownership="none">
            <doc xml:space="preserve">The object to destroy</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="get_children"
                      invoker="get_children"
                      introspectable="0">
        <doc xml:space="preserve">Lists the children of @container.</doc>
        <return-value>
          <doc xml:space="preserve">A #GList of children</doc>
          <type name="GLib.List" c:type="GList*">
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="container" transfer-ownership="none">
            <doc xml:space="preserve">The #GObject container</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="get_internal_child"
                      invoker="get_internal_child"
                      introspectable="0">
        <doc xml:space="preserve">Retrieves the internal object @internal_name from @object</doc>
        <return-value>
          <doc xml:space="preserve">The internal #GObject</doc>
          <type name="GObject.Object" c:type="GObject*"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="parent" transfer-ownership="none">
            <doc xml:space="preserve">A #GObject composite object</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="name" transfer-ownership="none">
            <doc xml:space="preserve">A string identifier</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="get_property" invoker="get_property">
        <doc xml:space="preserve">Gets @value of @property_name on @object.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="object" transfer-ownership="none">
            <doc xml:space="preserve">The #GObject</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="property_name" transfer-ownership="none">
            <doc xml:space="preserve">The property identifier</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve">The #GValue</doc>
            <type name="GObject.Value" c:type="GValue*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="post_create" invoker="post_create">
        <doc xml:space="preserve">An adaptor function to be called after the object is created</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="object" transfer-ownership="none">
            <doc xml:space="preserve">The #GObject</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="reason" transfer-ownership="none">
            <doc xml:space="preserve">The #GladeCreateReason that @object was created for</doc>
            <type name="CreateReason" c:type="GladeCreateReason"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="read_child" invoker="read_child">
        <doc xml:space="preserve">This function is called to update load a child @widget
from @node when loading xml files (will recurse into
glade_widget_read())</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">The #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
          <parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve">The #GladeXmlNode</doc>
            <type name="XmlNode" c:type="GladeXmlNode*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="read_widget" invoker="read_widget">
        <doc xml:space="preserve">This function is called to update @widget from @node
when loading xml files.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">The #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
          <parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve">The #GladeXmlNode</doc>
            <type name="XmlNode" c:type="GladeXmlNode*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="remove" invoker="remove">
        <doc xml:space="preserve">Removes @child from @container.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="parent" transfer-ownership="none">
            <doc xml:space="preserve">A #GObject container</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="child" transfer-ownership="none">
            <doc xml:space="preserve">The #GObject child</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="replace_child" invoker="replace_child">
        <doc xml:space="preserve">Replaces @old_obj with @new_obj in @container while positioning
@new_obj where @old_obj was and assigning it appropriate packing
property values.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="container" transfer-ownership="none">
            <doc xml:space="preserve">The #GObject container</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="old_obj" transfer-ownership="none">
            <doc xml:space="preserve">The old #GObject child</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="new_obj" transfer-ownership="none">
            <doc xml:space="preserve">The new #GObject child</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="set_property" invoker="set_property">
        <doc xml:space="preserve">This delagate function is used to apply the property value on
the runtime object.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="object" transfer-ownership="none">
            <doc xml:space="preserve">The #GObject</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="property_name" transfer-ownership="none">
            <doc xml:space="preserve">The property identifier</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve">The #GValue</doc>
            <type name="GObject.Value" c:type="const GValue*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="string_from_value" invoker="string_from_value">
        <doc xml:space="preserve">For normal properties this is used to serialize
property values, for custom properties its still
needed to update the UI for undo/redo items etc.</doc>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve">A newly allocated string representation of @value</doc>
          <type name="utf8" c:type="gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="klass" transfer-ownership="none">
            <doc xml:space="preserve">The #GladePropertyClass</doc>
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve">The #GValue to convert to a string</doc>
            <type name="GObject.Value" c:type="const GValue*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="verify_property" invoker="verify_property">
        <doc xml:space="preserve">This delagate function is always called whenever setting any
properties with the exception of load time, and copy/paste time
(basicly the two places where we recreate a hierarchy that we
already know "works") its basicly an optional backend provided
boundry checker for properties.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether or not its OK to set @value on @object, this function
will silently return TRUE if the class did not provide a verify function.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="object" transfer-ownership="none">
            <doc xml:space="preserve">The #GObject</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="property_name" transfer-ownership="none">
            <doc xml:space="preserve">The property identifier</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve">The #GValue</doc>
            <type name="GObject.Value" c:type="const GValue*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="write_child" invoker="write_child">
        <doc xml:space="preserve">This function is called to write the child @widget to @node
when writing xml files (takes care of packing and recurses
into glade_widget_write())</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">The #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
          <parameter name="context" transfer-ownership="none">
            <doc xml:space="preserve">The #GladeXmlContext</doc>
            <type name="XmlContext" c:type="GladeXmlContext*"/>
          </parameter>
          <parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve">The #GladeXmlNode</doc>
            <type name="XmlNode" c:type="GladeXmlNode*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="write_widget" invoker="write_widget">
        <doc xml:space="preserve">This function is called to write @widget to @node
when writing xml files.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">The #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
          <parameter name="context" transfer-ownership="none">
            <doc xml:space="preserve">The #GladeXmlContext</doc>
            <type name="XmlContext" c:type="GladeXmlContext*"/>
          </parameter>
          <parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve">The #GladeXmlNode</doc>
            <type name="XmlNode" c:type="GladeXmlNode*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="write_widget_after" invoker="write_widget_after">
        <doc xml:space="preserve">This function is called to write @widget to @node
when writing xml files (after writing children)</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">The #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
          <parameter name="context" transfer-ownership="none">
            <doc xml:space="preserve">The #GladeXmlContext</doc>
            <type name="XmlContext" c:type="GladeXmlContext*"/>
          </parameter>
          <parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve">The #GladeXmlNode</doc>
            <type name="XmlNode" c:type="GladeXmlNode*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <method name="action_activate"
              c:identifier="glade_widget_adaptor_action_activate">
        <doc xml:space="preserve">An adaptor function to be called on widget actions.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="object" transfer-ownership="none">
            <doc xml:space="preserve">The #GObject</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="action_path" transfer-ownership="none">
            <doc xml:space="preserve">The action identifier in the action tree</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="action_add" c:identifier="glade_widget_adaptor_action_add">
        <doc xml:space="preserve">Add an action to @adaptor.
If the action is present then it overrides label and stock</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether or not the action was added/updated.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="action_path" transfer-ownership="none">
            <doc xml:space="preserve">The identifier of this action in the action tree</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="label" transfer-ownership="none">
            <doc xml:space="preserve">A translated label to show in the UI for this action</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="stock" transfer-ownership="none">
            <doc xml:space="preserve">If set, this stock item will be shown in the UI along side the label.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="important" transfer-ownership="none">
            <doc xml:space="preserve">if this action is important.</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="action_remove"
              c:identifier="glade_widget_adaptor_action_remove">
        <doc xml:space="preserve">Remove an @adaptor's action.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether or not the action was removed.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="action_path" transfer-ownership="none">
            <doc xml:space="preserve">The identifier of this action in the action tree</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="action_submenu"
              c:identifier="glade_widget_adaptor_action_submenu"
              introspectable="0">
        <doc xml:space="preserve">This delagate function is used to create dynamically customized
submenus. Called only for actions that dont have children.</doc>
        <return-value>
          <doc xml:space="preserve">A newly created #GtkMenu or %NULL</doc>
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="object" transfer-ownership="none">
            <doc xml:space="preserve">The #GObject</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="action_path" transfer-ownership="none">
            <doc xml:space="preserve">The action identifier in the action tree</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="actions_new"
              c:identifier="glade_widget_adaptor_actions_new"
              introspectable="0">
        <doc xml:space="preserve">Create a list of actions.</doc>
        <return-value>
          <doc xml:space="preserve">a new list of GladeWidgetAction.</doc>
          <type name="GLib.List" c:type="GList*">
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="add" c:identifier="glade_widget_adaptor_add">
        <doc xml:space="preserve">Adds @child to @container.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="container" transfer-ownership="none">
            <doc xml:space="preserve">The #GObject container</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="child" transfer-ownership="none">
            <doc xml:space="preserve">The #GObject child</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
        </parameters>
      </method>
      <method name="add_verify" c:identifier="glade_widget_adaptor_add_verify">
        <doc xml:space="preserve">Checks whether @child can be added to @parent.

If @user_feedback is %TRUE and @child cannot be
added then this shows a notification dialog to the user
explaining why.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether @child can be added to @parent.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="container" transfer-ownership="none">
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="child" transfer-ownership="none">
            <doc xml:space="preserve">A #GObject child</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="user_feedback" transfer-ownership="none">
            <doc xml:space="preserve">whether a notification dialog should be
presented in the case that the child cannot not be added.</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="child_action_activate"
              c:identifier="glade_widget_adaptor_child_action_activate">
        <doc xml:space="preserve">An adaptor function to be called on widget actions.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="container" transfer-ownership="none">
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="object" transfer-ownership="none">
            <doc xml:space="preserve">The #GObject</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="action_path" transfer-ownership="none">
            <doc xml:space="preserve">The action identifier in the action tree</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="child_get_property"
              c:identifier="glade_widget_adaptor_child_get_property">
        <doc xml:space="preserve">Gets @child's packing property identified by @property_name.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="container" transfer-ownership="none">
            <doc xml:space="preserve">The #GObject container</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="child" transfer-ownership="none">
            <doc xml:space="preserve">The #GObject child</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="property_name" transfer-ownership="none">
            <doc xml:space="preserve">The id of the property</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve">The @GValue</doc>
            <type name="GObject.Value" c:type="GValue*"/>
          </parameter>
        </parameters>
      </method>
      <method name="child_set_property"
              c:identifier="glade_widget_adaptor_child_set_property">
        <doc xml:space="preserve">Sets @child's packing property identified by @property_name to @value.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="container" transfer-ownership="none">
            <doc xml:space="preserve">The #GObject container</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="child" transfer-ownership="none">
            <doc xml:space="preserve">The #GObject child</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="property_name" transfer-ownership="none">
            <doc xml:space="preserve">The id of the property</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve">The @GValue</doc>
            <type name="GObject.Value" c:type="const GValue*"/>
          </parameter>
        </parameters>
      </method>
      <method name="child_verify_property"
              c:identifier="glade_widget_adaptor_child_verify_property">
        <doc xml:space="preserve">This delagate function is always called whenever setting any
properties with the exception of load time, and copy/paste time
(basicly the two places where we recreate a hierarchy that we
already know "works") its basicly an optional backend provided
boundry checker for properties.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether or not its OK to set @value on @object, this function
will silently return TRUE if the class did not provide a verify function.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="container" transfer-ownership="none">
            <doc xml:space="preserve">The #GObject container</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="child" transfer-ownership="none">
            <doc xml:space="preserve">The #GObject child</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="property_name" transfer-ownership="none">
            <doc xml:space="preserve">The id of the property</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve">The @GValue</doc>
            <type name="GObject.Value" c:type="const GValue*"/>
          </parameter>
        </parameters>
      </method>
      <method name="construct_object"
              c:identifier="glade_widget_adaptor_construct_object"
              introspectable="0">
        <doc xml:space="preserve">This function is called to construct a GObject instance for
a #GladeWidget of the said @adaptor. (provided for language
bindings that may need to construct a wrapper object).</doc>
        <return-value>
          <doc xml:space="preserve">A newly created #GObject</doc>
          <type name="GObject.Object" c:type="GObject*"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="n_parameters" transfer-ownership="none">
            <doc xml:space="preserve">amount of construct parameters</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
          <parameter name="parameters" transfer-ownership="none">
            <doc xml:space="preserve">array of construct #GParameter args to create
             the new object with.</doc>
            <type name="GObject.Parameter" c:type="GParameter*"/>
          </parameter>
        </parameters>
      </method>
      <method name="create_editable"
              c:identifier="glade_widget_adaptor_create_editable"
              introspectable="0">
        <doc xml:space="preserve">This is used to allow the backend to override the way an
editor page is layed out (note that editor widgets are created
on demand and not at startup).</doc>
        <return-value>
          <doc xml:space="preserve">A new #GladeEditable widget</doc>
          <type name="Editable" c:type="GladeEditable*"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="type" transfer-ownership="none">
            <doc xml:space="preserve">The #GladeEditorPageType</doc>
            <type name="EditorPageType" c:type="GladeEditorPageType"/>
          </parameter>
        </parameters>
      </method>
      <method name="create_eprop"
              c:identifier="glade_widget_adaptor_create_eprop"
              introspectable="0">
        <doc xml:space="preserve">Creates a GladeEditorProperty to edit @klass</doc>
        <return-value>
          <doc xml:space="preserve">A newly created #GladeEditorProperty</doc>
          <type name="EditorProperty" c:type="GladeEditorProperty*"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="klass" transfer-ownership="none">
            <doc xml:space="preserve">The #GladePropertyClass to be edited</doc>
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </parameter>
          <parameter name="use_command" transfer-ownership="none">
            <doc xml:space="preserve">whether to use the GladeCommand interface
to commit property changes</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="create_eprop_by_name"
              c:identifier="glade_widget_adaptor_create_eprop_by_name"
              introspectable="0">
        <doc xml:space="preserve">Creates a #GladeEditorProperty to edit #GladePropertyClass @name in @adaptor</doc>
        <return-value>
          <doc xml:space="preserve">A newly created #GladeEditorProperty</doc>
          <type name="EditorProperty" c:type="GladeEditorProperty*"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="property_id" transfer-ownership="none">
            <doc xml:space="preserve">the string if of the coresponding #GladePropertyClass to be edited</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="packing" transfer-ownership="none">
            <doc xml:space="preserve">whether this reffers to a packing property</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
          <parameter name="use_command" transfer-ownership="none">
            <doc xml:space="preserve">whether to use the GladeCommand interface
to commit property changes</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="default_params"
              c:identifier="glade_widget_adaptor_default_params"
              introspectable="0">
        <return-value>
          <type name="GObject.Parameter" c:type="GParameter*"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="construct" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
          <parameter name="n_params" transfer-ownership="none">
            <type name="guint" c:type="guint*"/>
          </parameter>
        </parameters>
      </method>
      <method name="depends"
              c:identifier="glade_widget_adaptor_depends"
              deprecated="1"
              deprecated-version="3.18">
        <doc xml:space="preserve">Checks whether @widget depends on @another to be placed earlier in
the glade file.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether @widget depends on @another being parsed first in
the resulting glade file.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidget of the adaptor</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
          <parameter name="another" transfer-ownership="none">
            <doc xml:space="preserve">another #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
        </parameters>
      </method>
      <method name="destroy_object"
              c:identifier="glade_widget_adaptor_destroy_object">
        <doc xml:space="preserve">This function is called to destroy a GObject instance.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="object" transfer-ownership="none">
            <doc xml:space="preserve">The object to destroy</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
        </parameters>
      </method>
      <method name="from_pspec"
              c:identifier="glade_widget_adaptor_from_pspec"
              introspectable="0">
        <doc xml:space="preserve">Assumes @pspec is a property in an object class wrapped by @adaptor,
this function will search for the specific parent adaptor class which
originally introduced @pspec.</doc>
        <return-value>
          <doc xml:space="preserve">the closest #GladeWidgetAdaptor in the ancestry to @adaptor
         which is responsable for introducing @pspec.</doc>
          <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="spec" transfer-ownership="none">
            <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_book" c:identifier="glade_widget_adaptor_get_book">
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_catalog"
              c:identifier="glade_widget_adaptor_get_catalog">
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_children"
              c:identifier="glade_widget_adaptor_get_children"
              introspectable="0">
        <doc xml:space="preserve">Lists the children of @container.</doc>
        <return-value>
          <doc xml:space="preserve">A #GList of children</doc>
          <type name="GLib.List" c:type="GList*">
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="container" transfer-ownership="none">
            <doc xml:space="preserve">The #GObject container</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_generic_name"
              c:identifier="glade_widget_adaptor_get_generic_name">
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_icon_name"
              c:identifier="glade_widget_adaptor_get_icon_name">
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_internal_child"
              c:identifier="glade_widget_adaptor_get_internal_child"
              introspectable="0">
        <doc xml:space="preserve">Retrieves the internal object @internal_name from @object</doc>
        <return-value>
          <doc xml:space="preserve">The internal #GObject</doc>
          <type name="GObject.Object" c:type="GObject*"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="object" transfer-ownership="none">
            <doc xml:space="preserve">The #GObject</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="internal_name" transfer-ownership="none">
            <doc xml:space="preserve">The string identifier of the internal object</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_missing_icon"
              c:identifier="glade_widget_adaptor_get_missing_icon">
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_name" c:identifier="glade_widget_adaptor_get_name">
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_object_type"
              c:identifier="glade_widget_adaptor_get_object_type">
        <return-value transfer-ownership="none">
          <type name="GType" c:type="GType"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_pack_property_class"
              c:identifier="glade_widget_adaptor_get_pack_property_class"
              introspectable="0">
        <doc xml:space="preserve">Retrieves the #GladePropertyClass for @name in
@adaptor's child properties</doc>
        <return-value>
          <doc xml:space="preserve">A #GladePropertyClass object</doc>
          <type name="PropertyClass" c:type="GladePropertyClass*"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="name" transfer-ownership="none">
            <doc xml:space="preserve">a string</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_packing_default"
              c:identifier="glade_widget_adaptor_get_packing_default">
        <doc xml:space="preserve">Gets the default value for @property_id on a widget governed by
@child_adaptor when parented in a widget governed by @parent_adaptor</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">a string representing the default value for @property_id</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="child_adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="container_adaptor" transfer-ownership="none">
            <doc xml:space="preserve">The #GladeWidgetAdaptor for the parent object</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </parameter>
          <parameter name="id" transfer-ownership="none">
            <doc xml:space="preserve">The string property identifier</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_packing_props"
              c:identifier="glade_widget_adaptor_get_packing_props"
              introspectable="0">
        <return-value transfer-ownership="none">
          <type name="GLib.List" c:type="const GList*">
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_parent_adaptor"
              c:identifier="glade_widget_adaptor_get_parent_adaptor"
              introspectable="0">
        <return-value>
          <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_properties"
              c:identifier="glade_widget_adaptor_get_properties"
              introspectable="0">
        <return-value transfer-ownership="none">
          <type name="GLib.List" c:type="const GList*">
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_property"
              c:identifier="glade_widget_adaptor_get_property">
        <doc xml:space="preserve">Gets @value of @property_name on @object.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="object" transfer-ownership="none">
            <doc xml:space="preserve">The #GObject</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="property_name" transfer-ownership="none">
            <doc xml:space="preserve">The property identifier</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve">The #GValue</doc>
            <type name="GObject.Value" c:type="GValue*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_property_class"
              c:identifier="glade_widget_adaptor_get_property_class"
              introspectable="0">
        <doc xml:space="preserve">Retrieves the #GladePropertyClass for @name in @adaptor</doc>
        <return-value>
          <doc xml:space="preserve">A #GladePropertyClass object</doc>
          <type name="PropertyClass" c:type="GladePropertyClass*"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="name" transfer-ownership="none">
            <doc xml:space="preserve">a string</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_signal_class"
              c:identifier="glade_widget_adaptor_get_signal_class"
              introspectable="0">
        <doc xml:space="preserve">Looks up signal class @name on @adaptor.</doc>
        <return-value>
          <doc xml:space="preserve">a #GladeSignalClass or %NULL</doc>
          <type name="SignalClass" c:type="GladeSignalClass*"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="name" transfer-ownership="none">
            <doc xml:space="preserve">the name of the signal class.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_signals"
              c:identifier="glade_widget_adaptor_get_signals"
              introspectable="0">
        <return-value transfer-ownership="none">
          <type name="GLib.List" c:type="const GList*">
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_title" c:identifier="glade_widget_adaptor_get_title">
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="has_child" c:identifier="glade_widget_adaptor_has_child">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether @child is infact inside @container.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="container" transfer-ownership="none">
            <doc xml:space="preserve">The #GObject container</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="child" transfer-ownership="none">
            <doc xml:space="preserve">The #GObject child</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
        </parameters>
      </method>
      <method name="has_internal_children"
              c:identifier="glade_widget_adaptor_has_internal_children">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="is_container"
              c:identifier="glade_widget_adaptor_is_container">
        <doc xml:space="preserve">Checks whether or not this adaptor has support
to interface with child objects.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether or not @adaptor is a container</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="pack_action_add"
              c:identifier="glade_widget_adaptor_pack_action_add">
        <doc xml:space="preserve">Add a packing action to @adaptor.
If the action is present then it overrides label and stock</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether or not the action was added/updated.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="action_path" transfer-ownership="none">
            <doc xml:space="preserve">The identifier of this action in the action tree</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="label" transfer-ownership="none">
            <doc xml:space="preserve">A translated label to show in the UI for this action</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="stock" transfer-ownership="none">
            <doc xml:space="preserve">If set, this stock item will be shown in the UI along side the label.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="important" transfer-ownership="none">
            <doc xml:space="preserve">if this action is important.</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="pack_action_remove"
              c:identifier="glade_widget_adaptor_pack_action_remove">
        <doc xml:space="preserve">Remove an @adaptor's packing action.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether or not the action was removed.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="action_path" transfer-ownership="none">
            <doc xml:space="preserve">The identifier of this action in the action tree</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="pack_actions_new"
              c:identifier="glade_widget_adaptor_pack_actions_new"
              introspectable="0">
        <doc xml:space="preserve">Create a list of packing actions.</doc>
        <return-value>
          <doc xml:space="preserve">a new list of GladeWidgetAction.</doc>
          <type name="GLib.List" c:type="GList*">
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="post_create"
              c:identifier="glade_widget_adaptor_post_create">
        <doc xml:space="preserve">An adaptor function to be called after the object is created</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="object" transfer-ownership="none">
            <doc xml:space="preserve">The #GObject</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="reason" transfer-ownership="none">
            <doc xml:space="preserve">The #GladeCreateReason that @object was created for</doc>
            <type name="CreateReason" c:type="GladeCreateReason"/>
          </parameter>
        </parameters>
      </method>
      <method name="query" c:identifier="glade_widget_adaptor_query">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether the user needs to be queried for
certain properties upon creation of this class.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="read_child" c:identifier="glade_widget_adaptor_read_child">
        <doc xml:space="preserve">This function is called to update load a child @widget
from @node when loading xml files (will recurse into
glade_widget_read())</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">The #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
          <parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve">The #GladeXmlNode</doc>
            <type name="XmlNode" c:type="GladeXmlNode*"/>
          </parameter>
        </parameters>
      </method>
      <method name="read_widget"
              c:identifier="glade_widget_adaptor_read_widget">
        <doc xml:space="preserve">This function is called to update @widget from @node
when loading xml files.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">The #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
          <parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve">The #GladeXmlNode</doc>
            <type name="XmlNode" c:type="GladeXmlNode*"/>
          </parameter>
        </parameters>
      </method>
      <method name="register" c:identifier="glade_widget_adaptor_register">
        <doc xml:space="preserve">Registers @adaptor into the Glade core (every supported
object type must have a registered adaptor).</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="remove" c:identifier="glade_widget_adaptor_remove">
        <doc xml:space="preserve">Removes @child from @container.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="container" transfer-ownership="none">
            <doc xml:space="preserve">The #GObject container</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="child" transfer-ownership="none">
            <doc xml:space="preserve">The #GObject child</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
        </parameters>
      </method>
      <method name="replace_child"
              c:identifier="glade_widget_adaptor_replace_child">
        <doc xml:space="preserve">Replaces @old_obj with @new_obj in @container while positioning
@new_obj where @old_obj was and assigning it appropriate packing
property values.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="container" transfer-ownership="none">
            <doc xml:space="preserve">The #GObject container</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="old_obj" transfer-ownership="none">
            <doc xml:space="preserve">The old #GObject child</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="new_obj" transfer-ownership="none">
            <doc xml:space="preserve">The new #GObject child</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_property"
              c:identifier="glade_widget_adaptor_set_property">
        <doc xml:space="preserve">This delagate function is used to apply the property value on
the runtime object.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="object" transfer-ownership="none">
            <doc xml:space="preserve">The #GObject</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="property_name" transfer-ownership="none">
            <doc xml:space="preserve">The property identifier</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve">The #GValue</doc>
            <type name="GObject.Value" c:type="const GValue*"/>
          </parameter>
        </parameters>
      </method>
      <method name="string_from_value"
              c:identifier="glade_widget_adaptor_string_from_value">
        <doc xml:space="preserve">For normal properties this is used to serialize
property values, for custom properties its still
needed to update the UI for undo/redo items etc.</doc>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve">A newly allocated string representation of @value</doc>
          <type name="utf8" c:type="gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="klass" transfer-ownership="none">
            <doc xml:space="preserve">The #GladePropertyClass</doc>
            <type name="PropertyClass" c:type="GladePropertyClass*"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve">The #GValue to convert to a string</doc>
            <type name="GObject.Value" c:type="const GValue*"/>
          </parameter>
        </parameters>
      </method>
      <method name="verify_property"
              c:identifier="glade_widget_adaptor_verify_property">
        <doc xml:space="preserve">This delagate function is always called whenever setting any
properties with the exception of load time, and copy/paste time
(basicly the two places where we recreate a hierarchy that we
already know "works") its basicly an optional backend provided
boundry checker for properties.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">whether or not its OK to set @value on @object, this function
will silently return TRUE if the class did not provide a verify function.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="object" transfer-ownership="none">
            <doc xml:space="preserve">The #GObject</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="property_name" transfer-ownership="none">
            <doc xml:space="preserve">The property identifier</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve">The #GValue</doc>
            <type name="GObject.Value" c:type="const GValue*"/>
          </parameter>
        </parameters>
      </method>
      <method name="write_child"
              c:identifier="glade_widget_adaptor_write_child">
        <doc xml:space="preserve">This function is called to write the child @widget to @node
when writing xml files (takes care of packing and recurses
into glade_widget_write())</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">The #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
          <parameter name="context" transfer-ownership="none">
            <doc xml:space="preserve">The #GladeXmlContext</doc>
            <type name="XmlContext" c:type="GladeXmlContext*"/>
          </parameter>
          <parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve">The #GladeXmlNode</doc>
            <type name="XmlNode" c:type="GladeXmlNode*"/>
          </parameter>
        </parameters>
      </method>
      <method name="write_widget"
              c:identifier="glade_widget_adaptor_write_widget">
        <doc xml:space="preserve">This function is called to write @widget to @node
when writing xml files.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">The #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
          <parameter name="context" transfer-ownership="none">
            <doc xml:space="preserve">The #GladeXmlContext</doc>
            <type name="XmlContext" c:type="GladeXmlContext*"/>
          </parameter>
          <parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve">The #GladeXmlNode</doc>
            <type name="XmlNode" c:type="GladeXmlNode*"/>
          </parameter>
        </parameters>
      </method>
      <method name="write_widget_after"
              c:identifier="glade_widget_adaptor_write_widget_after">
        <doc xml:space="preserve">This function is called to write @widget to @node
when writing xml files (after writing children)</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="adaptor" transfer-ownership="none">
            <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
            <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
          </instance-parameter>
          <parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve">The #GladeWidget</doc>
            <type name="Widget" c:type="GladeWidget*"/>
          </parameter>
          <parameter name="context" transfer-ownership="none">
            <doc xml:space="preserve">The #GladeXmlContext</doc>
            <type name="XmlContext" c:type="GladeXmlContext*"/>
          </parameter>
          <parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve">The #GladeXmlNode</doc>
            <type name="XmlNode" c:type="GladeXmlNode*"/>
          </parameter>
        </parameters>
      </method>
      <property name="book"
                writable="1"
                construct-only="1"
                transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="catalog"
                writable="1"
                construct-only="1"
                transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="cursor" transfer-ownership="none">
        <type name="gpointer" c:type="gpointer"/>
      </property>
      <property name="generic-name"
                writable="1"
                construct-only="1"
                transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="icon-name"
                writable="1"
                construct-only="1"
                transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="name"
                writable="1"
                construct-only="1"
                transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="special-child-type"
                writable="1"
                construct-only="1"
                transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="title" writable="1" transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="type"
                writable="1"
                construct-only="1"
                transfer-ownership="none">
        <type name="GType" c:type="GType"/>
      </property>
      <field name="parent_instance">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
      <field name="priv">
        <type name="WidgetAdaptorPrivate" c:type="GladeWidgetAdaptorPrivate*"/>
      </field>
    </class>
    <record name="WidgetAdaptorClass"
            c:type="GladeWidgetAdaptorClass"
            glib:is-gtype-struct-for="WidgetAdaptor">
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
      <field name="version_since_major">
        <type name="guint16" c:type="guint16"/>
      </field>
      <field name="version_since_minor">
        <type name="guint16" c:type="guint16"/>
      </field>
      <field name="default_width">
        <type name="gint16" c:type="gint16"/>
      </field>
      <field name="default_height">
        <type name="gint16" c:type="gint16"/>
      </field>
      <field name="deprecated" bits="1">
        <type name="guint" c:type="guint"/>
      </field>
      <field name="toplevel" bits="1">
        <type name="guint" c:type="guint"/>
      </field>
      <field name="use_placeholders" bits="1">
        <type name="guint" c:type="guint"/>
      </field>
      <field name="create_widget" introspectable="0">
        <type name="CreateWidgetFunc" c:type="GladeCreateWidgetFunc"/>
      </field>
      <field name="construct_object" introspectable="0">
        <type name="ConstructObjectFunc" c:type="GladeConstructObjectFunc"/>
      </field>
      <field name="deep_post_create">
        <type name="PostCreateFunc" c:type="GladePostCreateFunc"/>
      </field>
      <field name="post_create">
        <type name="PostCreateFunc" c:type="GladePostCreateFunc"/>
      </field>
      <field name="get_internal_child" introspectable="0">
        <type name="GetInternalFunc" c:type="GladeGetInternalFunc"/>
      </field>
      <field name="verify_property">
        <type name="VerifyPropertyFunc" c:type="GladeVerifyPropertyFunc"/>
      </field>
      <field name="set_property">
        <type name="SetPropertyFunc" c:type="GladeSetPropertyFunc"/>
      </field>
      <field name="get_property">
        <type name="GetPropertyFunc" c:type="GladeGetPropertyFunc"/>
      </field>
      <field name="add_verify">
        <type name="AddChildVerifyFunc" c:type="GladeAddChildVerifyFunc"/>
      </field>
      <field name="add">
        <type name="AddChildFunc" c:type="GladeAddChildFunc"/>
      </field>
      <field name="remove">
        <type name="RemoveChildFunc" c:type="GladeRemoveChildFunc"/>
      </field>
      <field name="get_children" introspectable="0">
        <type name="GetChildrenFunc" c:type="GladeGetChildrenFunc"/>
      </field>
      <field name="child_verify_property">
        <type name="ChildVerifyPropertyFunc"
              c:type="GladeChildVerifyPropertyFunc"/>
      </field>
      <field name="child_set_property">
        <type name="ChildSetPropertyFunc" c:type="GladeChildSetPropertyFunc"/>
      </field>
      <field name="child_get_property">
        <type name="ChildGetPropertyFunc" c:type="GladeChildGetPropertyFunc"/>
      </field>
      <field name="replace_child">
        <type name="ReplaceChildFunc" c:type="GladeReplaceChildFunc"/>
      </field>
      <field name="action_activate">
        <type name="ActionActivateFunc" c:type="GladeActionActivateFunc"/>
      </field>
      <field name="child_action_activate">
        <type name="ChildActionActivateFunc"
              c:type="GladeChildActionActivateFunc"/>
      </field>
      <field name="action_submenu" introspectable="0">
        <type name="ActionSubmenuFunc" c:type="GladeActionSubmenuFunc"/>
      </field>
      <field name="depends">
        <type name="DependsFunc" c:type="GladeDependsFunc"/>
      </field>
      <field name="read_widget">
        <type name="ReadWidgetFunc" c:type="GladeReadWidgetFunc"/>
      </field>
      <field name="write_widget">
        <type name="WriteWidgetFunc" c:type="GladeWriteWidgetFunc"/>
      </field>
      <field name="read_child">
        <type name="ReadWidgetFunc" c:type="GladeReadWidgetFunc"/>
      </field>
      <field name="write_child">
        <type name="WriteWidgetFunc" c:type="GladeWriteWidgetFunc"/>
      </field>
      <field name="create_eprop" introspectable="0">
        <type name="CreateEPropFunc" c:type="GladeCreateEPropFunc"/>
      </field>
      <field name="string_from_value">
        <type name="StringFromValueFunc" c:type="GladeStringFromValueFunc"/>
      </field>
      <field name="create_editable" introspectable="0">
        <type name="CreateEditableFunc" c:type="GladeCreateEditableFunc"/>
      </field>
      <field name="destroy_object">
        <type name="DestroyObjectFunc" c:type="GladeDestroyObjectFunc"/>
      </field>
      <field name="write_widget_after">
        <type name="WriteWidgetFunc" c:type="GladeWriteWidgetFunc"/>
      </field>
      <field name="glade_reserved1">
        <callback name="glade_reserved1">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved2">
        <callback name="glade_reserved2">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved3">
        <callback name="glade_reserved3">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved4">
        <callback name="glade_reserved4">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved5">
        <callback name="glade_reserved5">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved6">
        <callback name="glade_reserved6">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
    </record>
    <record name="WidgetAdaptorPrivate"
            c:type="GladeWidgetAdaptorPrivate"
            disguised="1">
    </record>
    <record name="WidgetClass"
            c:type="GladeWidgetClass"
            glib:is-gtype-struct-for="Widget">
      <field name="parent_class">
        <type name="GObject.InitiallyUnownedClass"
              c:type="GInitiallyUnownedClass"/>
      </field>
      <field name="add_child">
        <callback name="add_child">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="arg0" transfer-ownership="none">
              <type name="Widget" c:type="GladeWidget*"/>
            </parameter>
            <parameter name="arg1" transfer-ownership="none">
              <type name="Widget" c:type="GladeWidget*"/>
            </parameter>
            <parameter name="arg2" transfer-ownership="none">
              <type name="gboolean" c:type="gboolean"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="remove_child">
        <callback name="remove_child">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="arg0" transfer-ownership="none">
              <type name="Widget" c:type="GladeWidget*"/>
            </parameter>
            <parameter name="arg1" transfer-ownership="none">
              <type name="Widget" c:type="GladeWidget*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="replace_child">
        <callback name="replace_child">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="arg0" transfer-ownership="none">
              <type name="Widget" c:type="GladeWidget*"/>
            </parameter>
            <parameter name="arg1" transfer-ownership="none">
              <type name="GObject.Object" c:type="GObject*"/>
            </parameter>
            <parameter name="arg2" transfer-ownership="none">
              <type name="GObject.Object" c:type="GObject*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="add_signal_handler">
        <callback name="add_signal_handler">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="arg0" transfer-ownership="none">
              <type name="Widget" c:type="GladeWidget*"/>
            </parameter>
            <parameter name="arg1" transfer-ownership="none">
              <type name="Signal" c:type="GladeSignal*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="remove_signal_handler">
        <callback name="remove_signal_handler">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="arg0" transfer-ownership="none">
              <type name="Widget" c:type="GladeWidget*"/>
            </parameter>
            <parameter name="arg1" transfer-ownership="none">
              <type name="Signal" c:type="GladeSignal*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="change_signal_handler">
        <callback name="change_signal_handler">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="arg0" transfer-ownership="none">
              <type name="Widget" c:type="GladeWidget*"/>
            </parameter>
            <parameter name="arg1" transfer-ownership="none">
              <type name="Signal" c:type="GladeSignal*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="button_press_event">
        <callback name="button_press_event">
          <return-value transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </return-value>
          <parameters>
            <parameter name="arg0" transfer-ownership="none">
              <type name="Widget" c:type="GladeWidget*"/>
            </parameter>
            <parameter name="arg1" transfer-ownership="none">
              <type name="Gdk.Event" c:type="GdkEvent*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="button_release_event">
        <callback name="button_release_event">
          <return-value transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </return-value>
          <parameters>
            <parameter name="arg0" transfer-ownership="none">
              <type name="Widget" c:type="GladeWidget*"/>
            </parameter>
            <parameter name="arg1" transfer-ownership="none">
              <type name="Gdk.Event" c:type="GdkEvent*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="motion_notify_event">
        <callback name="motion_notify_event">
          <return-value transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </return-value>
          <parameters>
            <parameter name="arg0" transfer-ownership="none">
              <type name="Widget" c:type="GladeWidget*"/>
            </parameter>
            <parameter name="arg1" transfer-ownership="none">
              <type name="Gdk.Event" c:type="GdkEvent*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="event">
        <callback name="event">
          <return-value transfer-ownership="none">
            <doc xml:space="preserve">whether the event was handled or not.</doc>
            <type name="gboolean" c:type="gboolean"/>
          </return-value>
          <parameters>
            <parameter name="arg0" transfer-ownership="none">
              <type name="Widget" c:type="GladeWidget*"/>
            </parameter>
            <parameter name="arg1" transfer-ownership="none">
              <type name="Gdk.Event" c:type="GdkEvent*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="glade_reserved1">
        <callback name="glade_reserved1">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved2">
        <callback name="glade_reserved2">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved3">
        <callback name="glade_reserved3">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved4">
        <callback name="glade_reserved4">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved5">
        <callback name="glade_reserved5">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved6">
        <callback name="glade_reserved6">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved7">
        <callback name="glade_reserved7">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="glade_reserved8">
        <callback name="glade_reserved8">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
    </record>
    <record name="WidgetGroup" c:type="GladeWidgetGroup" disguised="1">
      <method name="get_adaptors"
              c:identifier="glade_widget_group_get_adaptors"
              introspectable="0">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">a list of class adaptors in the palette</doc>
          <type name="GLib.List" c:type="const GList*">
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="group" transfer-ownership="none">
            <doc xml:space="preserve">a widget group</doc>
            <type name="WidgetGroup" c:type="GladeWidgetGroup*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_expanded"
              c:identifier="glade_widget_group_get_expanded">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">Whether group is expanded in the palette</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="group" transfer-ownership="none">
            <doc xml:space="preserve">a widget group</doc>
            <type name="WidgetGroup" c:type="GladeWidgetGroup*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_name" c:identifier="glade_widget_group_get_name">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">the widget group name</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="group" transfer-ownership="none">
            <doc xml:space="preserve">a widget group</doc>
            <type name="WidgetGroup" c:type="GladeWidgetGroup*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_title" c:identifier="glade_widget_group_get_title">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">the widget group name used in the palette</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="group" transfer-ownership="none">
            <doc xml:space="preserve">a widget group</doc>
            <type name="WidgetGroup" c:type="GladeWidgetGroup*"/>
          </instance-parameter>
        </parameters>
      </method>
    </record>
    <record name="WidgetPrivate" c:type="GladeWidgetPrivate" disguised="1">
    </record>
    <callback name="WriteWidgetFunc" c:type="GladeWriteWidgetFunc">
      <doc xml:space="preserve">This function is called to fill in @node from @widget.</doc>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="adaptor" transfer-ownership="none">
          <doc xml:space="preserve">A #GladeWidgetAdaptor</doc>
          <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
        </parameter>
        <parameter name="widget" transfer-ownership="none">
          <doc xml:space="preserve">The #GladeWidget</doc>
          <type name="Widget" c:type="GladeWidget*"/>
        </parameter>
        <parameter name="context" transfer-ownership="none">
          <doc xml:space="preserve">The #GladeXmlContext</doc>
          <type name="XmlContext" c:type="GladeXmlContext*"/>
        </parameter>
        <parameter name="node" transfer-ownership="none">
          <doc xml:space="preserve">The #GladeXmlNode</doc>
          <type name="XmlNode" c:type="GladeXmlNode*"/>
        </parameter>
      </parameters>
    </callback>
    <constant name="XML_TAG_AFTER" value="after" c:type="GLADE_XML_TAG_AFTER">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="XML_TAG_CHILD" value="child" c:type="GLADE_XML_TAG_CHILD">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="XML_TAG_CLASS" value="class" c:type="GLADE_XML_TAG_CLASS">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="XML_TAG_FILENAME"
              value="filename"
              c:type="GLADE_XML_TAG_FILENAME">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="XML_TAG_HANDLER"
              value="handler"
              c:type="GLADE_XML_TAG_HANDLER">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="XML_TAG_I18N_TRUE"
              value="yes"
              c:type="GLADE_XML_TAG_I18N_TRUE">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="XML_TAG_ID" value="id" c:type="GLADE_XML_TAG_ID">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="XML_TAG_INTERNAL_CHILD"
              value="internal-child"
              c:type="GLADE_XML_TAG_INTERNAL_CHILD">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="XML_TAG_LIB" value="lib" c:type="GLADE_XML_TAG_LIB">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="XML_TAG_NAME" value="name" c:type="GLADE_XML_TAG_NAME">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="XML_TAG_OBJECT"
              value="object"
              c:type="GLADE_XML_TAG_OBJECT">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="XML_TAG_PACKING"
              value="packing"
              c:type="GLADE_XML_TAG_PACKING">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="XML_TAG_PLACEHOLDER"
              value="placeholder"
              c:type="GLADE_XML_TAG_PLACEHOLDER">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="XML_TAG_PROJECT"
              value="interface"
              c:type="GLADE_XML_TAG_PROJECT">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="XML_TAG_PROPERTY"
              value="property"
              c:type="GLADE_XML_TAG_PROPERTY">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="XML_TAG_REQUIRES"
              value="requires"
              c:type="GLADE_XML_TAG_REQUIRES">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="XML_TAG_SIGNAL"
              value="signal"
              c:type="GLADE_XML_TAG_SIGNAL">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="XML_TAG_SIGNAL_FALSE"
              value="no"
              c:type="GLADE_XML_TAG_SIGNAL_FALSE">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="XML_TAG_SIGNAL_TRUE"
              value="yes"
              c:type="GLADE_XML_TAG_SIGNAL_TRUE">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="XML_TAG_SOURCE"
              value="source"
              c:type="GLADE_XML_TAG_SOURCE">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="XML_TAG_SOURCES"
              value="sources"
              c:type="GLADE_XML_TAG_SOURCES">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="XML_TAG_STOCK_ID"
              value="stock-id"
              c:type="GLADE_XML_TAG_STOCK_ID">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="XML_TAG_SWAPPED"
              value="swapped"
              c:type="GLADE_XML_TAG_SWAPPED">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="XML_TAG_TEMPLATE"
              value="template"
              c:type="GLADE_XML_TAG_TEMPLATE">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="XML_TAG_TYPE" value="type" c:type="GLADE_XML_TAG_TYPE">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="XML_TAG_VERSION"
              value="version"
              c:type="GLADE_XML_TAG_VERSION">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="XML_TAG_WIDGET"
              value="object"
              c:type="GLADE_XML_TAG_WIDGET">
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <record name="XmlContext" c:type="GladeXmlContext" disguised="1">
      <method name="destroy" c:identifier="glade_xml_context_destroy">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="context" transfer-ownership="none">
            <type name="XmlContext" c:type="GladeXmlContext*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="free" c:identifier="glade_xml_context_free">
        <doc xml:space="preserve">Similar to glade_xml_context_destroy but it also frees the document set in the context</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="context" transfer-ownership="none">
            <type name="XmlContext" c:type="GladeXmlContext*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_doc"
              c:identifier="glade_xml_context_get_doc"
              introspectable="0">
        <return-value>
          <type name="XmlDoc" c:type="GladeXmlDoc*"/>
        </return-value>
        <parameters>
          <instance-parameter name="context" transfer-ownership="none">
            <type name="XmlContext" c:type="GladeXmlContext*"/>
          </instance-parameter>
        </parameters>
      </method>
      <function name="new"
                c:identifier="glade_xml_context_new"
                introspectable="0">
        <return-value>
          <type name="XmlContext" c:type="GladeXmlContext*"/>
        </return-value>
        <parameters>
          <parameter name="doc" transfer-ownership="none">
            <type name="XmlDoc" c:type="GladeXmlDoc*"/>
          </parameter>
          <parameter name="name_space" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="new_from_path"
                c:identifier="glade_xml_context_new_from_path"
                introspectable="0">
        <return-value>
          <type name="XmlContext" c:type="GladeXmlContext*"/>
        </return-value>
        <parameters>
          <parameter name="full_path" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="nspace" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="root_name" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
    </record>
    <record name="XmlDoc" c:type="GladeXmlDoc" disguised="1">
      <method name="free" c:identifier="glade_xml_doc_free">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="doc_in" transfer-ownership="none">
            <type name="XmlDoc" c:type="GladeXmlDoc*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_root"
              c:identifier="glade_xml_doc_get_root"
              introspectable="0">
        <return-value>
          <doc xml:space="preserve">the #GladeXmlNode that is the document root of @doc</doc>
          <type name="XmlNode" c:type="GladeXmlNode*"/>
        </return-value>
        <parameters>
          <instance-parameter name="doc" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeXmlDoc</doc>
            <type name="XmlDoc" c:type="GladeXmlDoc*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="new_comment"
              c:identifier="glade_xml_doc_new_comment"
              introspectable="0">
        <return-value>
          <type name="XmlNode" c:type="GladeXmlNode*"/>
        </return-value>
        <parameters>
          <instance-parameter name="doc" transfer-ownership="none">
            <type name="XmlDoc" c:type="GladeXmlDoc*"/>
          </instance-parameter>
          <parameter name="comment" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="save" c:identifier="glade_xml_doc_save">
        <return-value transfer-ownership="none">
          <type name="gint" c:type="gint"/>
        </return-value>
        <parameters>
          <instance-parameter name="doc_in" transfer-ownership="none">
            <type name="XmlDoc" c:type="GladeXmlDoc*"/>
          </instance-parameter>
          <parameter name="full_path" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_root" c:identifier="glade_xml_doc_set_root">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="doc" transfer-ownership="none">
            <type name="XmlDoc" c:type="GladeXmlDoc*"/>
          </instance-parameter>
          <parameter name="node" transfer-ownership="none">
            <type name="XmlNode" c:type="GladeXmlNode*"/>
          </parameter>
        </parameters>
      </method>
      <function name="new" c:identifier="glade_xml_doc_new" introspectable="0">
        <return-value>
          <type name="XmlDoc" c:type="GladeXmlDoc*"/>
        </return-value>
      </function>
    </record>
    <record name="XmlNode" c:type="GladeXmlNode" disguised="1">
      <method name="add_next_sibling"
              c:identifier="glade_xml_node_add_next_sibling"
              introspectable="0">
        <return-value>
          <type name="XmlNode" c:type="GladeXmlNode*"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <type name="XmlNode" c:type="GladeXmlNode*"/>
          </instance-parameter>
          <parameter name="new_node" transfer-ownership="none">
            <type name="XmlNode" c:type="GladeXmlNode*"/>
          </parameter>
        </parameters>
      </method>
      <method name="add_prev_sibling"
              c:identifier="glade_xml_node_add_prev_sibling"
              introspectable="0">
        <return-value>
          <type name="XmlNode" c:type="GladeXmlNode*"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <type name="XmlNode" c:type="GladeXmlNode*"/>
          </instance-parameter>
          <parameter name="new_node" transfer-ownership="none">
            <type name="XmlNode" c:type="GladeXmlNode*"/>
          </parameter>
        </parameters>
      </method>
      <method name="append_child" c:identifier="glade_xml_node_append_child">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <type name="XmlNode" c:type="GladeXmlNode*"/>
          </instance-parameter>
          <parameter name="child" transfer-ownership="none">
            <type name="XmlNode" c:type="GladeXmlNode*"/>
          </parameter>
        </parameters>
      </method>
      <method name="copy"
              c:identifier="glade_xml_node_copy"
              introspectable="0">
        <return-value>
          <type name="XmlNode" c:type="GladeXmlNode*"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <type name="XmlNode" c:type="GladeXmlNode*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="delete" c:identifier="glade_xml_node_delete">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <type name="XmlNode" c:type="GladeXmlNode*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_children"
              c:identifier="glade_xml_node_get_children"
              introspectable="0">
        <return-value>
          <type name="XmlNode" c:type="GladeXmlNode*"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <type name="XmlNode" c:type="GladeXmlNode*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_children_with_comments"
              c:identifier="glade_xml_node_get_children_with_comments"
              introspectable="0">
        <return-value>
          <type name="XmlNode" c:type="GladeXmlNode*"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <type name="XmlNode" c:type="GladeXmlNode*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_name" c:identifier="glade_xml_node_get_name">
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="node_in" transfer-ownership="none">
            <type name="XmlNode" c:type="GladeXmlNode*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_parent"
              c:identifier="glade_xml_node_get_parent"
              introspectable="0">
        <return-value>
          <type name="XmlNode" c:type="GladeXmlNode*"/>
        </return-value>
        <parameters>
          <instance-parameter name="node_in" transfer-ownership="none">
            <type name="XmlNode" c:type="GladeXmlNode*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="is_comment" c:identifier="glade_xml_node_is_comment">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="node_in" transfer-ownership="none">
            <type name="XmlNode" c:type="GladeXmlNode*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="next"
              c:identifier="glade_xml_node_next"
              introspectable="0">
        <return-value>
          <type name="XmlNode" c:type="GladeXmlNode*"/>
        </return-value>
        <parameters>
          <instance-parameter name="node_in" transfer-ownership="none">
            <type name="XmlNode" c:type="GladeXmlNode*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="next_with_comments"
              c:identifier="glade_xml_node_next_with_comments"
              introspectable="0">
        <return-value>
          <type name="XmlNode" c:type="GladeXmlNode*"/>
        </return-value>
        <parameters>
          <instance-parameter name="node_in" transfer-ownership="none">
            <type name="XmlNode" c:type="GladeXmlNode*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="prev_with_comments"
              c:identifier="glade_xml_node_prev_with_comments"
              introspectable="0">
        <return-value>
          <type name="XmlNode" c:type="GladeXmlNode*"/>
        </return-value>
        <parameters>
          <instance-parameter name="node_in" transfer-ownership="none">
            <type name="XmlNode" c:type="GladeXmlNode*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="remove" c:identifier="glade_xml_node_remove">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="node_in" transfer-ownership="none">
            <type name="XmlNode" c:type="GladeXmlNode*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_property_boolean"
              c:identifier="glade_xml_node_set_property_boolean">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="node_in" transfer-ownership="none">
            <type name="XmlNode" c:type="GladeXmlNode*"/>
          </instance-parameter>
          <parameter name="name" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_property_string"
              c:identifier="glade_xml_node_set_property_string">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="node_in" transfer-ownership="none">
            <type name="XmlNode" c:type="GladeXmlNode*"/>
          </instance-parameter>
          <parameter name="name" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="string" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="verify" c:identifier="glade_xml_node_verify">
        <doc xml:space="preserve">This is a wrapper around glade_xml_node_verify_silent(), only it emits
a g_warning() if @node_in has a name different than @name.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">%TRUE if @node_in's name is equal to @name, %FALSE otherwise</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="node_in" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeXmlNode</doc>
            <type name="XmlNode" c:type="GladeXmlNode*"/>
          </instance-parameter>
          <parameter name="name" transfer-ownership="none">
            <doc xml:space="preserve">a string</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="verify_silent" c:identifier="glade_xml_node_verify_silent">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">%TRUE if @node_in's name is equal to @name, %FALSE otherwise</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="node_in" transfer-ownership="none">
            <doc xml:space="preserve">a #GladeXmlNode</doc>
            <type name="XmlNode" c:type="GladeXmlNode*"/>
          </instance-parameter>
          <parameter name="name" transfer-ownership="none">
            <doc xml:space="preserve">a string</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <function name="new"
                c:identifier="glade_xml_node_new"
                introspectable="0">
        <return-value>
          <type name="XmlNode" c:type="GladeXmlNode*"/>
        </return-value>
        <parameters>
          <parameter name="context" transfer-ownership="none">
            <type name="XmlContext" c:type="GladeXmlContext*"/>
          </parameter>
          <parameter name="name" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="new_comment"
                c:identifier="glade_xml_node_new_comment"
                introspectable="0">
        <return-value>
          <type name="XmlNode" c:type="GladeXmlNode*"/>
        </return-value>
        <parameters>
          <parameter name="context" transfer-ownership="none">
            <type name="XmlContext" c:type="GladeXmlContext*"/>
          </parameter>
          <parameter name="comment" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
    </record>
    <function name="catalog_add_path"
              c:identifier="glade_catalog_add_path"
              moved-to="Catalog.add_path">
      <doc xml:space="preserve">Adds a new path to the list of path to look catalogs for.</doc>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="path" transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="catalog_destroy_all"
              c:identifier="glade_catalog_destroy_all"
              moved-to="Catalog.destroy_all">
      <doc xml:space="preserve">Destroy and free all resources related with every loaded catalog.</doc>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
    </function>
    <function name="catalog_is_loaded"
              c:identifier="glade_catalog_is_loaded"
              moved-to="Catalog.is_loaded">
      <return-value transfer-ownership="none">
        <doc xml:space="preserve">Whether @name is loaded or not</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="name" transfer-ownership="none">
          <doc xml:space="preserve">a catalog object</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="catalog_remove_path"
              c:identifier="glade_catalog_remove_path"
              moved-to="Catalog.remove_path">
      <doc xml:space="preserve">Remove path from the list of path to look catalogs for.
NULL to remove all paths.</doc>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="path" transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="cursor_get_add_widget_pixbuf"
              c:identifier="glade_cursor_get_add_widget_pixbuf"
              moved-to="Cursor.get_add_widget_pixbuf">
      <return-value transfer-ownership="none">
        <type name="GdkPixbuf.Pixbuf" c:type="const GdkPixbuf*"/>
      </return-value>
    </function>
    <function name="cursor_init"
              c:identifier="glade_cursor_init"
              moved-to="Cursor.init">
      <doc xml:space="preserve">Initializes cursors for use with glade_cursor_set().</doc>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
    </function>
    <function name="cursor_set"
              c:identifier="glade_cursor_set"
              moved-to="Cursor.set">
      <doc xml:space="preserve">Sets the cursor for @window to something appropriate based on @type.
(also sets the cursor on all visible project widgets)</doc>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="project" transfer-ownership="none">
          <type name="Project" c:type="GladeProject*"/>
        </parameter>
        <parameter name="window" transfer-ownership="none">
          <doc xml:space="preserve">a #GdkWindow</doc>
          <type name="Gdk.Window" c:type="GdkWindow*"/>
        </parameter>
        <parameter name="type" transfer-ownership="none">
          <doc xml:space="preserve">a #GladeCursorType</doc>
          <type name="CursorType" c:type="GladeCursorType"/>
        </parameter>
      </parameters>
    </function>
    <function name="displayable_value_is_disabled"
              c:identifier="glade_displayable_value_is_disabled">
      <return-value transfer-ownership="none">
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="type" transfer-ownership="none">
          <type name="GType" c:type="GType"/>
        </parameter>
        <parameter name="value" transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="displayable_value_set_disabled"
              c:identifier="glade_displayable_value_set_disabled">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="type" transfer-ownership="none">
          <type name="GType" c:type="GType"/>
        </parameter>
        <parameter name="value" transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="disabled" transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </parameter>
      </parameters>
    </function>
    <function name="get_debug_flags" c:identifier="glade_get_debug_flags">
      <return-value transfer-ownership="none">
        <type name="guint" c:type="guint"/>
      </return-value>
    </function>
    <function name="get_displayable_value"
              c:identifier="glade_get_displayable_value">
      <return-value transfer-ownership="none">
        <type name="utf8" c:type="const gchar*"/>
      </return-value>
      <parameters>
        <parameter name="type" transfer-ownership="none">
          <type name="GType" c:type="GType"/>
        </parameter>
        <parameter name="value" transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="get_value_from_displayable"
              c:identifier="glade_get_value_from_displayable">
      <return-value transfer-ownership="none">
        <type name="utf8" c:type="const gchar*"/>
      </return-value>
      <parameters>
        <parameter name="type" transfer-ownership="none">
          <type name="GType" c:type="GType"/>
        </parameter>
        <parameter name="displayabe" transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="init" c:identifier="glade_init">
      <doc xml:space="preserve">Initialization function for libgladeui (not #GladeApp)
It builds paths, bind text domain, and register icons</doc>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
    </function>
    <function name="init_debug_flags" c:identifier="glade_init_debug_flags">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
    </function>
    <function name="param_spec_objects"
              c:identifier="glade_param_spec_objects"
              introspectable="0">
      <return-value>
        <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
      </return-value>
      <parameters>
        <parameter name="name" transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="nick" transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="blurb" transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="accepted_type" transfer-ownership="none">
          <type name="GType" c:type="GType"/>
        </parameter>
        <parameter name="flags" transfer-ownership="none">
          <type name="GObject.ParamFlags" c:type="GParamFlags"/>
        </parameter>
      </parameters>
    </function>
    <function name="propert_get_insensitive_tooltip"
              c:identifier="glade_propert_get_insensitive_tooltip">
      <return-value transfer-ownership="none">
        <type name="utf8" c:type="const gchar*"/>
      </return-value>
      <parameters>
        <parameter name="property" transfer-ownership="none">
          <type name="Property" c:type="GladeProperty*"/>
        </parameter>
      </parameters>
    </function>
    <function name="property_class_get_default_from_spec"
              c:identifier="glade_property_class_get_default_from_spec"
              moved-to="PropertyClass.get_default_from_spec">
      <return-value transfer-ownership="full">
        <type name="GObject.Value" c:type="GValue*"/>
      </return-value>
      <parameters>
        <parameter name="spec" transfer-ownership="none">
          <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
        </parameter>
      </parameters>
    </function>
    <function name="property_class_update_from_node"
              c:identifier="glade_property_class_update_from_node"
              moved-to="PropertyClass.update_from_node">
      <doc xml:space="preserve">Updates the @property_class with the contents of the node in the xml
file. Only the values found in the xml file are overridden.</doc>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve">%TRUE on success. @property_class is set to NULL if the property
         has Disabled="TRUE".</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="node" transfer-ownership="none">
          <doc xml:space="preserve">the property node</doc>
          <type name="XmlNode" c:type="GladeXmlNode*"/>
        </parameter>
        <parameter name="object_type" transfer-ownership="none">
          <doc xml:space="preserve">the #GType of the owning object</doc>
          <type name="GType" c:type="GType"/>
        </parameter>
        <parameter name="property_class" transfer-ownership="none">
          <doc xml:space="preserve">a pointer to the property class</doc>
          <type name="PropertyClass" c:type="GladePropertyClass**"/>
        </parameter>
        <parameter name="domain" transfer-ownership="none">
          <doc xml:space="preserve">the domain to translate catalog strings from</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="register_displayable_value"
              c:identifier="glade_register_displayable_value">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="type" transfer-ownership="none">
          <type name="GType" c:type="GType"/>
        </parameter>
        <parameter name="value" transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="domain" transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="string" transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="register_translated_value"
              c:identifier="glade_register_translated_value">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="type" transfer-ownership="none">
          <type name="GType" c:type="GType"/>
        </parameter>
        <parameter name="value" transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="string" transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="setup_log_handlers"
              c:identifier="glade_setup_log_handlers">
      <doc xml:space="preserve">Sets up a log handler to manage all %G_LOG_LEVEL_MASK errors of domain:
GLib, GLib-GObject, Gtk, Gdk, and domainless.</doc>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
    </function>
    <function name="standard_boolean_spec"
              c:identifier="glade_standard_boolean_spec"
              introspectable="0">
      <return-value>
        <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
      </return-value>
    </function>
    <function name="standard_float_spec"
              c:identifier="glade_standard_float_spec"
              introspectable="0">
      <return-value>
        <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
      </return-value>
    </function>
    <function name="standard_gdkcolor_spec"
              c:identifier="glade_standard_gdkcolor_spec"
              introspectable="0">
      <return-value>
        <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
      </return-value>
    </function>
    <function name="standard_int_spec"
              c:identifier="glade_standard_int_spec"
              introspectable="0">
      <return-value>
        <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
      </return-value>
    </function>
    <function name="standard_objects_spec"
              c:identifier="glade_standard_objects_spec"
              introspectable="0">
      <return-value>
        <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
      </return-value>
    </function>
    <function name="standard_pixbuf_spec"
              c:identifier="glade_standard_pixbuf_spec"
              introspectable="0">
      <return-value>
        <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
      </return-value>
    </function>
    <function name="standard_stock_append_prefix"
              c:identifier="glade_standard_stock_append_prefix"
              moved-to="Stock.append_prefix">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="prefix" transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="standard_string_spec"
              c:identifier="glade_standard_string_spec"
              introspectable="0">
      <return-value>
        <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
      </return-value>
    </function>
    <function name="standard_strv_spec"
              c:identifier="glade_standard_strv_spec"
              introspectable="0">
      <return-value>
        <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
      </return-value>
    </function>
    <function name="standard_uint_spec"
              c:identifier="glade_standard_uint_spec"
              introspectable="0">
      <return-value>
        <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
      </return-value>
    </function>
    <function name="type_has_displayable_values"
              c:identifier="glade_type_has_displayable_values">
      <return-value transfer-ownership="none">
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="type" transfer-ownership="none">
          <type name="GType" c:type="GType"/>
        </parameter>
      </parameters>
    </function>
    <function name="util_added_in_list"
              c:identifier="glade_util_added_in_list"
              introspectable="0">
      <return-value>
        <doc xml:space="preserve">A newly allocated #GList of elements that
         are in @new but not in @old</doc>
        <type name="GLib.List" c:type="GList*">
          <type name="gpointer" c:type="gpointer"/>
        </type>
      </return-value>
      <parameters>
        <parameter name="old_list" transfer-ownership="none">
          <doc xml:space="preserve">the old #GList</doc>
          <type name="GLib.List" c:type="GList*">
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </parameter>
        <parameter name="new_list" transfer-ownership="none">
          <doc xml:space="preserve">the new #GList</doc>
          <type name="GLib.List" c:type="GList*">
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </parameter>
      </parameters>
    </function>
    <function name="util_canonical_path"
              c:identifier="glade_util_canonical_path">
      <return-value transfer-ownership="full">
        <doc xml:space="preserve">an absolute path to the specified file or directory
         that contains no ".." or "." components (this does
         not call readlink like realpath() does).

Note: on some systems; I think its possible that we dont have
      permission to execute in the directory in which the glade
      file resides; I decided finally to do it this way anyway
      since libc's realpath() does exactly the same.</doc>
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="path" transfer-ownership="none">
          <doc xml:space="preserve">any path that may contain ".." or "." components</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="util_check_and_warn_scrollable"
              c:identifier="glade_util_check_and_warn_scrollable">
      <return-value transfer-ownership="none">
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="parent" transfer-ownership="none">
          <type name="Widget" c:type="GladeWidget*"/>
        </parameter>
        <parameter name="child_adaptor" transfer-ownership="none">
          <type name="WidgetAdaptor" c:type="GladeWidgetAdaptor*"/>
        </parameter>
        <parameter name="parent_widget" transfer-ownership="none">
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </parameter>
      </parameters>
    </function>
    <function name="util_compare_stock_labels"
              c:identifier="glade_util_compare_stock_labels">
      <doc xml:space="preserve">This is a #GCompareFunc that compares the labels of two stock items,
ignoring any '_' characters. It isn't particularly efficient.</doc>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve">negative value if @a &lt; @b; zero if @a = @b;
         positive value if @a &gt; @b</doc>
        <type name="gint" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="a"
                   transfer-ownership="none"
                   nullable="1"
                   allow-none="1">
          <doc xml:space="preserve">a #gconstpointer to a #GtkStockItem</doc>
          <type name="gpointer" c:type="gconstpointer"/>
        </parameter>
        <parameter name="b"
                   transfer-ownership="none"
                   nullable="1"
                   allow-none="1">
          <doc xml:space="preserve">a #gconstpointer to a #GtkStockItem</doc>
          <type name="gpointer" c:type="gconstpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="util_container_get_all_children"
              c:identifier="glade_util_container_get_all_children"
              introspectable="0">
      <doc xml:space="preserve">Use this to itterate over all children in a GtkContainer,
as it used _forall() instead of _foreach() (and the GTK+ version
of this function is simply not exposed).

Note that glade_widget_class_get_children() is the high-level
abstraction and will usually end up calling this function.</doc>
      <return-value>
        <doc xml:space="preserve">a #GList giving the contents of @container</doc>
        <type name="GLib.List" c:type="GList*">
          <type name="gpointer" c:type="gpointer"/>
        </type>
      </return-value>
      <parameters>
        <parameter name="container" transfer-ownership="none">
          <doc xml:space="preserve">a #GtkContainer</doc>
          <type name="Gtk.Container" c:type="GtkContainer*"/>
        </parameter>
      </parameters>
    </function>
    <function name="util_count_placeholders"
              c:identifier="glade_util_count_placeholders">
      <return-value transfer-ownership="none">
        <doc xml:space="preserve">the amount of #GladePlaceholders parented by @parent</doc>
        <type name="gint" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="parent" transfer-ownership="none">
          <doc xml:space="preserve">a #GladeWidget</doc>
          <type name="Widget" c:type="GladeWidget*"/>
        </parameter>
      </parameters>
    </function>
    <function name="util_duplicate_underscores"
              c:identifier="glade_util_duplicate_underscores">
      <doc xml:space="preserve">Duplicates @name, but the copy has two underscores in place of any single
underscore in the original.</doc>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve">a newly allocated string</doc>
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="name" transfer-ownership="none">
          <doc xml:space="preserve">a string</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="util_file_dialog_new"
              c:identifier="glade_util_file_dialog_new"
              introspectable="0">
      <return-value>
        <doc xml:space="preserve">a "glade file" file chooser dialog. The caller is responsible
         for showing the dialog</doc>
        <type name="Gtk.Widget" c:type="GtkWidget*"/>
      </return-value>
      <parameters>
        <parameter name="title" transfer-ownership="none">
          <doc xml:space="preserve">dialog title</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="project" transfer-ownership="none">
          <doc xml:space="preserve">a #GladeProject used when saving</doc>
          <type name="Project" c:type="GladeProject*"/>
        </parameter>
        <parameter name="parent" transfer-ownership="none">
          <doc xml:space="preserve">a parent #GtkWindow for the dialog</doc>
          <type name="Gtk.Window" c:type="GtkWindow*"/>
        </parameter>
        <parameter name="action" transfer-ownership="none">
          <doc xml:space="preserve">a #GladeUtilFileDialogType to say if the dialog will open or save</doc>
          <type name="UtilFileDialogType" c:type="GladeUtilFileDialogType"/>
        </parameter>
      </parameters>
    </function>
    <function name="util_file_is_writeable"
              c:identifier="glade_util_file_is_writeable">
      <doc xml:space="preserve">Checks whether the file at @path is writeable</doc>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve">TRUE if file is writeable</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="path" transfer-ownership="none">
          <doc xml:space="preserve">the path to the file</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="util_filename_to_icon_name"
              c:identifier="glade_util_filename_to_icon_name">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="value" transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="util_find_iter_by_widget"
              c:identifier="glade_util_find_iter_by_widget">
      <doc xml:space="preserve">Looks through @model for the #GtkTreeIter corresponding to
@findme under @column.</doc>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve">a newly allocated #GtkTreeIter from @model corresponding
to @findme which should be freed with gtk_tree_iter_free()</doc>
        <type name="Gtk.TreeIter" c:type="GtkTreeIter*"/>
      </return-value>
      <parameters>
        <parameter name="model" transfer-ownership="none">
          <doc xml:space="preserve">a #GtkTreeModel</doc>
          <type name="Gtk.TreeModel" c:type="GtkTreeModel*"/>
        </parameter>
        <parameter name="findme" transfer-ownership="none">
          <doc xml:space="preserve">a #GladeWidget</doc>
          <type name="Widget" c:type="GladeWidget*"/>
        </parameter>
        <parameter name="column" transfer-ownership="none">
          <doc xml:space="preserve">a #gint</doc>
          <type name="gint" c:type="gint"/>
        </parameter>
      </parameters>
    </function>
    <function name="util_flash_message"
              c:identifier="glade_util_flash_message"
              introspectable="0">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="statusbar" transfer-ownership="none">
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </parameter>
        <parameter name="context_id" transfer-ownership="none">
          <type name="guint" c:type="guint"/>
        </parameter>
        <parameter name="format" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="..." transfer-ownership="none">
          <varargs/>
        </parameter>
      </parameters>
    </function>
    <function name="util_get_devhelp_icon"
              c:identifier="glade_util_get_devhelp_icon"
              introspectable="0">
      <doc xml:space="preserve">Creates an image displaying the devhelp icon.</doc>
      <return-value>
        <doc xml:space="preserve">a #GtkImage</doc>
        <type name="Gtk.Widget" c:type="GtkWidget*"/>
      </return-value>
      <parameters>
        <parameter name="size" transfer-ownership="none">
          <doc xml:space="preserve">the preferred icon size</doc>
          <type name="Gtk.IconSize" c:type="GtkIconSize"/>
        </parameter>
      </parameters>
    </function>
    <function name="util_get_file_mtime"
              c:identifier="glade_util_get_file_mtime"
              throws="1">
      <doc xml:space="preserve">Gets the UTC modification time of file @filename.</doc>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve">The mtime of the file, or %0 if the file attributes
         could not be read.</doc>
        <type name="glong" c:type="time_t"/>
      </return-value>
      <parameters>
        <parameter name="filename" transfer-ownership="none">
          <doc xml:space="preserve">A filename</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="util_get_placeholder_from_pointer"
              c:identifier="glade_util_get_placeholder_from_pointer"
              introspectable="0">
      <return-value>
        <type name="Gtk.Widget" c:type="GtkWidget*"/>
      </return-value>
      <parameters>
        <parameter name="container" transfer-ownership="none">
          <type name="Gtk.Container" c:type="GtkContainer*"/>
        </parameter>
      </parameters>
    </function>
    <function name="util_get_type_from_name"
              c:identifier="glade_util_get_type_from_name">
      <doc xml:space="preserve">Returns the type using the "get type" function name based on @name.
If the @have_func flag is true,@name is used directly, otherwise the get-type
function is contrived from @name then used.</doc>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve">the new #GType</doc>
        <type name="GType" c:type="GType"/>
      </return-value>
      <parameters>
        <parameter name="name" transfer-ownership="none">
          <doc xml:space="preserve">the name of the #GType - like 'GtkWidget' or a "get-type" function.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="have_func" transfer-ownership="none">
          <doc xml:space="preserve">function-name flag -- true if the name is a "get-type" function.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </parameter>
      </parameters>
    </function>
    <function name="util_have_devhelp" c:identifier="glade_util_have_devhelp">
      <return-value transfer-ownership="none">
        <doc xml:space="preserve">whether the devhelp module is loaded</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
    </function>
    <function name="util_icon_name_to_filename"
              c:identifier="glade_util_icon_name_to_filename">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="value" transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="util_load_library"
              c:identifier="glade_util_load_library"
              introspectable="0">
      <doc xml:space="preserve">Loads the named library from the Glade modules and lib directory or failing that
from the standard platform specific directories. (Including /usr/local/lib for unices)

The @library_name should not include any platform specifix prefix or suffix,
those are automatically added, if needed, by g_module_build_path()</doc>
      <return-value>
        <doc xml:space="preserve">a #GModule on success, or %NULL on failure.</doc>
        <type name="GModule.Module" c:type="GModule*"/>
      </return-value>
      <parameters>
        <parameter name="library_name" transfer-ownership="none">
          <doc xml:space="preserve">name of the library</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="util_object_is_loading"
              c:identifier="glade_util_object_is_loading">
      <return-value transfer-ownership="none">
        <doc xml:space="preserve">Whether the object's project is being loaded or not.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="object" transfer-ownership="none">
          <doc xml:space="preserve">A #GObject</doc>
          <type name="GObject.Object" c:type="GObject*"/>
        </parameter>
      </parameters>
    </function>
    <function name="util_purify_list"
              c:identifier="glade_util_purify_list"
              introspectable="0">
      <return-value>
        <doc xml:space="preserve">A newly allocated version of @list with no
         duplicate data entries</doc>
        <type name="GLib.List" c:type="GList*">
          <type name="gpointer" c:type="gpointer"/>
        </type>
      </return-value>
      <parameters>
        <parameter name="list" transfer-ownership="none">
          <doc xml:space="preserve">A #GList</doc>
          <type name="GLib.List" c:type="GList*">
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </parameter>
      </parameters>
    </function>
    <function name="util_read_prop_name"
              c:identifier="glade_util_read_prop_name">
      <doc xml:space="preserve">Return a usable version of a property identifier as found
in a freshly parserd #GladeInterface</doc>
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="str" transfer-ownership="none">
          <doc xml:space="preserve">a string</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="util_removed_from_list"
              c:identifier="glade_util_removed_from_list"
              introspectable="0">
      <return-value>
        <doc xml:space="preserve">A newly allocated #GList of elements that
         are in @old no longer in @new</doc>
        <type name="GLib.List" c:type="GList*">
          <type name="gpointer" c:type="gpointer"/>
        </type>
      </return-value>
      <parameters>
        <parameter name="old_list" transfer-ownership="none">
          <doc xml:space="preserve">the old #GList</doc>
          <type name="GLib.List" c:type="GList*">
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </parameter>
        <parameter name="new_list" transfer-ownership="none">
          <doc xml:space="preserve">the new #GList</doc>
          <type name="GLib.List" c:type="GList*">
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </parameter>
      </parameters>
    </function>
    <function name="util_replace" c:identifier="glade_util_replace">
      <doc xml:space="preserve">Replaces each occurance of the character @a in @str to @b.</doc>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="str" transfer-ownership="none">
          <doc xml:space="preserve">a string</doc>
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="a" transfer-ownership="none">
          <doc xml:space="preserve">a #gchar</doc>
          <type name="gchar" c:type="gchar"/>
        </parameter>
        <parameter name="b" transfer-ownership="none">
          <doc xml:space="preserve">a #gchar</doc>
          <type name="gchar" c:type="gchar"/>
        </parameter>
      </parameters>
    </function>
    <function name="util_search_devhelp"
              c:identifier="glade_util_search_devhelp">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="book" transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="page" transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="search" transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="util_ui_message"
              c:identifier="glade_util_ui_message"
              introspectable="0">
      <doc xml:space="preserve">Creates a new warning dialog window as a child of @parent containing
the text of @format, runs it, then destroys it on close. Depending
on @type, a cancel button may apear or the icon may change.</doc>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve">True if the @type was GLADE_UI_ARE_YOU_SURE and the user
         selected "OK", True if the @type was GLADE_UI_YES_OR_NO and
         the user selected "YES"; False otherwise.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="parent" transfer-ownership="none">
          <doc xml:space="preserve">a #GtkWindow cast as a #GtkWidget</doc>
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </parameter>
        <parameter name="type" transfer-ownership="none">
          <doc xml:space="preserve">a #GladeUIMessageType</doc>
          <type name="UIMessageType" c:type="GladeUIMessageType"/>
        </parameter>
        <parameter name="widget" transfer-ownership="none">
          <doc xml:space="preserve">a #GtkWidget to append to the dialog vbox</doc>
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </parameter>
        <parameter name="format" transfer-ownership="none">
          <doc xml:space="preserve">a printf style format string</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="..." transfer-ownership="none">
          <doc xml:space="preserve">args for the format.</doc>
          <varargs/>
        </parameter>
      </parameters>
    </function>
    <function name="util_url_show" c:identifier="glade_util_url_show">
      <doc xml:space="preserve">Portable function for showing an URL @url in a web browser.</doc>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve">TRUE if a web browser was successfully launched, or FALSE</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="url" transfer-ownership="none">
          <doc xml:space="preserve">An URL to display</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="utils_boolean_from_string"
              c:identifier="glade_utils_boolean_from_string">
      <doc xml:space="preserve">Parse a boolean value</doc>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve">True if there was an error on the conversion.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="string" transfer-ownership="none">
          <doc xml:space="preserve">the string to convert</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="value" transfer-ownership="none">
          <doc xml:space="preserve">return location</doc>
          <type name="gboolean" c:type="gboolean*"/>
        </parameter>
      </parameters>
    </function>
    <function name="utils_cairo_draw_line"
              c:identifier="glade_utils_cairo_draw_line">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="cr" transfer-ownership="none">
          <type name="cairo.Context" c:type="cairo_t*"/>
        </parameter>
        <parameter name="color" transfer-ownership="none">
          <type name="Gdk.Color" c:type="GdkColor*"/>
        </parameter>
        <parameter name="x1" transfer-ownership="none">
          <type name="gint" c:type="gint"/>
        </parameter>
        <parameter name="y1" transfer-ownership="none">
          <type name="gint" c:type="gint"/>
        </parameter>
        <parameter name="x2" transfer-ownership="none">
          <type name="gint" c:type="gint"/>
        </parameter>
        <parameter name="y2" transfer-ownership="none">
          <type name="gint" c:type="gint"/>
        </parameter>
      </parameters>
    </function>
    <function name="utils_cairo_draw_rectangle"
              c:identifier="glade_utils_cairo_draw_rectangle">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="cr" transfer-ownership="none">
          <type name="cairo.Context" c:type="cairo_t*"/>
        </parameter>
        <parameter name="color" transfer-ownership="none">
          <type name="Gdk.Color" c:type="GdkColor*"/>
        </parameter>
        <parameter name="filled" transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </parameter>
        <parameter name="x" transfer-ownership="none">
          <type name="gint" c:type="gint"/>
        </parameter>
        <parameter name="y" transfer-ownership="none">
          <type name="gint" c:type="gint"/>
        </parameter>
        <parameter name="width" transfer-ownership="none">
          <type name="gint" c:type="gint"/>
        </parameter>
        <parameter name="height" transfer-ownership="none">
          <type name="gint" c:type="gint"/>
        </parameter>
      </parameters>
    </function>
    <function name="utils_enum_string_from_value"
              c:identifier="glade_utils_enum_string_from_value">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="enum_type" transfer-ownership="none">
          <type name="GType" c:type="GType"/>
        </parameter>
        <parameter name="value" transfer-ownership="none">
          <type name="gint" c:type="gint"/>
        </parameter>
      </parameters>
    </function>
    <function name="utils_enum_string_from_value_displayable"
              c:identifier="glade_utils_enum_string_from_value_displayable">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="flags_type" transfer-ownership="none">
          <type name="GType" c:type="GType"/>
        </parameter>
        <parameter name="value" transfer-ownership="none">
          <type name="gint" c:type="gint"/>
        </parameter>
      </parameters>
    </function>
    <function name="utils_enum_value_from_string"
              c:identifier="glade_utils_enum_value_from_string">
      <return-value transfer-ownership="none">
        <type name="gint" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="enum_type" transfer-ownership="none">
          <type name="GType" c:type="GType"/>
        </parameter>
        <parameter name="strval" transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="utils_flags_string_from_value"
              c:identifier="glade_utils_flags_string_from_value">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="enum_type" transfer-ownership="none">
          <type name="GType" c:type="GType"/>
        </parameter>
        <parameter name="value" transfer-ownership="none">
          <type name="gint" c:type="gint"/>
        </parameter>
      </parameters>
    </function>
    <function name="utils_flags_string_from_value_displayable"
              c:identifier="glade_utils_flags_string_from_value_displayable">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="flags_type" transfer-ownership="none">
          <type name="GType" c:type="GType"/>
        </parameter>
        <parameter name="value" transfer-ownership="none">
          <type name="gint" c:type="gint"/>
        </parameter>
      </parameters>
    </function>
    <function name="utils_flags_value_from_string"
              c:identifier="glade_utils_flags_value_from_string">
      <return-value transfer-ownership="none">
        <type name="gint" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="enum_type" transfer-ownership="none">
          <type name="GType" c:type="GType"/>
        </parameter>
        <parameter name="strval" transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="utils_get_pointer" c:identifier="glade_utils_get_pointer">
      <doc xml:space="preserve">Get's the pointer position relative to @widget, while @window and @device
are not absolutely needed, they should be passed wherever possible.</doc>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="widget" transfer-ownership="none">
          <doc xml:space="preserve">The widget to get the mouse position relative for</doc>
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </parameter>
        <parameter name="window" transfer-ownership="none">
          <doc xml:space="preserve">The window of the current event, or %NULL</doc>
          <type name="Gdk.Window" c:type="GdkWindow*"/>
        </parameter>
        <parameter name="device" transfer-ownership="none">
          <doc xml:space="preserve">The device, if not specified, the current event will be expected to have a @device.</doc>
          <type name="Gdk.Device" c:type="GdkDevice*"/>
        </parameter>
        <parameter name="x" transfer-ownership="none">
          <doc xml:space="preserve">The location to store the mouse pointer X position</doc>
          <type name="gint" c:type="gint*"/>
        </parameter>
        <parameter name="y" transfer-ownership="none">
          <doc xml:space="preserve">The location to store the mouse pointer Y position</doc>
          <type name="gint" c:type="gint*"/>
        </parameter>
      </parameters>
    </function>
    <function name="utils_get_pspec_from_funcname"
              c:identifier="glade_utils_get_pspec_from_funcname"
              introspectable="0">
      <return-value>
        <doc xml:space="preserve">A #GParamSpec created by the delagate function
         specified by @funcname</doc>
        <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
      </return-value>
      <parameters>
        <parameter name="funcname" transfer-ownership="none">
          <doc xml:space="preserve">the symbol name of a function to generate a #GParamSpec</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="utils_hijack_key_press"
              c:identifier="glade_utils_hijack_key_press">
      <doc xml:space="preserve">This function is meant to be attached to key-press-event of a toplevel,
it simply allows the window contents to treat key events /before/
accelerator keys come into play (this way widgets dont get deleted
when cutting text in an entry etc.).
Creates a liststore suitable for comboboxes and such to
chose from a variety of types.</doc>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve">whether the event was handled</doc>
        <type name="gint" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="win" transfer-ownership="none">
          <doc xml:space="preserve">a #GtkWindow
event: the GdkEventKey
user_data: unused</doc>
          <type name="Gtk.Window" c:type="GtkWindow*"/>
        </parameter>
        <parameter name="event" transfer-ownership="none">
          <type name="Gdk.EventKey" c:type="GdkEventKey*"/>
        </parameter>
        <parameter name="user_data"
                   transfer-ownership="none"
                   nullable="1"
                   allow-none="1">
          <type name="gpointer" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="utils_liststore_from_enum_type"
              c:identifier="glade_utils_liststore_from_enum_type"
              introspectable="0">
      <doc xml:space="preserve">Creates a liststore suitable for comboboxes and such to
chose from a variety of types.</doc>
      <return-value>
        <doc xml:space="preserve">A new #GtkListStore</doc>
        <type name="Gtk.ListStore" c:type="GtkListStore*"/>
      </return-value>
      <parameters>
        <parameter name="enum_type" transfer-ownership="none">
          <doc xml:space="preserve">A #GType</doc>
          <type name="GType" c:type="GType"/>
        </parameter>
        <parameter name="include_empty" transfer-ownership="none">
          <doc xml:space="preserve">wheather to prepend an "Unset" slot</doc>
          <type name="gboolean" c:type="gboolean"/>
        </parameter>
      </parameters>
    </function>
    <function name="utils_pointer_mode_render_icon"
              c:identifier="glade_utils_pointer_mode_render_icon"
              introspectable="0">
      <doc xml:space="preserve">Render an icon representing the pointer mode.
Best view with sizes bigger than GTK_ICON_SIZE_LARGE_TOOLBAR.</doc>
      <return-value>
        <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
      </return-value>
      <parameters>
        <parameter name="mode" transfer-ownership="none">
          <doc xml:space="preserve">the #GladePointerMode to render as icon</doc>
          <type name="PointerMode" c:type="GladePointerMode"/>
        </parameter>
        <parameter name="size" transfer-ownership="none">
          <doc xml:space="preserve">icon size</doc>
          <type name="Gtk.IconSize" c:type="GtkIconSize"/>
        </parameter>
      </parameters>
    </function>
    <function name="utils_replace_home_dir_with_tilde"
              c:identifier="glade_utils_replace_home_dir_with_tilde">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="path" transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="utils_string_from_value"
              c:identifier="glade_utils_string_from_value">
      <doc xml:space="preserve">Serializes #GValue into a string
(using glade conversion routines)</doc>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve">A newly allocated string</doc>
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="value" transfer-ownership="none">
          <doc xml:space="preserve">a #GValue to convert</doc>
          <type name="GObject.Value" c:type="const GValue*"/>
        </parameter>
      </parameters>
    </function>
    <function name="utils_value_from_string"
              c:identifier="glade_utils_value_from_string">
      <doc xml:space="preserve">Allocates and sets a #GValue of type @type
set to @string (using glade conversion routines)</doc>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve">A newly allocated and set #GValue</doc>
        <type name="GObject.Value" c:type="GValue*"/>
      </return-value>
      <parameters>
        <parameter name="type" transfer-ownership="none">
          <doc xml:space="preserve">a #GType to convert with</doc>
          <type name="GType" c:type="GType"/>
        </parameter>
        <parameter name="string" transfer-ownership="none">
          <doc xml:space="preserve">the string to convert</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="project" transfer-ownership="none">
          <doc xml:space="preserve">the #GladeProject to look for formats of object names when needed</doc>
          <type name="Project" c:type="GladeProject*"/>
        </parameter>
      </parameters>
    </function>
    <function name="xml_dump_from_context"
              c:identifier="glade_xml_dump_from_context">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="context" transfer-ownership="none">
          <type name="XmlContext" c:type="GladeXmlContext*"/>
        </parameter>
      </parameters>
    </function>
    <function name="xml_get_boolean" c:identifier="glade_xml_get_boolean">
      <return-value transfer-ownership="none">
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="node" transfer-ownership="none">
          <type name="XmlNode" c:type="GladeXmlNode*"/>
        </parameter>
        <parameter name="name" transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="_default" transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </parameter>
      </parameters>
    </function>
    <function name="xml_get_content" c:identifier="glade_xml_get_content">
      <doc xml:space="preserve">Gets a string containing the content of @node_in.</doc>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve">A newly allocated string</doc>
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="node_in" transfer-ownership="none">
          <doc xml:space="preserve">a #GladeXmlNode</doc>
          <type name="XmlNode" c:type="GladeXmlNode*"/>
        </parameter>
      </parameters>
    </function>
    <function name="xml_get_property_boolean"
              c:identifier="glade_xml_get_property_boolean">
      <return-value transfer-ownership="none">
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="node_in" transfer-ownership="none">
          <type name="XmlNode" c:type="GladeXmlNode*"/>
        </parameter>
        <parameter name="name" transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="_default" transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </parameter>
      </parameters>
    </function>
    <function name="xml_get_property_double"
              c:identifier="glade_xml_get_property_double">
      <return-value transfer-ownership="none">
        <type name="gdouble" c:type="gdouble"/>
      </return-value>
      <parameters>
        <parameter name="node_in" transfer-ownership="none">
          <type name="XmlNode" c:type="GladeXmlNode*"/>
        </parameter>
        <parameter name="name" transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="_default" transfer-ownership="none">
          <type name="gdouble" c:type="gdouble"/>
        </parameter>
      </parameters>
    </function>
    <function name="xml_get_property_int"
              c:identifier="glade_xml_get_property_int">
      <return-value transfer-ownership="none">
        <type name="gint" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="node_in" transfer-ownership="none">
          <type name="XmlNode" c:type="GladeXmlNode*"/>
        </parameter>
        <parameter name="name" transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="_default" transfer-ownership="none">
          <type name="gint" c:type="gint"/>
        </parameter>
      </parameters>
    </function>
    <function name="xml_get_property_string"
              c:identifier="glade_xml_get_property_string">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="node_in" transfer-ownership="none">
          <type name="XmlNode" c:type="GladeXmlNode*"/>
        </parameter>
        <parameter name="name" transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="xml_get_property_string_required"
              c:identifier="glade_xml_get_property_string_required">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="node_in" transfer-ownership="none">
          <type name="XmlNode" c:type="GladeXmlNode*"/>
        </parameter>
        <parameter name="name" transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="xtra" transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="xml_get_property_targetable_versions"
              c:identifier="glade_xml_get_property_targetable_versions"
              introspectable="0">
      <return-value>
        <type name="GLib.List" c:type="GList*">
          <type name="gpointer" c:type="gpointer"/>
        </type>
      </return-value>
      <parameters>
        <parameter name="node_in" transfer-ownership="none">
          <type name="XmlNode" c:type="GladeXmlNode*"/>
        </parameter>
        <parameter name="name" transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="xml_get_property_version"
              c:identifier="glade_xml_get_property_version">
      <return-value transfer-ownership="none">
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="node_in" transfer-ownership="none">
          <type name="XmlNode" c:type="GladeXmlNode*"/>
        </parameter>
        <parameter name="name" transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="major" transfer-ownership="none">
          <type name="guint16" c:type="guint16*"/>
        </parameter>
        <parameter name="minor" transfer-ownership="none">
          <type name="guint16" c:type="guint16*"/>
        </parameter>
      </parameters>
    </function>
    <function name="xml_get_value_int" c:identifier="glade_xml_get_value_int">
      <doc xml:space="preserve">Gets an integer value for a node either carried as an attribute or as
the content of a child.</doc>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve">%TRUE if the node is found, %FALSE otherwise</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="node_in" transfer-ownership="none">
          <doc xml:space="preserve">a #GladeXmlNode</doc>
          <type name="XmlNode" c:type="GladeXmlNode*"/>
        </parameter>
        <parameter name="name" transfer-ownership="none">
          <doc xml:space="preserve">a string</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="val" transfer-ownership="none">
          <doc xml:space="preserve">a pointer to an #int</doc>
          <type name="gint" c:type="int*"/>
        </parameter>
      </parameters>
    </function>
    <function name="xml_get_value_int_required"
              c:identifier="glade_xml_get_value_int_required">
      <doc xml:space="preserve">This is a wrapper around glade_xml_get_value_int(), only it emits
a g_warning() if @node_in did not contain the requested tag</doc>
      <return-value transfer-ownership="none">
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="node" transfer-ownership="none">
          <doc xml:space="preserve">a #GladeXmlNode</doc>
          <type name="XmlNode" c:type="GladeXmlNode*"/>
        </parameter>
        <parameter name="name" transfer-ownership="none">
          <doc xml:space="preserve">a string</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="val" transfer-ownership="none">
          <doc xml:space="preserve">a pointer to an #int</doc>
          <type name="gint" c:type="int*"/>
        </parameter>
      </parameters>
    </function>
    <function name="xml_get_value_string"
              c:identifier="glade_xml_get_value_string">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="node" transfer-ownership="none">
          <type name="XmlNode" c:type="GladeXmlNode*"/>
        </parameter>
        <parameter name="name" transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="xml_get_value_string_required"
              c:identifier="glade_xml_get_value_string_required">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="node" transfer-ownership="none">
          <type name="XmlNode" c:type="GladeXmlNode*"/>
        </parameter>
        <parameter name="name" transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="xtra_info" transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="xml_load_sym_from_node"
              c:identifier="glade_xml_load_sym_from_node">
      <return-value transfer-ownership="none">
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="node_in" transfer-ownership="none">
          <type name="XmlNode" c:type="GladeXmlNode*"/>
        </parameter>
        <parameter name="module" transfer-ownership="none">
          <type name="GModule.Module" c:type="GModule*"/>
        </parameter>
        <parameter name="tagname" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="sym_location"
                   transfer-ownership="none"
                   nullable="1"
                   allow-none="1">
          <type name="gpointer" c:type="gpointer*"/>
        </parameter>
      </parameters>
    </function>
    <function name="xml_search_child"
              c:identifier="glade_xml_search_child"
              introspectable="0">
      <return-value>
        <type name="XmlNode" c:type="GladeXmlNode*"/>
      </return-value>
      <parameters>
        <parameter name="node" transfer-ownership="none">
          <type name="XmlNode" c:type="GladeXmlNode*"/>
        </parameter>
        <parameter name="name" transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="xml_search_child_required"
              c:identifier="glade_xml_search_child_required"
              introspectable="0">
      <doc xml:space="preserve">just a small wrapper arround glade_xml_search_child that displays
an error if the child was not found</doc>
      <return-value>
        <type name="XmlNode" c:type="GladeXmlNode*"/>
      </return-value>
      <parameters>
        <parameter name="tree" transfer-ownership="none">
          <type name="XmlNode" c:type="GladeXmlNode*"/>
        </parameter>
        <parameter name="name" transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="xml_set_content" c:identifier="glade_xml_set_content">
      <doc xml:space="preserve">Sets the content of @node to @content.</doc>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="node_in" transfer-ownership="none">
          <doc xml:space="preserve">a #GladeXmlNode</doc>
          <type name="XmlNode" c:type="GladeXmlNode*"/>
        </parameter>
        <parameter name="content" transfer-ownership="none">
          <doc xml:space="preserve">a string</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="xml_set_value" c:identifier="glade_xml_set_value">
      <doc xml:space="preserve">Sets the property @name in @node_in to @val</doc>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="node_in" transfer-ownership="none">
          <doc xml:space="preserve">a #GladeXmlNode</doc>
          <type name="XmlNode" c:type="GladeXmlNode*"/>
        </parameter>
        <parameter name="name" transfer-ownership="none">
          <doc xml:space="preserve">a string</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="val" transfer-ownership="none">
          <doc xml:space="preserve">a string</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
  </namespace>
</repository>
