краткое описание#include <gtk/gtk.h> gtktoolbar; enum gtktoolbarchildtype; enum gtktoolbarspacestyle; gtktoolbarchild; gtkwidget* gtk_toolbar_new (void); void gtk_toolbar_insert (gtktoolbar *toolbar, gtktoolitem *item, gint pos); gint gtk_toolbar_get_item_index (gtktoolbar *toolbar, gtktoolitem *item); gint gtk_toolbar_get_n_items (gtktoolbar *toolbar); gtktoolitem* gtk_toolbar_get_nth_item (gtktoolbar *toolbar, gint n); gint gtk_toolbar_get_drop_index (gtktoolbar *toolbar, gint x, gint y); void gtk_toolbar_set_drop_highlight_item (gtktoolbar *toolbar, gtktoolitem *tool_item, gint index_); void gtk_toolbar_set_show_arrow (gtktoolbar *toolbar, gboolean show_arrow); void gtk_toolbar_set_orientation (gtktoolbar *toolbar, gtkorientation orientation); void gtk_toolbar_set_tooltips (gtktoolbar *toolbar, gboolean enable); void gtk_toolbar_unset_icon_size (gtktoolbar *toolbar); gboolean gtk_toolbar_get_show_arrow (gtktoolbar *toolbar); gtkorientation gtk_toolbar_get_orientation (gtktoolbar *toolbar); gtktoolbarstyle gtk_toolbar_get_style (gtktoolbar *toolbar); gtkiconsize gtk_toolbar_get_icon_size (gtktoolbar *toolbar); gboolean gtk_toolbar_get_tooltips (gtktoolbar *toolbar); gtkreliefstyle gtk_toolbar_get_relief_style (gtktoolbar *toolbar); gtkwidget* gtk_toolbar_append_item (gtktoolbar *toolbar, const char *text, const char *tooltip_text, const char *tooltip_private_text, gtkwidget *icon, gtksignalfunc callback, gpointer user_data); gtkwidget* gtk_toolbar_prepend_item (gtktoolbar *toolbar, const char *text, const char *tooltip_text, const char *tooltip_private_text, gtkwidget *icon, gtksignalfunc callback, gpointer user_data); gtkwidget* gtk_toolbar_insert_item (gtktoolbar *toolbar, const char *text, const char *tooltip_text, const char *tooltip_private_text, gtkwidget *icon, gtksignalfunc callback, gpointer user_data, gint position); void gtk_toolbar_append_space (gtktoolbar *toolbar); void gtk_toolbar_prepend_space (gtktoolbar *toolbar); void gtk_toolbar_insert_space (gtktoolbar *toolbar, gint position); gtkwidget* gtk_toolbar_append_element (gtktoolbar *toolbar, gtktoolbarchildtype type, gtkwidget *widget, const char *text, const char *tooltip_text, const char *tooltip_private_text, gtkwidget *icon, gtksignalfunc callback, gpointer user_data); gtkwidget* gtk_toolbar_prepend_element (gtktoolbar *toolbar, gtktoolbarchildtype type, gtkwidget *widget, const char *text, const char *tooltip_text, const char *tooltip_private_text, gtkwidget *icon, gtksignalfunc callback, gpointer user_data); gtkwidget* gtk_toolbar_insert_element (gtktoolbar *toolbar, gtktoolbarchildtype type, gtkwidget *widget, const char *text, const char *tooltip_text, const char *tooltip_private_text, gtkwidget *icon, gtksignalfunc callback, gpointer user_data, gint position); void gtk_toolbar_append_widget (gtktoolbar *toolbar, gtkwidget *widget, const char *tooltip_text, const char *tooltip_private_text); void gtk_toolbar_prepend_widget (gtktoolbar *toolbar, gtkwidget *widget, const char *tooltip_text, const char *tooltip_private_text); void gtk_toolbar_insert_widget (gtktoolbar *toolbar, gtkwidget *widget, const char *tooltip_text, const char *tooltip_private_text, gint position); void gtk_toolbar_set_style (gtktoolbar *toolbar, gtktoolbarstyle style); gtkwidget* gtk_toolbar_insert_stock (gtktoolbar *toolbar, const gchar *stock_id, const char *tooltip_text, const char *tooltip_private_text, gtksignalfunc callback, gpointer user_data, gint position); void gtk_toolbar_set_icon_size (gtktoolbar *toolbar, gtkiconsize icon_size); void gtk_toolbar_remove_space (gtktoolbar *toolbar, gint position); void gtk_toolbar_unset_style (gtktoolbar *toolbar); иерархия объектовgobject +----ginitiallyunowned +----gtkobject +----gtkwidget +----gtkcontainer +----gtktoolbar осуществляемые интерфейсыgtktoolbar осуществляет atkimplementoriface. свойства"icon-size" gtkiconsize : read / write "icon-size-set" gboolean : read / write "orientation" gtkorientation : read / write "show-arrow" gboolean : read / write "toolbar-style" gtktoolbarstyle : read / write "tooltips" gboolean : read / write дочерние свойства"expand" gboolean : read / write "homogeneous" gboolean : read / write свойства стиля"button-relief" gtkreliefstyle : read "internal-padding" gint : read "max-child-expand" gint : read "shadow-type" gtkshadowtype : read "space-size" gint : read "space-style" gtktoolbarspacestyle : read сигналы"focus-home-or-end" gboolean user_function (gtktoolbar *toolbar, gboolean focus_home, gpointer user_data) : run last / action "move-focus" gboolean user_function (gtktoolbar *toolbar, gtkdirectiontype *dir, gpointer user_data) : run last / action "orientation-changed" void user_function (gtktoolbar *toolbar, gtkorientation orientation, gpointer user_data) : run first "popup-context-menu" gboolean user_function (gtktoolbar *toolbar, gint x, gint y, gint button, gpointer user_data) : run last "style-changed" void user_function (gtktoolbar *toolbar, gtktoolbarstyle style, gpointer user_data) : run first описаниепанель инструментов создаётся с помощью вызова gtk_toolbar_new(). панель инструментов содержит образцы подкласса gtktoolitem. для добавления gtktoolitem к панели инструментов, используйте gtk_toolbar_insert(). для удаления пунктов из панели инструментов используйте gtk_container_remove(). для добавления кнопки к панели инструментов, добавляется образец gtktoolbutton. пункты панели инструментов могут быть визуально сгруппированы добавлением образца gtkseparatortoolitem к панели инструментов. если gtkseparatortoolitem имеет "expand" свойство установленное в true и свойство "draw" установленное в false , то все последующие пункты помещаются в конец панели инструментов. создание контекстного меню в панели инструментов может быть выполнено вызовом сигнала gtktoolbar::popup-context-menu. деталиgtktoolbartypedef struct {
gint num_children;
glist *children;
gtkorientation orientation;
gtktoolbarstyle style;
gtkiconsize icon_size;
gtktooltips *tooltips;
} gtktoolbar; gtktoolbar структура содержит только закрытые данные доступ к которым должен осуществляеться с помощью нижеприведенных функций. enum gtktoolbarchildtypetypedef enum { gtk_toolbar_child_space, gtk_toolbar_child_button, gtk_toolbar_child_togglebutton, gtk_toolbar_child_radiobutton, gtk_toolbar_child_widget } gtktoolbarchildtype; внимание
gtktoolbarchildtype используется для установки типа нового элемента добавляемого к gtktoolbar.
enum gtktoolbarspacestyletypedef enum { gtk_toolbar_space_empty, gtk_toolbar_space_line } gtktoolbarspacestyle; gtktoolbarchildtypedef struct {
gtktoolbarchildtype type;
gtkwidget *widget;
gtkwidget *icon;
gtkwidget *label;
} gtktoolbarchild; внимание
gtk_toolbar_new ()gtkwidget* gtk_toolbar_new (void); создаёт новую панель инструментов.
gtk_toolbar_insert ()void gtk_toolbar_insert (gtktoolbar *toolbar, gtktoolitem *item, gint pos);
вставляет gtktoolitem в
панель инструментов в позицию
начиная с версии 2.4 gtk_toolbar_get_item_index ()gint gtk_toolbar_get_item_index (gtktoolbar *toolbar, gtktoolitem *item);
возвращает позицию
начиная с версии 2.4 gtk_toolbar_get_n_items ()gint gtk_toolbar_get_n_items (gtktoolbar *toolbar); возвращает количество пунктов на панели.
начиная с версии 2.4 gtk_toolbar_get_nth_item ()gtktoolitem* gtk_toolbar_get_nth_item (gtktoolbar *toolbar, gint n);
возвращает
начиная с версии 2.4 gtk_toolbar_get_drop_index ()gint gtk_toolbar_get_drop_index (gtktoolbar *toolbar, gint x, gint y);
возвращает соответствующую позицию
для указанной точки на панели
начиная с версии 2.4 gtk_toolbar_set_drop_highlight_item ()void gtk_toolbar_set_drop_highlight_item (gtktoolbar *toolbar, gtktoolitem *tool_item, gint index_);
подсвечивает
начиная с версии 2.4 gtk_toolbar_set_show_arrow ()void gtk_toolbar_set_show_arrow (gtktoolbar *toolbar, gboolean show_arrow);
устанавливает показывать ли меню
переполнения когда
начиная с версии 2.4 gtk_toolbar_set_orientation ()void gtk_toolbar_set_orientation (gtktoolbar *toolbar, gtkorientation orientation); устанавливает горизонтальную или вертикальную ориентацию панели.
gtk_toolbar_set_tooltips ()void gtk_toolbar_set_tooltips (gtktoolbar *toolbar, gboolean enable); устанавливает включены ли подсказки на панели инструментов.
gtk_toolbar_unset_icon_size ()void gtk_toolbar_unset_icon_size (gtktoolbar *toolbar); внимание
сбрасывает размер установленный с
помощью
gtk_toolbar_get_show_arrow ()gboolean gtk_toolbar_get_show_arrow (gtktoolbar *toolbar);
определяет должна ли панель иметь меню
переполнения. смотрите
начиная с версии 2.4 gtk_toolbar_get_orientation ()gtkorientation gtk_toolbar_get_orientation (gtktoolbar *toolbar);
определяет текущую ориентацию панели.
смотрите
gtk_toolbar_get_style ()gtktoolbarstyle gtk_toolbar_get_style (gtktoolbar *toolbar);
определяет должна ли панель иметь текст,
значки или и то и другое. смотрите
gtk_toolbar_get_icon_size ()gtkiconsize gtk_toolbar_get_icon_size (gtktoolbar *toolbar);
определяет размер значков для панели.
смотрите
gtk_toolbar_get_tooltips ()gboolean gtk_toolbar_get_tooltips (gtktoolbar *toolbar);
определяет включены ли подсказки.
смотрите
gtk_toolbar_get_relief_style ()gtkreliefstyle gtk_toolbar_get_relief_style (gtktoolbar *toolbar);
определяет стиль рельефа кнопок на
начиная с версии 2.4 gtk_toolbar_append_item ()gtkwidget* gtk_toolbar_append_item (gtktoolbar *toolbar, const char *text, const char *tooltip_text, const char *tooltip_private_text, gtkwidget *icon, gtksignalfunc callback, gpointer user_data); внимание
вставляет новый пункт в панель. вы должны определить позицию на панели в которую он будет вставлен.
gtk_toolbar_prepend_item ()gtkwidget* gtk_toolbar_prepend_item (gtktoolbar *toolbar, const char *text, const char *tooltip_text, const char *tooltip_private_text, gtkwidget *icon, gtksignalfunc callback, gpointer user_data); внимание
добавляет кнопку в начало (сверху или слева) данной панели. callback должен указывать на функцию
получающую gtkwidget и
gpointer как аргумент. используйте
gtk_toolbar_insert_item ()gtkwidget* gtk_toolbar_insert_item (gtktoolbar *toolbar, const char *text, const char *tooltip_text, const char *tooltip_private_text, gtkwidget *icon, gtksignalfunc callback, gpointer user_data, gint position); внимание
вставляет новый пункт в панель. вы должны определить позицию на панели в которую он будет вставлен.
gtk_toolbar_append_space ()void gtk_toolbar_append_space (gtktoolbar *toolbar); внимание
добавляет новый интервал в конец панели.
gtk_toolbar_prepend_space ()void gtk_toolbar_prepend_space (gtktoolbar *toolbar); внимание
добавляет новый интервал в начало панели.
gtk_toolbar_insert_space ()void gtk_toolbar_insert_space (gtktoolbar *toolbar, gint position); внимание
вставляет интервал в определенную позицию.
gtk_toolbar_append_element ()gtkwidget* gtk_toolbar_append_element (gtktoolbar *toolbar, gtktoolbarchildtype type, gtkwidget *widget, const char *text, const char *tooltip_text, const char *tooltip_private_text, gtkwidget *icon, gtksignalfunc callback, gpointer user_data); внимание
добавляет новые элементы в конец панели. если
gtk_toolbar_prepend_element ()gtkwidget* gtk_toolbar_prepend_element (gtktoolbar *toolbar, gtktoolbarchildtype type, gtkwidget *widget, const char *text, const char *tooltip_text, const char *tooltip_private_text, gtkwidget *icon, gtksignalfunc callback, gpointer user_data); внимание
добавляет новый элемент в начало данной панели. если
gtk_toolbar_insert_element ()gtkwidget* gtk_toolbar_insert_element (gtktoolbar *toolbar, gtktoolbarchildtype type, gtkwidget *widget, const char *text, const char *tooltip_text, const char *tooltip_private_text, gtkwidget *icon, gtksignalfunc callback, gpointer user_data, gint position); внимание
вставляет элемент в данную позицию панели. if
gtk_toolbar_append_widget ()void gtk_toolbar_append_widget (gtktoolbar *toolbar, gtkwidget *widget, const char *tooltip_text, const char *tooltip_private_text); внимание
добавляет виджет в конец данной панели.
gtk_toolbar_prepend_widget ()void gtk_toolbar_prepend_widget (gtktoolbar *toolbar, gtkwidget *widget, const char *tooltip_text, const char *tooltip_private_text); внимание
добавляет виджет в начало данной панели.
gtk_toolbar_insert_widget ()void gtk_toolbar_insert_widget (gtktoolbar *toolbar, gtkwidget *widget, const char *tooltip_text, const char *tooltip_private_text, gint position); внимание
вставляет виджет в данную позицию панели.
gtk_toolbar_set_style ()void gtk_toolbar_set_style (gtktoolbar *toolbar, gtktoolbarstyle style);
изменяет вид
gtk_toolbar_insert_stock ()gtkwidget* gtk_toolbar_insert_stock (gtktoolbar *toolbar, const gchar *stock_id, const char *tooltip_text, const char *tooltip_private_text, gtksignalfunc callback, gpointer user_data, gint position); внимание
вставляет заготовленный пункт в
специальную позицию панели. если
gtk_toolbar_set_icon_size ()void gtk_toolbar_set_icon_size (gtktoolbar *toolbar, gtkiconsize icon_size); внимание
эта функция устанавливает размер заготовленных значков в панели инструментов. вы можете вызывать её и до и после добавления значков. размер который вы установите отменяет пользовательские настройки для размера значков по умолчанию. это должно использоваться только для специальных инструментальных панелей, обычно инструментальные панели приложения должны придерживаться пользовательских настроек размера значков.
gtk_toolbar_remove_space ()void gtk_toolbar_remove_space (gtktoolbar *toolbar, gint position); внимание
удаляет интервал из определенной позиции.
gtk_toolbar_unset_style ()void gtk_toolbar_unset_style (gtktoolbar *toolbar);
сбрасывает установки стиля панели
установленные с помощью
детали свойствсвойство "
|
|
gtktoolbar которая издала сигнал |
|
|
|
пользовательские данные устанавливаемые когда подключается обработчик сигнала. |
возвращает: |
gboolean user_function (gtktoolbar *toolbar, gtkdirectiontype *dir, gpointer user_data) : run last / action
сигнал привязки клавиш используемый внутри gtk+. этот сигнал не должен использоваться в коде приложений.
|
gtktoolbar которая издала сигнал |
|
gtkdirection |
|
пользовательские данные устанавливаемые когда подключается обработчик сигнала. |
возвращает: |
void user_function (gtktoolbar *toolbar, gtkorientation orientation, gpointer user_data) : run first
издается при смене ориентации панели.
|
объект который издаёт сигнал |
|
новая gtkorientation панели |
|
пользовательские данные устанавливаемые когда подключается обработчик сигнала. |
gboolean user_function (gtktoolbar *toolbar, gint x, gint y, gint button, gpointer user_data) : run last
издаётся когда пользователь нажимает правой кнопкой мыши на панели инструментов или нажимает комбинацию клавиш для вызова всплывающего меню.
программисты должны обрабатывать
этот сигнал если они хотят отображать
контекстное меню панели инструментов.
меню должно появляться в полученных
координатах x
и y
.
параметр button
означает кнопку
мыши. если меню всплывает при нажатии
комбинаций клавиш, button
должен быть -1.
|
gtktoolbar который издаёт сигнал |
|
x координата точки появления меню |
|
y координата точки появления меню |
|
кнопка мыши нажимаемая пользователем, или -1 |
|
пользовательские данные устанавливаемые когда подключается обработчик сигнала. |
возвращает: |
void user_function (gtktoolbar *toolbar, gtktoolbarstyle style, gpointer user_data) : run first
издается при изменении стиля панели инструментов.
|
gtktoolbar которая издаёт сигнал |
|
новый gtktoolbarstyle панели |
|
пользовательские данные устанавливаемые когда подключается обработчик сигнала. |
базовый класс виджетов добавляемых на панель инструментов. |