Interface

GtkBuildable

Description [src]

interface Gtk.Buildable : GObject.Object

GtkBuildable allows objects to extend and customize their deserialization from [GtkBuilder UI descriptions][BUILDER-UI]. The interface includes methods for setting names and properties of objects, parsing custom tags and constructing child objects.

The GtkBuildable interface is implemented by all widgets and many of the non-widget objects that are provided by GTK+. The main user of this interface is GtkBuilder. There should be very little need for applications to call any of these functions directly.

An object only needs to implement this interface if it needs to extend the GtkBuilder format or run any extra routines at deserialization time.

Prerequisite

In order to implement Buildable, your type must inherit from GObject.

Instance methods

gtk_buildable_add_child

Adds a child to buildable. type is an optional string describing how the child should be added.

Available since: 2.12

gtk_buildable_construct_child

Constructs a child of buildable with the name name.

Available since: 2.12

gtk_buildable_custom_finished

This is similar to gtk_buildable_parser_finished() but is called once for each custom tag handled by the buildable.

Available since: 2.12

gtk_buildable_custom_tag_end

This is called at the end of each custom element handled by the buildable.

Available since: 2.12

gtk_buildable_custom_tag_start

This is called for each unknown element under <child>.

Available since: 2.12

gtk_buildable_get_internal_child

Get the internal child called childname of the buildable object.

Available since: 2.12

gtk_buildable_get_name

Gets the name of the buildable object.

Available since: 2.12

gtk_buildable_parser_finished

Called when the builder finishes the parsing of a [GtkBuilder UI definition][BUILDER-UI]. Note that this will be called once for each time gtk_builder_add_from_file() or gtk_builder_add_from_string() is called on a builder.

Available since: 2.12

gtk_buildable_set_buildable_property

Sets the property name name to value on the buildable object.

Available since: 2.12

gtk_buildable_set_name

Sets the name of the buildable object.

Available since: 2.12

Interface structure

struct GtkBuildableIface {
  GTypeInterface g_iface;
  void (* set_name) (
    GtkBuildable* buildable,
    const gchar* name
  );
  const gchar* (* get_name) (
    GtkBuildable* buildable
  );
  void (* add_child) (
    GtkBuildable* buildable,
    GtkBuilder* builder,
    GObject* child,
    const gchar* type
  );
  void (* set_buildable_property) (
    GtkBuildable* buildable,
    GtkBuilder* builder,
    const gchar* name,
    const GValue* value
  );
  GObject* (* construct_child) (
    GtkBuildable* buildable,
    GtkBuilder* builder,
    const gchar* name
  );
  gboolean (* custom_tag_start) (
    GtkBuildable* buildable,
    GtkBuilder* builder,
    GObject* child,
    const gchar* tagname,
    GMarkupParser* parser,
    gpointer* data
  );
  void (* custom_tag_end) (
    GtkBuildable* buildable,
    GtkBuilder* builder,
    GObject* child,
    const gchar* tagname,
    gpointer* data
  );
  void (* custom_finished) (
    GtkBuildable* buildable,
    GtkBuilder* builder,
    GObject* child,
    const gchar* tagname,
    gpointer data
  );
  void (* parser_finished) (
    GtkBuildable* buildable,
    GtkBuilder* builder
  );
  GObject* (* get_internal_child) (
    GtkBuildable* buildable,
    GtkBuilder* builder,
    const gchar* childname
  );
  
}
Interface members
g_iface
GTypeInterface
 

The parent class.

set_name
void (* set_name) (
    GtkBuildable* buildable,
    const gchar* name
  )
 No description available.
get_name
const gchar* (* get_name) (
    GtkBuildable* buildable
  )
 No description available.
add_child
void (* add_child) (
    GtkBuildable* buildable,
    GtkBuilder* builder,
    GObject* child,
    const gchar* type
  )
 No description available.
set_buildable_property
void (* set_buildable_property) (
    GtkBuildable* buildable,
    GtkBuilder* builder,
    const gchar* name,
    const GValue* value
  )
 No description available.
construct_child
GObject* (* construct_child) (
    GtkBuildable* buildable,
    GtkBuilder* builder,
    const gchar* name
  )
 No description available.
custom_tag_start
gboolean (* custom_tag_start) (
    GtkBuildable* buildable,
    GtkBuilder* builder,
    GObject* child,
    const gchar* tagname,
    GMarkupParser* parser,
    gpointer* data
  )
 No description available.
custom_tag_end
void (* custom_tag_end) (
    GtkBuildable* buildable,
    GtkBuilder* builder,
    GObject* child,
    const gchar* tagname,
    gpointer* data
  )
 No description available.
custom_finished
void (* custom_finished) (
    GtkBuildable* buildable,
    GtkBuilder* builder,
    GObject* child,
    const gchar* tagname,
    gpointer data
  )
 No description available.
parser_finished
void (* parser_finished) (
    GtkBuildable* buildable,
    GtkBuilder* builder
  )
 No description available.
get_internal_child
GObject* (* get_internal_child) (
    GtkBuildable* buildable,
    GtkBuilder* builder,
    const gchar* childname
  )
 No description available.

Virtual methods

Gtk.Buildable.add_child

Adds a child to buildable. type is an optional string describing how the child should be added.

Gtk.Buildable.construct_child

Constructs a child of buildable with the name name.

Gtk.Buildable.custom_finished

This is similar to gtk_buildable_parser_finished() but is called once for each custom tag handled by the buildable.

Gtk.Buildable.custom_tag_end

This is called at the end of each custom element handled by the buildable.

Gtk.Buildable.custom_tag_start

This is called for each unknown element under <child>.

Gtk.Buildable.get_internal_child

Get the internal child called childname of the buildable object.

Gtk.Buildable.get_name

Gets the name of the buildable object.

Gtk.Buildable.parser_finished

Called when the builder finishes the parsing of a [GtkBuilder UI definition][BUILDER-UI]. Note that this will be called once for each time gtk_builder_add_from_file() or gtk_builder_add_from_string() is called on a builder.

Gtk.Buildable.set_buildable_property

Sets the property name name to value on the buildable object.

Gtk.Buildable.set_name

Sets the name of the buildable object.