Tooltips are the messages that appear next to a widget when the mouse pointer is held over it for a short amount of time. They are especially helpful for adding more verbose descriptions of things such as buttons in a toolbar.
</para>
<para>
An individual tooltip belongs to a group of tooltips. A group is created with a call to gtk_tooltips_new(). Every tooltip in the group can then be turned off with a call to gtk_tooltips_disable() and enabled with gtk_tooltips_enable().
</para>
<para>
The length of time the user must keep the mouse over a widget before the tip is shown, can be altered with gtk_tooltips_set_delay(). This is set on a 'per group of tooltips' basis.
</para>
<para>
To assign a tip to a particular #GtkWidget, gtk_tooltips_set_tip() is used.
<listitem><para>Create groups of widgets with their own tooltips.</para></listitem>
</varlistentry>
<varlistentry>
<term>#GtkTipsQuery</term>
<listitem><para>Query tooltips to create context-sensitive help.</para></listitem>
</varlistentry>
</variablelist>
</para>
<!-- ##### STRUCT GtkTooltips ##### -->
<para>Holds information about a group of tooltips. Fields should be changed using the functions provided, rather than directly accessing the struct's members.
</para>
<!-- ##### STRUCT GtkTooltipsData ##### -->
<para>
<structfield>tooltips</structfield> is the #GtkTooltips group that this tooltip belongs to. <structfield>widget</structfield> is the #GtkWidget that this tooltip data is associated with. <structfield>tip_text</structfield> is a string containing the tooltip message itself.</para>
<para>
<structfield>tip_private</structfield> is a string that is not shown as the default tooltip. Instead, this message may be more informative and go towards forming a context-sensitive help system for your application. (FIXME: how to actually "switch on" private tips?)
</para>
@tooltips:
@widget:
@tip_text:
@tip_private:
<!-- ##### FUNCTION gtk_tooltips_new ##### -->
<para>
Creates an empty group of tooltips. This function initialises a #GtkTooltips structure. Without at least one such structure, you can not add tips to your application.
</para>
@Returns: a new #GtkTooltips group for you to use.
<!-- ##### FUNCTION gtk_tooltips_enable ##### -->
<para>
Allows the user to see your tooltips as they navigate your application.
</para>
@tooltips: a #GtkTooltips.
<!-- ##### FUNCTION gtk_tooltips_disable ##### -->
<para>
Causes all tooltips in @tooltips to become inactive. Any widgets that have tips associated with that group will no longer display their tips until they are enabled again with gtk_tooltips_enable().
</para>
@tooltips: a #GtkTooltips.
<!-- ##### FUNCTION gtk_tooltips_set_delay ##### -->
<para>
Sets the time between the user moving the mouse over a widget and the widget's tooltip appearing.
</para>
@tooltips: a #GtkTooltips.
@delay: an integer value representing seconds (FIXME: double-check this).
<!-- ##### FUNCTION gtk_tooltips_set_tip ##### -->
<para>
Adds a tooltip containing the message @tip_text to the specified #GtkWidget.
</para>
@tooltips: a #GtkTooltips.
@widget: the #GtkWidget you wish to associate the tip with.
@tip_text: a string containing the tip itself.
@tip_private: a string of any further information that may be useful if the user gets stuck.
<!-- ##### FUNCTION gtk_tooltips_data_get ##### -->
<para>
Retrieves any #GtkTooltipsData previously associated with the given widget.
</para>
@widget: a #GtkWidget.
@Returns: a #GtkTooltipsData struct, or NULL if the widget has no tooltip.
<!-- ##### FUNCTION gtk_tooltips_force_window ##### -->
<para>
Soon as I play with this, I'll report what it does.