GtkToolbar
<!-- ##### SECTION Short_Description ##### -->
-create bars of buttons and other widgets.
+Create bars of buttons and other widgets
<!-- ##### SECTION Long_Description ##### -->
<para>
A toolbar is created with a call to gtk_toolbar_new().
</para>
<para>
-Buttons with text and/or images are added with gtk_toolbar_append_item(), gtk_toolbar_prepend_item(), and gtk_toolbar_insert_item().
+A toolbar can contain instances of a subclass of #GtkToolItem. To add
+a #GtkToolItem to the a toolbar, use gtk_toolbar_insert(). To remove
+an item from the toolbar use gtk_container_remove(). To add a button
+to the toolbar, add an instance of #GtkToolButton.
</para>
<para>
-Any of #GtkToggleButton, #GtkRadioButton, or an arbitrary widget can be added to the toolbar with gtk_toolbar_append_element(), gtk_toolbar_prepend_element(), and gtk_toolbar_insert_element().
+Toolbar items can be visually grouped by adding instances of
+#GtkSeparatorToolItem to the toolbar. If a #GtkSeparatorToolItem has
+the "expand" property set to #TRUE and the "draw" property set to
+#FALSE the effect is to force all following items to the end of the
+toolbar.
</para>
<para>
-Widgets can be visibly grouped by adding gaps between widgets using gtk_toolbar_append_space(), gtk_toolbar_prepend_space(), and gtk_toolbar_insert_space().
+Creating a context menu for the toolbar can be done by connecting to
+the #GtkToolbar::popup-context-menu signal.
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
<variablelist>
+
<varlistentry>
-<term>#GtkToolTips</term>
-<listitem><para>Change the properties of a #GtkToolbar's #GtkTooltips.</para></listitem>
-</varlistentry>
-<varlistentry>
-<term>#GtkTipsQuery</term>
-<listitem><para>Make use of the private tips of toolbar elements.</para></listitem>
+<term>#GtkToolItem</term>
+<listitem><para>Base class of widgets that can be added to a toolbar.</para></listitem>
</varlistentry>
+
</variablelist>
</para>
+<!-- ##### SECTION Stability_Level ##### -->
+
+
+<!-- ##### SECTION Image ##### -->
+
+
<!-- ##### STRUCT GtkToolbar ##### -->
<para>
-<structfield>num_children</structfield> is an integer specifying how many toolbar items the #GtkToolbar contains. <structfield>children</structfield> is a #GList of the child widgets of the toolbar.
-</para>
-<para>
-<structfield>orientation</structfield>
+The #GtkToolbar struct only contains private data and should only be
+accessed through the function described below.
</para>
-<!-- ##### ENUM GtkToolbarChildType ##### -->
+<!-- ##### SIGNAL GtkToolbar::focus-home-or-end ##### -->
<para>
-#GtkToolbarChildType is used to set the type of new elements that are added
-to a #GtkToolbar.
+
</para>
-@GTK_TOOLBAR_CHILD_SPACE: a space in the style of the toolbar's #GtkToolbarSpaceStyle.
-@GTK_TOOLBAR_CHILD_BUTTON: a #GtkButton.
-@GTK_TOOLBAR_CHILD_TOGGLEBUTTON: a #GtkToggleButton.
-@GTK_TOOLBAR_CHILD_RADIOBUTTON: a #GtkRadioButton.
-@GTK_TOOLBAR_CHILD_WIDGET: a standard #GtkWidget.
+@toolbar: the object which received the signal.
+@arg1:
+@Returns:
-<!-- ##### ENUM GtkToolbarSpaceStyle ##### -->
+<!-- ##### SIGNAL GtkToolbar::orientation-changed ##### -->
<para>
</para>
-@GTK_TOOLBAR_SPACE_EMPTY:
-@GTK_TOOLBAR_SPACE_LINE:
+@toolbar: the object which received the signal.
+@orientation: the new #GtkOrientation of the toolbar.
-<!-- ##### STRUCT GtkToolbarChild ##### -->
+<!-- ##### SIGNAL GtkToolbar::popup-context-menu ##### -->
<para>
</para>
-@type:
-@widget:
-@icon:
-@label:
+@toolbar: the object which received the signal.
+@Returns:
+@Returns:
+@Returns:
+@Returns:
-<!-- ##### FUNCTION gtk_toolbar_new ##### -->
+<!-- ##### SIGNAL GtkToolbar::style-changed ##### -->
<para>
-Creates a new toolbar.
-</para>
-@Returns: the newly-created toolbar.
+</para>
+@toolbar:
+@style:
-<!-- ##### FUNCTION gtk_toolbar_append_item ##### -->
+<!-- ##### ARG GtkToolbar:icon-size ##### -->
<para>
-Adds a new button to the end (right or bottom edges) of the given toolbar.
-</para>
-
-@toolbar: a #GtkToolbar.
-@text: give your toolbar button a label.
-@tooltip_text: a string that appears when the user holds the mouse over this item.
-@tooltip_private_text: use with #GtkTipsQuery.
-@icon: a #GtkWidget that should be used as the button's icon.
-@callback: the function to be executed when the button is pressed.
-@user_data: a pointer to any data you wish to be passed to the callback.
-@Returns: the new toolbar item as a #GtkWidget.
+</para>
-<!-- ##### FUNCTION gtk_toolbar_prepend_item ##### -->
+<!-- ##### ARG GtkToolbar:icon-size-set ##### -->
<para>
-Adds a new button to the beginning (top or left edges) of the given toolbar.
+
</para>
-@toolbar: a #GtkToolbar.
-@text: give your toolbar button a label.
-@tooltip_text: a string that appears when the user holds the mouse over this item.
-@tooltip_private_text: use with #GtkTipsQuery.
-@icon: a #GtkWidget that should be used as the button's icon.
-@callback: the function to be executed when the button is pressed.
-@user_data: a pointer to any data you wish to be passed to the callback.
-@Returns: the new toolbar item as a #GtkWidget.
+<!-- ##### ARG GtkToolbar:show-arrow ##### -->
+<para>
+</para>
-<!-- ##### FUNCTION gtk_toolbar_insert_item ##### -->
+<!-- ##### ARG GtkToolbar:toolbar-style ##### -->
<para>
-Inserts a new item into the toolbar. You must specify the position in the toolbar where it will be inserted.
+
</para>
-@toolbar: a #GtkToolbar.
-@text: give your toolbar button a label.
-@tooltip_text: a string that appears when the user holds the mouse over this item.
-@tooltip_private_text: use with #GtkTipsQuery.
-@icon: a #GtkWidget that should be used as the button's icon.
-@callback: the function to be executed when the button is pressed.
-@user_data: a pointer to any data you wish to be passed to the callback.
-@position: the number of widgets to insert this item after.
-@Returns: the new toolbar item as a #GtkWidget.
+<!-- ##### ARG GtkToolbar:expand ##### -->
+<para>
+</para>
-<!-- ##### FUNCTION gtk_toolbar_append_space ##### -->
+<!-- ##### ARG GtkToolbar:homogeneous ##### -->
<para>
-Adds a new space to the end of the toolbar.
+
</para>
-@toolbar: a #GtkToolbar.
+<!-- ##### ARG GtkToolbar:button-relief ##### -->
+<para>
+</para>
-<!-- ##### FUNCTION gtk_toolbar_prepend_space ##### -->
+<!-- ##### ARG GtkToolbar:internal-padding ##### -->
<para>
-Adds a new space to the beginning of the toolbar.
+
</para>
-@toolbar: a #GtkToolbar.
+<!-- ##### ARG GtkToolbar:max-child-expand ##### -->
+<para>
+</para>
-<!-- ##### FUNCTION gtk_toolbar_insert_space ##### -->
+<!-- ##### ARG GtkToolbar:shadow-type ##### -->
<para>
-Inserts a new space in the toolbar at the specified position.
+
</para>
-@toolbar: a #GtkToolbar
-@position: the number of widgets after which a space should be inserted.
+<!-- ##### ARG GtkToolbar:space-size ##### -->
+<para>
+</para>
-<!-- ##### FUNCTION gtk_toolbar_append_element ##### -->
+<!-- ##### ARG GtkToolbar:space-style ##### -->
<para>
-Adds a new element to the end of a toolbar.
+
</para>
+
+<!-- ##### ENUM GtkToolbarChildType ##### -->
<para>
-If @type == %GTK_TOOLBAR_CHILD_WIDGET, @widget is used as the new element.
-If @type == %GTK_TOOLBAR_CHILD_RADIOBUTTON, @widget is used to determine
-the radio group for the new element. In all other cases, @widget must
-be %NULL.
+#GtkToolbarChildType is used to set the type of new elements that are added
+to a #GtkToolbar.
</para>
-@toolbar: a #GtkToolbar.
-@type: a value of type #GtkToolbarChildType that determines what @widget will be.
-@widget: a #GtkWidget, or %NULL.
-@text: the element's label.
-@tooltip_text: the element's tooltip.
-@tooltip_private_text: used for context-sensitive help about this toolbar element.
-@icon: a #GtkWidget that provides pictorial representation of the element's function.
-@callback: the function to be executed when the button is pressed.
-@user_data: any data you wish to pass to the callback.
-@Returns: the new toolbar element as a #GtkWidget.
-
+@GTK_TOOLBAR_CHILD_SPACE: a space in the style of the toolbar's #GtkToolbarSpaceStyle.
+@GTK_TOOLBAR_CHILD_BUTTON: a #GtkButton.
+@GTK_TOOLBAR_CHILD_TOGGLEBUTTON: a #GtkToggleButton.
+@GTK_TOOLBAR_CHILD_RADIOBUTTON: a #GtkRadioButton.
+@GTK_TOOLBAR_CHILD_WIDGET: a standard #GtkWidget.
-<!-- ##### FUNCTION gtk_toolbar_prepend_element ##### -->
-<para>
-Adds a new element to the beginning of a toolbar.
-</para>
+<!-- ##### ENUM GtkToolbarSpaceStyle ##### -->
<para>
-If @type == %GTK_TOOLBAR_CHILD_WIDGET, @widget is used as the new element.
-If @type == %GTK_TOOLBAR_CHILD_RADIOBUTTON, @widget is used to determine
-the radio group for the new element. In all other cases, @widget must
-be %NULL.
-</para>
-@toolbar: a #GtkToolbar.
-@type: a value of type #GtkToolbarChildType that determines what @widget will be.
-@widget: a #GtkWidget, or %NULL
-@text: the element's label.
-@tooltip_text: the element's tooltip.
-@tooltip_private_text: used for context-sensitive help about this toolbar element.
-@icon: a #GtkWidget that provides pictorial representation of the element's function.
-@callback: the function to be executed when the button is pressed.
-@user_data: any data you wish to pass to the callback.
-@Returns: the new toolbar element as a #GtkWidget.
+</para>
+@GTK_TOOLBAR_SPACE_EMPTY:
+@GTK_TOOLBAR_SPACE_LINE:
-<!-- ##### FUNCTION gtk_toolbar_insert_element ##### -->
+<!-- ##### STRUCT GtkToolbarChild ##### -->
<para>
</para>
-@toolbar:
@type:
@widget:
-@text:
-@tooltip_text:
-@tooltip_private_text:
@icon:
-@callback:
-@user_data:
-@position:
-@Returns:
-
+@label:
-<!-- ##### FUNCTION gtk_toolbar_append_widget ##### -->
+<!-- ##### FUNCTION gtk_toolbar_new ##### -->
<para>
</para>
-@toolbar:
-@widget:
-@tooltip_text:
-@tooltip_private_text:
+@void:
+@Returns: the newly-created toolbar.
-<!-- ##### FUNCTION gtk_toolbar_prepend_widget ##### -->
+<!-- ##### FUNCTION gtk_toolbar_insert ##### -->
<para>
</para>
@toolbar:
-@widget:
-@tooltip_text:
-@tooltip_private_text:
+@item:
+@pos:
-<!-- ##### FUNCTION gtk_toolbar_insert_widget ##### -->
+<!-- ##### FUNCTION gtk_toolbar_get_item_index ##### -->
<para>
</para>
@toolbar:
-@widget:
-@tooltip_text:
-@tooltip_private_text:
-@position:
-
-
-<!-- ##### FUNCTION gtk_toolbar_set_orientation ##### -->
-<para>
-Sets whether a toolbar should appear horizontally or vertically.
-</para>
-
-@toolbar: a #GtkToolbar.
-@orientation: a new #GtkOrientation.
-
-
-<!-- ##### FUNCTION gtk_toolbar_set_style ##### -->
-<para>
-Alters the view of @toolbar to display either icons only, text only, or both.
-</para>
-
-@toolbar: a #GtkToolbar.
-@style: the new style for @toolbar.
-
-
-<!-- ##### FUNCTION gtk_toolbar_set_tooltips ##### -->
-<para>
-Sets if the tooltips of a toolbar should be active or not.
-</para>
-
-@toolbar: a #GtkToolbar.
-@enable: set to %FALSE to disable the tooltips, or %TRUE to enable them.
+@item:
+@Returns:
-<!-- ##### FUNCTION gtk_toolbar_insert_stock ##### -->
+<!-- ##### FUNCTION gtk_toolbar_get_n_items ##### -->
<para>
</para>
@toolbar:
-@stock_id:
-@tooltip_text:
-@tooltip_private_text:
-@callback:
-@user_data:
-@position:
@Returns:
-<!-- ##### FUNCTION gtk_toolbar_set_icon_size ##### -->
+<!-- ##### FUNCTION gtk_toolbar_get_nth_item ##### -->
<para>
</para>
@toolbar:
-@icon_size:
+@n:
+@Returns:
-<!-- ##### FUNCTION gtk_toolbar_get_icon_size ##### -->
+<!-- ##### FUNCTION gtk_toolbar_get_drop_index ##### -->
<para>
</para>
@toolbar:
+@x:
+@y:
@Returns:
-<!-- ##### FUNCTION gtk_toolbar_get_orientation ##### -->
+<!-- ##### FUNCTION gtk_toolbar_set_drop_highlight_item ##### -->
<para>
</para>
@toolbar:
-@Returns:
+@tool_item:
+@index_:
-<!-- ##### FUNCTION gtk_toolbar_get_style ##### -->
+<!-- ##### FUNCTION gtk_toolbar_set_show_arrow ##### -->
<para>
</para>
@toolbar:
-@Returns:
+@show_arrow:
-<!-- ##### FUNCTION gtk_toolbar_get_tooltips ##### -->
+<!-- ##### FUNCTION gtk_toolbar_unset_icon_size ##### -->
<para>
</para>
@toolbar:
-@Returns:
-<!-- ##### FUNCTION gtk_toolbar_remove_space ##### -->
+<!-- ##### FUNCTION gtk_toolbar_get_show_arrow ##### -->
<para>
</para>
@toolbar:
-@position:
+@Returns:
-<!-- ##### FUNCTION gtk_toolbar_unset_icon_size ##### -->
+<!-- ##### FUNCTION gtk_toolbar_get_style ##### -->
<para>
</para>
@toolbar:
+@Returns:
-<!-- ##### FUNCTION gtk_toolbar_unset_style ##### -->
+<!-- ##### FUNCTION gtk_toolbar_get_icon_size ##### -->
<para>
</para>
@toolbar:
+@Returns:
-<!-- ##### SIGNAL GtkToolbar::orientation-changed ##### -->
+<!-- ##### FUNCTION gtk_toolbar_get_relief_style ##### -->
<para>
-Should be used if you wish to perform an action when the orientation of a toolbar is changed.
-</para>
-@toolbar: the object which received the signal.
-@orientation: the new #GtkOrientation of the toolbar.
-
-<!-- ##### SIGNAL GtkToolbar::style-changed ##### -->
-<para>
-Should be used if you wish to perform an action when ever the style of a toolbar is adjusted. For example, this would be a useful signal to connect to if you want to display more items on the toolbar when it is in icon-only mode; each item takes less space on the bar.
</para>
-@toolbar: the object which received the signal.
-@style: the new #GtkToolbarStyle of @toolbar.
-
-<!-- ##### ARG GtkToolbar:orientation ##### -->
-<para>
+@toolbar:
+@Returns:
-</para>
-<!-- ##### ARG GtkToolbar:toolbar-style ##### -->
+<!-- ##### FUNCTION gtk_toolbar_set_style ##### -->
<para>
</para>
-<!-- ##### ARG GtkToolbar:button-relief ##### -->
-<para>
+@toolbar:
+@style:
-</para>
-<!-- ##### ARG GtkToolbar:space-size ##### -->
+<!-- ##### FUNCTION gtk_toolbar_set_icon_size ##### -->
<para>
</para>
-<!-- ##### ARG GtkToolbar:space-style ##### -->
-<para>
+@toolbar:
+@icon_size:
-</para>
-<!-- ##### ARG GtkToolbar:internal-padding ##### -->
+<!-- ##### FUNCTION gtk_toolbar_unset_style ##### -->
<para>
</para>
-<!-- ##### ARG GtkToolbar:shadow-type ##### -->
-<para>
+@toolbar:
-</para>