Gtk.Tooltip

Entities

Tagged Types

Access Types

Subprograms

Description

Basic tooltips can be realized simply by using Gtk.Widget.Set_Tooltip_Text or Gtk.Widget.Set_Tooltip_Markup 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 Gtk.Tree_View.Gtk_Tree_View row or cell, you will have to do a little more work:

make GTK+ monitor the widget for motion and related events which are needed to determine when and where to show a tooltip.

will be emitted when a tooltip is supposed to be shown. One of the arguments passed to the signal handler is a GtkTooltip object. This is the object that we are about to display as a tooltip, and can be manipulated in your callback using functions like Gtk.Tooltip.Set_Icon. There are functions for setting the tooltip's markup, setting an image from a named 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 Gtk.Window.Gtk_Window which will be used as tooltip window. This works as follows:

Gtk.Widget.Gtk_Widget::query-tooltip as before. Use Gtk.Widget.Set_Tooltip_Window to set a Gtk.Window.Gtk_Window created by you as tooltip window.

window using Gtk.Widget.Get_Tooltip_Window 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.

Get_Type

function Get_Type return Glib.GType
Return Value

Gtk_Tooltip

type Gtk_Tooltip is access all Gtk_Tooltip_Record'Class;

Gtk_Tooltip_Record

type Gtk_Tooltip_Record is new GObject_Record with null record;

Set_Custom

procedure Set_Custom
   (Self          : not null access Gtk_Tooltip_Record;
    Custom_Widget : access Gtk.Widget.Gtk_Widget_Record'Class)

Replaces the widget packed into the tooltip with Custom_Widget. Custom_Widget does not get destroyed when the tooltip goes away. By default a box with a Gtk.Image.Gtk_Image and Gtk.Label.Gtk_Label is embedded in the tooltip, which can be configured using Gtk.Tooltip.Set_Markup and Gtk.Tooltip.Set_Icon. Since: gtk+ 2.12

Parameters
Self
Custom_Widget

a Gtk.Widget.Gtk_Widget, or null to unset the old custom widget.

Set_Icon

procedure Set_Icon
   (Self   : not null access Gtk_Tooltip_Record;
    Pixbuf : access Gdk.Pixbuf.Gdk_Pixbuf_Record'Class)

Sets the icon of the tooltip (which is in front of the text) to be Pixbuf. If Pixbuf is null, the image will be hidden. Since: gtk+ 2.12

Parameters
Self
Pixbuf

a Gdk.Pixbuf.Gdk_Pixbuf, or null

Set_Icon_From_Gicon

procedure Set_Icon_From_Gicon
   (Self   : not null access Gtk_Tooltip_Record;
    G_Icon : Glib.G_Icon.G_Icon;
    Size   : Gtk.Enums.Gtk_Icon_Size)

Sets the icon of the tooltip (which is in front of the text) to be the icon indicated by Gicon with the size indicated by Size. If Gicon is null, the image will be hidden. Since: gtk+ 2.20

Parameters
Self
G_Icon

a Glib.G_Icon.G_Icon representing the icon, or null

Size

a stock icon size (Gtk.Enums.Gtk_Icon_Size)

Set_Icon_From_Icon_Name

procedure Set_Icon_From_Icon_Name
   (Self      : not null access Gtk_Tooltip_Record;
    Icon_Name : UTF8_String := "";
    Size      : Gtk.Enums.Gtk_Icon_Size)

Sets the icon of the tooltip (which is in front of the text) to be the icon indicated by Icon_Name with the size indicated by Size. If Icon_Name is null, the image will be hidden. Since: gtk+ 2.14

Parameters
Self
Icon_Name

an icon name, or null

Size

a stock icon size (Gtk.Enums.Gtk_Icon_Size)

Set_Icon_From_Stock

procedure Set_Icon_From_Stock
   (Self     : not null access Gtk_Tooltip_Record;
    Stock_Id : UTF8_String := "";
    Size     : Gtk.Enums.Gtk_Icon_Size)

Sets the icon of the tooltip (which is in front of the text) to be the stock item indicated by Stock_Id with the size indicated by Size. If Stock_Id is null, the image will be hidden. Since: gtk+ 2.12 Deprecated since 3.10, 1

Parameters
Self
Stock_Id

a stock id, or null

Size

a stock icon size (Gtk.Enums.Gtk_Icon_Size)

Set_Markup

procedure Set_Markup
   (Self   : not null access Gtk_Tooltip_Record;
    Markup : UTF8_String := "")

Sets the text of the tooltip to be Markup, which is marked up with the [Pango text markup language][PangoMarkupFormat]. If Markup is null, the label will be hidden. Since: gtk+ 2.12

Parameters
Self
Markup

a markup string (see [Pango markup format][PangoMarkupFormat]) or null

Set_Text

procedure Set_Text
   (Self : not null access Gtk_Tooltip_Record;
    Text : UTF8_String := "")

Sets the text of the tooltip to be Text. If Text is null, the label will be hidden. See also Gtk.Tooltip.Set_Markup. Since: gtk+ 2.12

Parameters
Self
Text

a text string or null

Set_Tip_Area

procedure Set_Tip_Area
   (Self : not null access Gtk_Tooltip_Record;
    Rect : Gdk.Rectangle.Gdk_Rectangle)

Sets the area of the widget, where the contents of this tooltip apply, to be Rect (in widget coordinates). This is especially useful for properly setting tooltips on Gtk.Tree_View.Gtk_Tree_View rows and cells, Gtk_Icon_Views, etc. For setting tooltips on Gtk.Tree_View.Gtk_Tree_View, please refer to the convenience functions for this: Gtk.Tree_View.Set_Tooltip_Row and Gtk.Tree_View.Set_Tooltip_Cell. Since: gtk+ 2.12

Parameters
Self
Rect

a Gdk.Rectangle.Gdk_Rectangle

Trigger_Tooltip_Query

procedure Trigger_Tooltip_Query
   (Display : not null access Gdk.Display.Gdk_Display_Record'Class)

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. Since: gtk+ 2.12

Parameters
Display

a Gdk.Display.Gdk_Display