Class method
GtkWidgetClassbind_template_child_full
Declaration [src]
void
gtk_widget_class_bind_template_child_full (
GtkWidgetClass* widget_class,
const char* name,
gboolean internal_child,
gssize struct_offset
)
Description [src]
Assigns an object declared in the class template XML to be set to
a location on a freshly built instance’s private data, or
alternatively accessible via gtk_widget_get_template_child()
.
The struct can point either into the public instance, then you should
use G_STRUCT_OFFSET(WidgetType, member)
for struct_offset
, or in the
private struct, then you should use G_PRIVATE_OFFSET(WidgetType, member)
.
An explicit strong reference will be held automatically for the duration
of your instance’s life cycle, it will be released automatically when
GObjectClass.dispose()
runs on your instance and if a nonzero struct_offset
is specified, then the automatic location in your instance public or private
data will be set to NULL
. You can however access an automated child pointer
the first time your classes GObjectClass.dispose()
runs, or alternatively
in GtkWidget::destroy
.
If internal_child
is specified, Gtk.BuildableIface.get_internal_child
will be automatically implemented by the widget class so there is no
need to implement it manually.
The wrapper macros gtk_widget_class_bind_template_child()
,
gtk_widget_class_bind_template_child_internal()
,
gtk_widget_class_bind_template_child_private()
and
gtk_widget_class_bind_template_child_internal_private()
might be more convenient to use.
Note that this must be called from a composite widget classes class
initializer after calling gtk_widget_class_set_template()
.
Parameters
name
-
Type:
const char*
ID of the child defined in the template XML.
The data is owned by the caller of the method. The value is a NUL terminated UTF-8 string. internal_child
-
Type:
gboolean
Whether the child should be accessible as an “internal-child” when this class is used in GtkBuilder XML.
struct_offset
-
Type:
gssize
The offset into the composite widget’s instance public or private structure where the automated child pointer should be set, or 0 to not assign the pointer.