-----------------------------------------------------------------------
-- GtkAda - Ada95 binding for Gtk+/Gnome --
-- --
-- Copyright (C) 2000-2009, AdaCore --
-- --
-- This library is free software; you can redistribute it and/or --
-- modify it under the terms of the GNU General Public --
-- License as published by the Free Software Foundation; either --
-- version 2 of the License, or (at your option) any later version. --
-- --
-- This library is distributed in the hope that it will be useful, --
-- but WITHOUT ANY WARRANTY; without even the implied warranty of --
-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --
-- General Public License for more details. --
-- --
-- You should have received a copy of the GNU General Public --
-- License along with this library; if not, write to the --
-- Free Software Foundation, Inc., 59 Temple Place - Suite 330, --
-- Boston, MA 02111-1307, USA. --
-- --
-- --
-- --
-- --
-- --
-- --
-- --
-----------------------------------------------------------------------
--
-- 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.
--
-- 2.8.17
-- create_tooltips.adb
with Glib;
with Gtk.Enums;
with Gtk.Object;
with Gtk.Widget;
package Gtk.Tooltips is
type Gtk_Tooltips_Record is new Gtk.Object.Gtk_Object_Record with private;
type Gtk_Tooltips is access all Gtk_Tooltips_Record'Class;
--
type Tooltips_Data
(Text_Length : Natural; Private_Length : Natural) is
record
Tooltips : Gtk_Tooltips; -- the group of the tooltip
Widget : Gtk.Widget.Gtk_Widget; -- the widget to which it applies
Text : UTF8_String (1 .. Text_Length); -- the text of the tooltip
Text_Private : UTF8_String (1 .. Private_Length); -- the private text
end record;
--
procedure Gtk_New (Widget : out Gtk_Tooltips);
-- Create a new group of tooltips.
procedure Initialize (Widget : access Gtk_Tooltips_Record'Class);
-- Internal initialization function.
-- See the section "Creating your own widgets" in the documentation.
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.
-- From now on, when the mouse rests over a widget for a short period of
-- time, the help text is automatically displayed.
procedure Disable (Tooltips : access Gtk_Tooltips_Record);
-- Disable all the tooptips in the group.
-- From now on, no tooltips in this group will appear, unless they are
-- re-enabled.
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.
-- The message that appears in the tooltip is Tip_Text, and the tooltip
-- belongs to the group Tooltips.
-- Tip_Private contains more information, that can be displayed by a
-- Gtk_Tips_Query widget through the "widget_selected" signal.
-- In most cases, Tip_Private should simply keep its default empty value.
function Get_Data
(Widget : access Gtk.Widget.Gtk_Widget_Record'Class) return Tooltips_Data;
-- Return the tooltip data associated with the Widget.
-- If there is none, the two text fields in the returned structure have
-- a length 0.
procedure Force_Window (Widget : access Gtk_Tooltips_Record);
-- Make sure the window in which the tooltips will be displayed is
-- created.
-- This is useful if you want to modify some characteristics of that
-- window.
procedure Set_Markup
(Tooltips : access Gtk_Tooltips_Record;
Text : UTF8_String);
-- Sets the text of the tooltip to be markup, which is marked up with the
-- Pango text markup language. If markup is empty string, the label will be
-- hidden.
procedure Set_Icon_From_Stock
(Tooltips : access Gtk_Tooltips_Record;
Stock_Id : 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 emtry string, the image will be hidden.
-----------------
-- Obsolescent --
-----------------
-- All subprograms below are now obsolescent in gtk+. They might be removed
-- from future versions of gtk+ (and therefore GtkAda).
-- To find out whether your code uses any of these, we recommend compiling
-- with the -gnatwj switch
--
procedure Set_Delay
(Tooltips : access Gtk_Tooltips_Record;
Duration : Guint := 500);
pragma Obsolescent; -- Set_Delay
-- Set the delay between the user moving the mouse over a widget and the
-- text appearing. Duration is in milli-seconds.
--
----------------
-- Properties --
----------------
--
-- The following properties are defined for this widget. See
-- Glib.Properties for more information on properties.
--
--
-------------
-- Signals --
-------------
--
-- The following new signals are defined for this widget:
--
private
type Gtk_Tooltips_Record is
new Gtk.Object.Gtk_Object_Record with null record;
pragma Import (C, Get_Type, "gtk_tooltips_get_type");
end Gtk.Tooltips;
--
-- ../examples/documentation/tooltips.adb
--
-- No binding: gtk_tooltips_get_info_from_tip_window