краткое описание#include <gtk/gtk.h> gtktooltips; gtktooltipsdata; gtktooltips* gtk_tooltips_new (void); void gtk_tooltips_enable (gtktooltips *tooltips); void gtk_tooltips_disable (gtktooltips *tooltips); void gtk_tooltips_set_delay (gtktooltips *tooltips, guint delay); void gtk_tooltips_set_tip (gtktooltips *tooltips, gtkwidget *widget, const gchar *tip_text, const gchar *tip_private); gtktooltipsdata* gtk_tooltips_data_get (gtkwidget *widget); void gtk_tooltips_force_window (gtktooltips *tooltips); gboolean gtk_tooltips_get_info_from_tip_window (gtkwindow *tip_window, gtktooltips **tooltips, gtkwidget **current_widget); иерархия объектовgobject +----ginitiallyunowned +----gtkobject +----gtktooltips описаниеподсказки являются сообщениями которые появляются рядом с виджетом, когда указатель мыши на короткое время фиксируется над ним. они очень полезны для добавления более подробного описания к кнопкам на панели инструментов. индивидуальная подсказка принадлежит
группе подсказок. группа создаётся с
помощью вызова продолжительность времени фиксации
указателя мыши над виджетом, перед
появлением подсказки, может изменяться
с помощью для назначения подсказки для
определенного gtkwidget,
используйте примечаниеподсказки
могут устанавливаться только для
виджетов имеющих собственное окно x
и получают события входа и выхода. для
проверки имеет ли виджет собственное
окно используйте по умолчанию появление подсказок в программе определяется текущемй темой gtk+, которую выбрал пользователь. информация о подсказке (если есть)
связанной с произвольным виджетом может
быть получена используя пример 2. добавление подсказок к кнопкам. gtkwidget *load_button, *save_button, *hbox; gtktooltips *button_bar_tips; button_bar_tips = gtk_tooltips_new (); /* создаём кнопки и упаковываем их в gtkhbox */ hbox = gtk_hbox_new (true, 2); load_button = gtk_button_new_with_label ("load a file"); gtk_box_pack_start (gtk_box (hbox), load_button, true, true, 2); gtk_widget_show (load_button); save_button = gtk_button_new_with_label ("save a file"); gtk_box_pack_start (gtk_box (hbox), save_button, true, true, 2); gtk_widget_show (save_button); gtk_widget_show (hbox); /* добавляем подсказки */ gtk_tooltips_set_tip (gtk_tooltips (button_bar_tips), load_button, "load a new document into this window", "requests the filename of a document. this will then be loaded into the current window, replacing the contents of whatever is already loaded."); gtk_tooltips_set_tip (gtk_tooltips (button_bar_tips), save_button, "saves the current document to a file", "if you have saved the document previously, then the new version will be saved over the old one. otherwise, you will be prompted for a filename."); деталиgtktooltipstypedef struct _gtktooltips gtktooltips; содержит информацию о группе подсказок. поля должны изменяться специальными функциями. gtktooltipsdatatypedef struct {
gtktooltips *tooltips;
gtkwidget *widget;
gchar *tip_text;
gchar *tip_private;
} gtktooltipsdata;
gtk_tooltips_new ()gtktooltips* gtk_tooltips_new (void); создаёт новую группу подсказок. эта функция инициализирует gtktooltips структуру. не имея ни одной такой структуры вы не сможете добавлять подсказки к вашему приложению.
gtk_tooltips_enable ()void gtk_tooltips_enable (gtktooltips *tooltips); позволяет пользователю увидеть ваши подсказки, поскольку они управляются вашим приложением.
gtk_tooltips_disable ()void gtk_tooltips_disable (gtktooltips *tooltips);
делает все подсказки в
gtk_tooltips_set_delay ()void gtk_tooltips_set_delay (gtktooltips *tooltips, guint delay); внимание
устанавливает промежуток времени после которого появляется подсказка для виджета.
gtk_tooltips_set_tip ()void gtk_tooltips_set_tip (gtktooltips *tooltips, gtkwidget *widget, const gchar *tip_text, const gchar *tip_private);
добавляет подсказку содержащую сообщение
gtk_tooltips_data_get ()gtktooltipsdata* gtk_tooltips_data_get (gtkwidget *widget); определяет любую gtktooltipsdata предварительно связанную с полученным виджетом.
gtk_tooltips_force_window ()void gtk_tooltips_force_window (gtktooltips *tooltips);
гарантирует создание окна которое
используется для отображения приложение никогда не должно вызывать эту функцию, так как gtk+ заботится об этом.
gtk_tooltips_get_info_from_tip_window ()gboolean gtk_tooltips_get_info_from_tip_window (gtkwindow *tip_window, gtktooltips **tooltips, gtkwidget **current_widget); определяет подсказки и связанные с ними виджеты, используя окно в котором они отображаются. эта функция главным образом для технологии доступности; приложения мало используют это.
начиная с версии 2.4 смотрите также
|