Tooltips are the small text windows that popup when the mouse rests over a widget, and that provide a quick help for the user.
In GtkAda, all tooltips belong to a group (a Gtk_Tooltips). All the individual tooltips in a group can be disabled or enabled at the same time. Likewise, the colors and style of a tooltip can be set on a group basis.
See the example at the end for how to change the default colors used for tooltips.
Widget Hierarchy |
|---|
GObject (see section Package Glib.Object) Gtk_Object (see section Package Gtk.Object) \___ Gtk_Tooltips (see section Package Gtk.Tooltips) |
Subprograms |
|---|
procedure Gtk_New (Widget : out Gtk_Tooltips); | ||
|
Create a new group of tooltips.
| ||
function Get_Type return Glib.GType; | ||
|
Return the internal value associated with a Gtk_Tooltips.
| ||
procedure Enable (Tooltips : access Gtk_Tooltips_Record); | ||
|
Enable all the tooltips in the group. | ||
procedure Disable (Tooltips : access Gtk_Tooltips_Record); | ||
|
Disable all the tooptips in the group. | ||
procedure Set_Tip (Tooltips : access Gtk_Tooltips_Record; Widget : access Gtk.Widget.Gtk_Widget_Record'Class; Tip_Text : UTF8_String; Tip_Private : UTF8_String := ""); | ||
|
Add a new tooltip to Widget. | ||
function Get_Data (Widget : access Gtk.Widget.Gtk_Widget_Record'Class) return Tooltips_Data; | ||
|
Return the tooltip data associated with the Widget. | ||
procedure Force_Window (Widget : access Gtk_Tooltips_Record); | ||
|
Make sure the window in which the tooltips will be displayed is | ||
Example |
|---|
-- This example demonstrates how you can change the color scheme used
-- for tooltips.
-- This is of course done through styles. However, you can not directly
-- associate a Gtk_Tooltips with a style, so you have to do the following.
-- Note also that this choice should probably left to the user, who can
-- modify it through a RC file that contains the following:
-- style "postie"
-- {
-- bg[NORMAL]={1.0, 0.93, 0.22}
-- }
-- widget "gtk-tooltips*" style "postie"
with Gtk.Tooltips, Gtk.Style, Gtk.Enums, Gtk.Widget, Gdk.Color;
use Gtk.Tooltips, Gtk.Style, Gtk.Enums, Gtk.Widget, Gdk.Color;
procedure Tooltips is
Style : Gtk_Style;
Tips : Gtk_Tooltips;
Color : Gdk_Color;
begin
Gtk_New (Style);
-- blue foreground
Set_Rgb (Color, 255, 255, 65535);
Alloc (Get_Default_Colormap, Color);
Set_Foreground (Style, State_Normal, Color);
-- green background
Set_Rgb (Color, 255, 65535, 255);
Alloc (Get_Default_Colormap, Color);
Set_Background (Style, State_Normal, Color);
Gtk_New (Tips);
Force_Window (Tips);
end Tooltips;