![]() |
![]() |
![]() |
GTK+ Reference Manual | ![]() |
---|---|---|---|---|
#include <gtk/gtk.h> GtkBuildable; GtkBuildableIface;void gtk_buildable_set_name (GtkBuildable *buildable, constgchar *name); constgchar * gtk_buildable_get_name (GtkBuildable *buildable);void gtk_buildable_add (GtkBuildable *buildable, GtkBuilder *builder,GObject *child, constgchar *type);void gtk_buildable_set_property (GtkBuildable *buildable, GtkBuilder *builder, constgchar *name, constGValue *value);GObject * gtk_buildable_construct_child (GtkBuildable *buildable, GtkBuilder *builder, constgchar *name);gboolean gtk_buildable_custom_tag_start (GtkBuildable *buildable, GtkBuilder *builder,GObject *child, constgchar *tagname,GMarkupParser *parser,gpointer *data);void gtk_buildable_custom_tag_end (GtkBuildable *buildable, GtkBuilder *builder,GObject *child, constgchar *tagname,gpointer *data);void gtk_buildable_custom_finished (GtkBuildable *buildable, GtkBuilder *builder,GObject *child, constgchar *tagname,gpointer data);void gtk_buildable_parser_finished (GtkBuildable *buildable, GtkBuilder *builder);GObject * gtk_buildable_get_internal_child (GtkBuildable *buildable, GtkBuilder *builder, constgchar *childname);
GtkBuildable is implemented by GtkListItem, GtkBin, GtkTreeView, GtkButtonBox, GtkPaned, GtkColorSelectionDialog, GtkVButtonBox, GtkTearoffMenuItem, GtkEntry, GtkOptionMenu, GtkImage, GtkCalendar, GtkFixed, GtkLinkButton, GtkHButtonBox, GtkInputDialog, GtkRadioButton, GtkVRuler, GtkVSeparator, GtkVBox, GtkCurve, GtkRadioToolButton, GtkHRuler, GtkToggleButton, GtkSeparatorMenuItem, GtkHScale, GtkTable, GtkTreeViewColumn, GtkImageMenuItem, GtkFileChooserButton, GtkCheckButton, GtkRadioMenuItem, GtkMenuShell, GtkStatusbar, GtkDrawingArea, GtkButton, GtkIconView, GtkNotebook, GtkUIManager, GtkTree, GtkSocket, GtkVScale, GtkProgress, GtkGammaCurve, GtkText, GtkCList, GtkAlignment, GtkMenuToolButton, GtkMenuItem, GtkPageSetupUnixDialog, GtkRecentChooserMenu, GtkToolItem, GtkHSeparator, GtkProgressBar, GtkCTree, GtkActionGroup, GtkRange, GtkAssistant, GtkFileSelection, GtkToolbar, GtkTreeItem, GtkAccelLabel, GtkPreview, GtkRecentChooserDialog, GtkExpander, GtkScale, GtkTreeStore, GtkMessageDialog, GtkSeparator, GtkLayout, GtkFontSelection, GtkCellView, GtkInvisible, GtkWindow, GtkSeparatorToolItem, GtkFileChooserWidget, GtkCheckMenuItem, GtkToolButton, GtkMisc, GtkEventBox, GtkFontButton, GtkEntryCompletion, GtkDialog, GtkHBox, GtkCombo, GtkOldEditable, GtkAspectFrame, GtkAboutDialog, GtkHScrollbar, GtkListStore, GtkScaleButton, GtkRecentChooserWidget, GtkToggleToolButton, GtkComboBox, GtkVScrollbar, GtkFrame, GtkSpinButton, GtkList, GtkLabel, GtkFontSelectionDialog, GtkTipsQuery, GtkColorSelection, GtkItem, GtkWidget, GtkRecentAction, GtkVolumeButton, GtkMenuBar, GtkTextView, GtkArrow, GtkToggleAction, GtkRadioAction, GtkPlug, GtkHPaned, GtkBox, GtkMenu, GtkAction, GtkPrintUnixDialog, GtkComboBoxEntry, GtkColorButton, GtkPixmap, GtkFileChooserDialog, GtkRuler, GtkVPaned, GtkHandleBox, GtkScrollbar, GtkContainer, GtkSizeGroup, GtkViewport and GtkScrolledWindow.
typedef struct { GTypeInterface g_iface; /* virtual table */ void (* set_name) (GtkBuildable *buildable, const gchar *name); const gchar * (* get_name) (GtkBuildable *buildable); void (* add) (GtkBuildable *buildable, GtkBuilder *builder, GObject *child, const gchar *type); void (* set_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); } GtkBuildableIface;
void gtk_buildable_set_name (GtkBuildable *buildable, constgchar *name);
Sets the name of the buildable object, it's used to synchronize the name if the object already has it's own concept of name.
GtkWidget implements this to map the buildable name to the widget name
buildable : |
a GtkBuildable |
name : |
name to set |
Since 2.12
constgchar * gtk_buildable_get_name (GtkBuildable *buildable);
Returns the buildable name. GtkBuilder sets the name based on the
the buildable
.
GtkWidget implements this to map the buildable name to the widget name
buildable : |
a GtkBuildable |
Returns : | the name set with gtk_buildable_set_name()
|
Since 2.12
void gtk_buildable_add (GtkBuildable *buildable, GtkBuilder *builder,GObject *child, constgchar *type);
Add a child to a buildable. type is an optional string describing how the child should be added.
GtkContainer implements this to be able to add a child widget
to the container. GtkNotebook uses the type
to distinguish between
page labels (type
= "page-label") and normal children.
buildable : |
a GtkBuildable |
builder : |
a GtkBuilder |
child : |
child to add |
type : |
kind of child or NULL |
Since 2.12
void gtk_buildable_set_property (GtkBuildable *buildable, GtkBuilder *builder, constgchar *name, constGValue *value);
Sets the property name name
to value
on the buildable object buildable
which is created by the builder
.
This is optional to implement and is normally not needed.
g_object_set_property()
GtkWindow implements this to delay showing (::visible) itself until the whole interface is fully created.
buildable : |
a GtkBuildable |
builder : |
a GtkBuilder |
name : |
name of property |
value : |
value of property |
Since 2.12
GObject * gtk_buildable_construct_child (GtkBuildable *buildable, GtkBuilder *builder, constgchar *name);
Construct a child of buildable
with the name name
.
GtkUIManager implements this to reference to a widget created in a
<ui> tag which is outside of the normal
buildable : |
A GtkBuildable |
builder : |
GtkBuilder used to construct this object |
name : |
name of child to construct |
Returns : | the child with name name
|
Since 2.12
gboolean gtk_buildable_custom_tag_start (GtkBuildable *buildable, GtkBuilder *builder,GObject *child, constgchar *tagname,GMarkupParser *parser,gpointer *data);
This is called when an unknown tag under <child> tag is found.
Called when an unknown tag is present under a <child> tag.
If the buildable implementation wishes to handle the tag it should
return TRUE
parser
structure. Remember to either
implement custom_tag_end or custom_tag_finish to free
the user data allocated here.
GtkWidget implements this and parsers all <accelerator> tags to keyboard accelerators. GtkContainer implements this to map properties defined under <packing> tag to child properties.
buildable : |
a GtkBuildable |
builder : |
a GtkBuilder used to construct this object |
child : |
child object or NULL |
tagname : |
name of tag |
parser : |
a |
data : |
user data that will be passed in to parser functions |
Returns : | TRUE FALSE |
Since 2.12
void gtk_buildable_custom_tag_end (GtkBuildable *buildable, GtkBuilder *builder,GObject *child, constgchar *tagname,gpointer *data);
This is called for each custom tag handled by the buildable. It will be called when the end of the tag is reached.
buildable : |
A GtkBuildable |
builder : |
GtkBuilder used to construct this object |
child : |
child object or NULL |
tagname : |
name of tag |
data : |
user data that will be passed in to parser functions |
Since 2.12
void gtk_buildable_custom_finished (GtkBuildable *buildable, GtkBuilder *builder,GObject *child, constgchar *tagname,gpointer data);
This is similar to gtk_buildable_parser_finished()
but is
called once for each custom tag handled by the buildable
.
buildable : |
a GtkBuildable |
builder : |
a GtkBuilder |
child : |
child object or NULL |
tagname : |
the name of the tag |
data : |
user data created in custom_tag_start |
Since 2.12
void gtk_buildable_parser_finished (GtkBuildable *buildable, GtkBuilder *builder);
Finish the parsing of a
GtkWindow implements this to delay showing (::visible) itself until the whole interface is fully created.
buildable : |
a GtkBuildable |
builder : |
a GtkBuilder |
Since 2.12
GObject * gtk_buildable_get_internal_child (GtkBuildable *buildable, GtkBuilder *builder, constgchar *childname);
Get the internal child called childname
of the buildable
object.
buildable : |
a GtkBuildable |
builder : |
a GtkBuilder |
childname : |
name of child |
Returns : | the internal child of the buildable object |
Since 2.12