forked from AuroraMiddleware/gtk
2c41fc0918
2003-08-31 Matthias Clasen <maclas@gmx.de> * gtk/Makefile.am (IGNORE_HFILES): Add gtktoggleactionprivate.h * gtk/tmpl/gtkuimanager.sgml: * gtk/gtk-sections.txt: Replace gtk_ui_manager_activate by gtk_ui_manager_get_action. * gtk/gtkuimanager.[ch] (gtk_ui_manager_get_action): New function, replaces gtk_ui_manager_activate(). (#120658) * tests/testmerge.c: Use gtk_ui_manager_get_action() instead of gtk_ui_manager_activate().
222 lines
4.8 KiB
Plaintext
222 lines
4.8 KiB
Plaintext
<!-- ##### SECTION Title ##### -->
|
|
GtkUIManager
|
|
|
|
<!-- ##### SECTION Short_Description ##### -->
|
|
constructing menus and toolbars from an XML description
|
|
|
|
<!-- ##### SECTION Long_Description ##### -->
|
|
<para>
|
|
A #GtkUIManager constructs a user interface (menus and toolbars) from
|
|
one or more UI definitions, which reference actions from one or ore
|
|
action groups.
|
|
</para>
|
|
<refsect2 id="XML-UI"><title>UI Definitions</title>
|
|
<para>
|
|
The UI definitions are specified in an XML format which is described
|
|
by the following DTD.
|
|
<programlisting>
|
|
<!ELEMENT ui (menubar|toolbar|popup)* >
|
|
<!ELEMENT menubar (menuitem|separator|placeholder|menu)* >
|
|
<!ELEMENT menu (menuitem|separator|placeholder|menu)* >
|
|
<!ELEMENT popup (menuitem|separator|placeholder|menu)* >
|
|
<!ELEMENT toolbar (toolitem|separator|placeholder)* >
|
|
<!ELEMENT placeholder (menuitem|toolitem|separator|placeholder|menu)* >
|
|
<!ELEMENT menuitem EMPTY >
|
|
<!ELEMENT toolitem EMPTY >
|
|
<!ELEMENT separator EMPTY >
|
|
<!ATTLIST menubar name #IMPLIED >
|
|
<!ATTLIST toolbar name #IMPLIED >
|
|
<!ATTLIST popup name #IMPLIED >
|
|
<!ATTLIST placeholder name #IMPLIED >
|
|
<!ATTLIST menu name #IMPLIED
|
|
action #REQUIRED
|
|
pos (top|bot) #IMPLIED >
|
|
<!ATTLIST menuitem name #IMPLIED
|
|
action #REQUIRED
|
|
pos (top|bot) #IMPLIED >
|
|
<!ATTLIST toolitem name #IMPLIED
|
|
action #REQUIRED
|
|
pos (top|bot) #IMPLIED >
|
|
</programlisting>
|
|
There are some additional restrictions beyond those specified in the DTD, e.g.
|
|
every toolitem must have a toolbar in its anchestry and every menuitem must have
|
|
a menubar or popup in its anchestry. If a name is not specified, it defaults to
|
|
the action. If an action is not specified either, the element name is used.
|
|
</para>
|
|
<para>
|
|
The constructed widget hierarchy is very similar to the element
|
|
tree of the XML, with the exception that placeholders are merged into their
|
|
parents. The correspondence of XML elements to widgets should be almost obvious:
|
|
<itemizedlist>
|
|
<listitem><para>menubar: a #GtkMenuBar</para></listitem>
|
|
<listitem><para>toolbar: a #GtkToolBar</para></listitem>
|
|
<listitem><para>popup: a toplevel #GtkMenu</para></listitem>
|
|
<listitem><para>menu: a #GtkMenu attached to a menuitem</para></listitem>
|
|
<listitem><para>menuitem: a #GtkMenuItem subclass, the exact type depends on the action</para></listitem>
|
|
<listitem><para>toolitem: a #GtkToolItem subclass, the exact type depends on the action</para></listitem>
|
|
<listitem><para>separator: a #GtkSeparatorMenuItem or #GtkSeparatorToolItem</para></listitem>
|
|
</itemizedlist>
|
|
</para>
|
|
<para>
|
|
The pos attribute determines where a constructed widget is positioned wrt. to its
|
|
siblings in the partially constructed tree. If it is "top", the widget is prepended,
|
|
otherwise it is appended.
|
|
</para>
|
|
</refsect2>
|
|
|
|
<!-- ##### SECTION See_Also ##### -->
|
|
<para>
|
|
|
|
</para>
|
|
|
|
<!-- ##### STRUCT GtkUIManager ##### -->
|
|
<para>
|
|
|
|
</para>
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_ui_manager_new ##### -->
|
|
<para>
|
|
|
|
</para>
|
|
|
|
@Returns:
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_ui_manager_set_add_tearoffs ##### -->
|
|
<para>
|
|
|
|
</para>
|
|
|
|
@self:
|
|
@add_tearoffs:
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_ui_manager_get_add_tearoffs ##### -->
|
|
<para>
|
|
|
|
</para>
|
|
|
|
@self:
|
|
@Returns:
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_ui_manager_insert_action_group ##### -->
|
|
<para>
|
|
|
|
</para>
|
|
|
|
@self:
|
|
@action_group:
|
|
@pos:
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_ui_manager_remove_action_group ##### -->
|
|
<para>
|
|
|
|
</para>
|
|
|
|
@self:
|
|
@action_group:
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_ui_manager_get_action_groups ##### -->
|
|
<para>
|
|
|
|
</para>
|
|
|
|
@self:
|
|
@Returns:
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_ui_manager_get_accel_group ##### -->
|
|
<para>
|
|
|
|
</para>
|
|
|
|
@self:
|
|
@Returns:
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_ui_manager_get_widget ##### -->
|
|
<para>
|
|
|
|
</para>
|
|
|
|
@self:
|
|
@path:
|
|
@Returns:
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_ui_manager_get_action ##### -->
|
|
<para>
|
|
|
|
</para>
|
|
|
|
@self:
|
|
@path:
|
|
@Returns:
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_ui_manager_add_ui_from_string ##### -->
|
|
<para>
|
|
|
|
</para>
|
|
|
|
@self:
|
|
@buffer:
|
|
@length:
|
|
@error:
|
|
@Returns:
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_ui_manager_add_ui_from_file ##### -->
|
|
<para>
|
|
|
|
</para>
|
|
|
|
@self:
|
|
@filename:
|
|
@error:
|
|
@Returns:
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_ui_manager_remove_ui ##### -->
|
|
<para>
|
|
|
|
</para>
|
|
|
|
@self:
|
|
@merge_id:
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_ui_manager_get_ui ##### -->
|
|
<para>
|
|
|
|
</para>
|
|
|
|
@self:
|
|
@Returns:
|
|
|
|
|
|
<!-- ##### SIGNAL GtkUIManager::add-widget ##### -->
|
|
<para>
|
|
|
|
</para>
|
|
|
|
@uimanager: the object which received the signal.
|
|
@widget:
|
|
|
|
<!-- ##### SIGNAL GtkUIManager::changed ##### -->
|
|
<para>
|
|
|
|
</para>
|
|
|
|
@uimanager: the object which received the signal.
|
|
|
|
<!-- ##### ARG GtkUIManager:add-tearoffs ##### -->
|
|
<para>
|
|
|
|
</para>
|
|
|