Detail

Tooltip belongs to the new tooltips API that was introduced in Gtk+
2.12 and which deprecates the old Tooltips API.

Basic tooltips can be realized simply by using widgetTooltipText or
widgetTooltipMarkup without any explicit tooltip object.

When you need a tooltip with a little more fancy contents, like adding an
image, or you want the tooltip to have different contents per TreeView row
or cell, you will have to do a little more work:

Set the hasTooltip property to True, this will make GTK+ monitor the widget for motion and
related events which are needed to determine when and where to show a tooltip.

Connect to the queryTooltip signal. This signal will be emitted when a tooltip is supposed to
be shown. One of the arguments passed to the signal handler is a Tooltip object. This is the
object that we are about to display as a tooltip, and can be manipulated in your callback using
functions like tooltipSetIcon. There are functions for setting the tooltip's markup,
setting an image from a stock icon, or even putting in a custom widget.

Return True from your query-tooltip handler. This causes the tooltip to be show. If you return
False, it will not be shown.

In the probably rare case where you want to have even more control over the tooltip that is about to
be shown, you can set your own Window which will be used as tooltip window. This works as
follows:

Set hasTooltip and connect to queryTooltip as before.

Use widgetSetTooltipWindow to set a Window created by you as tooltip window.

In the queryTooltip callback you can access your window using widgetGetTooltipWindow
and manipulate as you wish. The semantics of the return value are exactly as before, return True
to show the window, False to not show it.

Replaces the widget packed into the tooltip with customWidget.
customWidget does not get destroyed when the tooltip goes away. By default
a box with a Image and Label is embedded in the tooltip, which can be
configured using tooltipSetMarkup and tooltipSetIcon.

Triggers a new tooltip query on display, in order to update the current
visible tooltip, or to show/hide the current tooltip. This function is
useful to call when, for example, the state of the widget changed by a key
press.