This function signature should be used by functions that build particular
widget types. The function should create the new widget and set any non
standard widget parameters (ie. don't set visibility, size, etc), as
this is handled by glade_xml_build_widget, which calls these functions.
This function signature should be used by functions that are responsible
for adding children to a container widget. To create each child widget,
glade_xml_build_widget should be called.
This function is not intended for people who just use libglade. Instead
it is for people extending it (it is designed to be called in the child
build routine defined for the parent widget). It first checks the type
of the widget from the class tag, then calls the corresponding widget
creation routine. This routine sets up all the settings specific to that
type of widget. Then general widget settings are performed on the widget.
Then it sets up accelerators for the widget, and extracts any signal
information for the widget. Then it checks to see if there are any
child widget nodes for this widget, and if so calls the widget's
build routine, which will create the children with this function and add
them to the widget in the appropriate way. Finally it returns the widget.
This function sets the common parameters on a widget, and is responsible
for inserting it into the GladeXML object's internal structures. It will
also add the children to this widget. Usually this function is only called
by glade_xml_build_widget, but is exposed for difficult cases, such as
setting up toolbar buttons and the like.
This function is used to register new sets of widget building functions.
each member of widgets contains the widget name, a function to build
a widget of that type, and optionally a function to build the children
of this widget. The child building routine would call
glade_xml_build_widget on each child node to create the child before
packing it.
This function is mainly useful for addon widget modules for libglade
(it would get called from the glade_init_module function).
widgets :
a NULL terminated array of GladeWidgetBuildData structures.
This function resolves a relative pathname, using the directory of the
XML file as a base. If the pathname is absolute, then the original
filename is returned.
This helper routine is designed to be used by widget build routines to
convert the string representations of enumeration values found in the
XML descriptions to the integer values that can be used to configure
the widget.
type :
the GtkType for this flag or enum type.
string :
the string representation of the enum value.
Returns :
the integer value for this enumeration, or 0 if it couldn't be
found.
This is a convenience function to set some common attributes on
GtkWindow widgets and widgets derived from GtkWindow. It does not
set the title or the window type, as these may need special handling
in some widgets.
window :
the GtkWindow to set the properties of.
info :
the GladeWidgetInfo structure holding the properties
This is the standard child building function. It simply calls
gtk_container_add on each child to add them to the parent. It is
implemented here, as it should be useful to many GTK+ based widget
sets.
This function is a wrapper for gettext, that uses the translation domain
requested by the user of the function, or the default if no domain has
been specified. This should be used for translatable strings in all
widget building routines.
This is used while the tree is being built to set the toplevel window that
is currently being built. It is mainly used to enable GtkAccelGroup's to
be bound to the correct window, but could have other uses.
This function is used to get the current GtkAccelGroup. If there isn't
one, a new one is created and bound to the current toplevel window (if
a toplevel has been set).
This function is called by the GtkLabel creation routine to register an
underline accelerator for the label. If the target widget exists, the
accelerator is connected to the grab_focus signal. If it does not exist
yet, the (target, key) pair is saved so that it can be attached when the
widget is created.
If target is NULL, then the accelerator should be attached to one of
the parents of this widget (typically a GtkButton).
This function gets the latest label underline accelerator directed at the
parent widget. If there is no accelerator waiting, 0 is returned. If
this function is called twice in a row, the second call will always return
0.