![]() |
![]() |
![]() |
Glade UI Builder Reference Manual | ![]() |
---|
Widget Class DefinitionsWidget Classes — How to augment or define a GladeWidgetClass |
GladeWidgetClass stuctures are added to a global pool using the `glade-widget-class' tag and then later added to the palette through the `glade-widget-group' section; class-wide parameters can be set on non-instantiatable classes; for example, parameters for GtkBox are valid for GtkHBox and GtkVBox.
Note that there are alot of features to support alot of special-cases from toolkits; but assuming that a widget is completely configurable via properties and does not implement any special container relationships (which we will explain in further detail later on) the catalog entry should really just be a one liner like this:
<glade-widget-class name="GtkLabel" generic-name="label" title="Label"/>
To delve further into details; the complex layout looks like this:
<glade-widget-class name="GtkLabel" generic-name="label" title="Label"> ... widget class support functions go here <properties> ... property definitions go here </properties> <children> ... child specific parameters go here </children> </glade-widget-class>
name | The 'name' property is the class name of the widget; this will essentially be used to instantiate the actual class by deriving 'gtk_label_get_type' from 'GtkLabel' and searching for 'gtk_label_get_type' in the support library. |
generic-name | The 'generic-name' property is used to get the icon name for the widget palette and is a regular icon theme icon. The generic name is also used to generate a default name for instances of the widget in the UI editor. |
title | The'title' property is used to display the name of the class in the palette and widget tree and will be translated before use in the interface. |
toplevel | The'toplevel' property is used to know whether this widget class is toplevel or not in Glade context. |
post-create-function | The 'post-create-function' tag is a GladePostCreateFunc support function that gets called whenever a widget of 'this class' (or a widget derived from 'this class' that didn't provide its own post-create-function) is instantiated. |
launch-editor-function | The 'launch-editor-function' tag is a GladeEditorLaunchFunc support function used to launch a custom editor for this class; a good example for this is the GtkMenuBar which needs a special editor in order to be easier to use. |
get-internal-child-function | The 'get-internal-child-function' tag is a GladeGetInternalFunc support function used to retrieve an internal child of a composite object (like a button in a filechooser or something); support for internal children must also be added to your application via libglade. |
The widgets are groups in different groups in the Glade UI. Those groups are defined in the catalog file as follows:
<glade-widget-group name="my-widgets" title="My widgets"> <glade-widget-class-ref name="MyFirstWidget"/> <glade-widget-class-ref name="MysecondWidget"/> ... </glade-widget-group>
The file should contain one or more widget groups.
<< Introducing the Glade Catalog | Property Class Definitions >> |