GTK+ Reference Manual |
||||
---|---|---|---|---|
Top | Description | Object Hierarchy | Properties | Child Properties | Style Properties | Signals |
GtkNotebookGtkNotebook Контейнер содержащий переключающиеся вкладки |
#include <gtk/gtk.h>
GtkNotebook;
GtkNotebookPage;
GtkWidget* gtk_notebook_new (void);
gint gtk_notebook_append_page (GtkNotebook *notebook,
GtkWidget *child,
GtkWidget *tab_label);
gint gtk_notebook_append_page_menu (GtkNotebook *notebook,
GtkWidget *child,
GtkWidget *tab_label,
GtkWidget *menu_label);
gint gtk_notebook_prepend_page (GtkNotebook *notebook,
GtkWidget *child,
GtkWidget *tab_label);
gint gtk_notebook_prepend_page_menu (GtkNotebook *notebook,
GtkWidget *child,
GtkWidget *tab_label,
GtkWidget *menu_label);
gint gtk_notebook_insert_page (GtkNotebook *notebook,
GtkWidget *child,
GtkWidget *tab_label,
gint position);
gint gtk_notebook_insert_page_menu (GtkNotebook *notebook,
GtkWidget *child,
GtkWidget *tab_label,
GtkWidget *menu_label,
gint position);
void gtk_notebook_remove_page (GtkNotebook *notebook,
gint page_num);
#define gtk_notebook_current_page
gint gtk_notebook_page_num (GtkNotebook *notebook,
GtkWidget *child);
#define gtk_notebook_set_page
void gtk_notebook_next_page (GtkNotebook *notebook);
void gtk_notebook_prev_page (GtkNotebook *notebook);
void gtk_notebook_reorder_child (GtkNotebook *notebook,
GtkWidget *child,
gint position);
void gtk_notebook_set_tab_pos (GtkNotebook *notebook,
GtkPositionType pos);
void gtk_notebook_set_show_tabs (GtkNotebook *notebook,
gboolean show_tabs);
void gtk_notebook_set_show_border (GtkNotebook *notebook,
gboolean show_border);
void gtk_notebook_set_scrollable (GtkNotebook *notebook,
gboolean scrollable);
void gtk_notebook_set_tab_border (GtkNotebook *notebook,
guint border_width);
void gtk_notebook_popup_enable (GtkNotebook *notebook);
void gtk_notebook_popup_disable (GtkNotebook *notebook);
gint gtk_notebook_get_current_page (GtkNotebook *notebook);
GtkWidget* gtk_notebook_get_menu_label (GtkNotebook *notebook,
GtkWidget *child);
GtkWidget* gtk_notebook_get_nth_page (GtkNotebook *notebook,
gint page_num);
gint gtk_notebook_get_n_pages (GtkNotebook *notebook);
GtkWidget* gtk_notebook_get_tab_label (GtkNotebook *notebook,
GtkWidget *child);
void gtk_notebook_query_tab_label_packing
(GtkNotebook *notebook,
GtkWidget *child,
gboolean *expand,
gboolean *fill,
GtkPackType *pack_type);
void gtk_notebook_set_homogeneous_tabs
(GtkNotebook *notebook,
gboolean homogeneous);
void gtk_notebook_set_menu_label (GtkNotebook *notebook,
GtkWidget *child,
GtkWidget *menu_label);
void gtk_notebook_set_menu_label_text
(GtkNotebook *notebook,
GtkWidget *child,
const gchar *menu_text);
void gtk_notebook_set_tab_hborder (GtkNotebook *notebook,
guint tab_hborder);
void gtk_notebook_set_tab_label (GtkNotebook *notebook,
GtkWidget *child,
GtkWidget *tab_label);
void gtk_notebook_set_tab_label_packing
(GtkNotebook *notebook,
GtkWidget *child,
gboolean expand,
gboolean fill,
GtkPackType pack_type);
void gtk_notebook_set_tab_label_text (GtkNotebook *notebook,
GtkWidget *child,
const gchar *tab_text);
void gtk_notebook_set_tab_vborder (GtkNotebook *notebook,
guint tab_vborder);
void gtk_notebook_set_tab_reorderable
(GtkNotebook *notebook,
GtkWidget *child,
gboolean reorderable);
void gtk_notebook_set_tab_detachable (GtkNotebook *notebook,
GtkWidget *child,
gboolean detachable);
const gchar* gtk_notebook_get_menu_label_text
(GtkNotebook *notebook,
GtkWidget *child);
gboolean gtk_notebook_get_scrollable (GtkNotebook *notebook);
gboolean gtk_notebook_get_show_border (GtkNotebook *notebook);
gboolean gtk_notebook_get_show_tabs (GtkNotebook *notebook);
const gchar* gtk_notebook_get_tab_label_text
(GtkNotebook *notebook,
GtkWidget *child);
GtkPositionType gtk_notebook_get_tab_pos (GtkNotebook *notebook);
gboolean gtk_notebook_get_tab_reorderable
(GtkNotebook *notebook,
GtkWidget *child);
gboolean gtk_notebook_get_tab_detachable (GtkNotebook *notebook,
GtkWidget *child);
void gtk_notebook_set_current_page (GtkNotebook *notebook,
gint page_num);
void gtk_notebook_set_group_id (GtkNotebook *notebook,
gint group_id);
gint gtk_notebook_get_group_id (GtkNotebook *notebook);
GtkNotebook* (*GtkNotebookWindowCreationFunc)
(GtkNotebook *source,
GtkWidget *page,
gint x,
gint y,
gpointer data);
void gtk_notebook_set_window_creation_hook
(GtkNotebookWindowCreationFunc func,
gpointer data);
GObject
+----GInitiallyUnowned
+----GtkObject
+----GtkWidget
+----GtkContainer
+----GtkNotebook
GtkNotebook осуществляет AtkImplementorIface.
"enable-popup" gboolean : Read / Write
"group-id" gint : Read / Write
"homogeneous" gboolean : Read / Write
"page" gint : Read / Write
"scrollable" gboolean : Read / Write
"show-border" gboolean : Read / Write
"show-tabs" gboolean : Read / Write
"tab-border" guint : Write
"tab-hborder" guint : Read / Write
"tab-pos" GtkPositionType : Read / Write
"tab-vborder" guint : Read / Write
"detachable" gboolean : Read / Write
"menu-label" gchararray : Read / Write
"position" gint : Read / Write
"reorderable" gboolean : Read / Write
"tab-expand" gboolean : Read / Write
"tab-fill" gboolean : Read / Write
"tab-label" gchararray : Read / Write
"tab-pack" GtkPackType : Read / Write
"arrow-spacing" gint : Read
"has-backward-stepper" gboolean : Read
"has-forward-stepper" gboolean : Read
"has-secondary-backward-stepper" gboolean : Read
"has-secondary-forward-stepper" gboolean : Read
"tab-curvature" gint : Read
"tab-overlap" gint : Read
"change-current-page"
void user_function (GtkNotebook *notebook,
gint arg1,
gpointer user_data) : Run last / Action
"focus-tab" gboolean user_function (GtkNotebook *notebook,
GtkNotebookTab *arg1,
gpointer user_data) : Run last / Action
"move-focus-out"
void user_function (GtkNotebook *notebook,
GtkDirectionType *arg1,
gpointer user_data) : Run last / Action
"page-added"
void user_function (GtkNotebook *notebook,
GtkWidget *child,
guint page_num,
gpointer user_data) : Run last
"page-removed"
void user_function (GtkNotebook *notebook,
GtkWidget *child,
guint page_num,
gpointer user_data) : Run last
"page-reordered"
void user_function (GtkNotebook *notebook,
GtkWidget *child,
guint page_num,
gpointer user_data) : Run last
"reorder-tab"
void user_function (GtkNotebook *notebook,
GtkDirectionType *arg1,
gboolean arg2,
gpointer user_data) : Run last / Action
"select-page"
gboolean user_function (GtkNotebook *notebook,
gboolean arg1,
gpointer user_data) : Run last / Action
"switch-page"
void user_function (GtkNotebook *notebook,
GtkNotebookPage *page,
guint page_num,
gpointer user_data) : Run last
Виджет GtkNotebook это GtkContainer дочерние виджеты которого являются страницами, которые можно переключать между собой при помощи специальных вкладок расположенных вдоль одного из краёв.
Есть много вариантов конфигурации для GtkNotebook. Помимо прочего, вы можете выбирать с какой стороны должны появляться вкладки (смотрите gtk_notebook_set_tab_pos()), нужно ли организовывать прокручивание вкладок если их слишком много (смотрите gtk_notebook_set_scrollable), и нужно ли всплывающее меню, позволяющее пользователям переключать страницы. (смотрите gtk_notebook_enable_popup(), gtk_noteobook_disable_popup())
typedef struct _GtkNotebook GtkNotebook;
GtkNotebookPage
typedef struct _GtkNotebookPage GtkNotebookPage;GtkNotebookPage это непрозрачные детали осуществляемые GtkNotebook.
gtk_notebook_new ()
GtkWidget* gtk_notebook_new (void);Создаёт новый виджет GtkNotebook без страниц.
Возвращает: |
Вновь созданный GtkNotebook |
gint gtk_notebook_append_page (GtkNotebook *notebook,
GtkWidget *child,
GtkWidget *tab_label);
Добавляет страницу к notebook.
notebook : |
|
child : |
GtkWidget используемый как содержимое страницы. |
tab_label : |
GtkWidget используемый как метка для страницы, или NULL при использовании значения по умолчанию 'page N'. |
Возвращает: |
перечень добавленных в конец контейнера страниц (начинается с 0), или -1 если функция невыполнена. |
gint gtk_notebook_append_page_menu (GtkNotebook *notebook,
GtkWidget *child,
GtkWidget *tab_label,
GtkWidget *menu_label);
Добавляет страницу к notebook, определяет виджет для использования в качестве метки во всплывающем меню.
notebook : |
|
child : |
GtkWidget используемый как содержимое страницы. |
tab_label : |
GtkWidget используемый как метка для страницы, или NULL при использовании значения по умолчанию 'page N'. |
menu_label : |
Виджет используемый как метка для меню переключателя страниц, если это возможно. Если NULL, и tab_label это GtkLabel или NULL, то когда ярлык меню будет вновь создан с тем же самым текстом как tab_label; Если tab_label не является GtkLabel, должен быть определён menu_label, если меню переключателя страниц должно использоваться. |
Возвращает: |
перечень добавленных в конец контейнера страниц (начинается с 0), или -1 если функция невыполнена. |
gint gtk_notebook_prepend_page (GtkNotebook *notebook,
GtkWidget *child,
GtkWidget *tab_label);
Добавляет страницы в начало notebook.
notebook : |
|
child : |
GtkWidget используемый как содержимое страницы. |
tab_label : |
GtkWidget используемый как метка для страницы, или NULL при использовании значения по умолчанию 'page N'. |
Возвращает: |
перечень добавленных в начало контейнера страниц (начинается с 0), или -1 если функция невыполнена. |
gint gtk_notebook_prepend_page_menu (GtkNotebook *notebook,
GtkWidget *child,
GtkWidget *tab_label,
GtkWidget *menu_label);
Добавляет страницы в начало notebook, определяет виджет для использования в качестве метки во всплывающем меню.
notebook : |
|
child : |
GtkWidget используемый как содержимое страницы. |
tab_label : |
GtkWidget используемый как метка для страницы, или NULL при использовании значения по умолчанию 'page N'. |
menu_label : |
Виджет используемый как метка для меню переключателя страниц, если это возможно. Если NULL, и tab_label это GtkLabel или NULL, то когда ярлык меню будет вновь создан с тем же самым текстом как tab_label; Если tab_label не является GtkLabel, должен быть определён menu_label, если меню переключателя страниц должно использоваться. |
Возвращает: |
перечень добавленных в начало контейнера страниц (начинается с 0), или -1 если функция невыполнена. |
gint gtk_notebook_insert_page (GtkNotebook *notebook,
GtkWidget *child,
GtkWidget *tab_label,
gint position);
Вставляет страницы в notebook в полученной позиции.
notebook : |
|
child : |
GtkWidget используемый как содержимое страницы. |
tab_label : |
GtkWidget используемый как метка для страницы, или NULL при использовании значения по умолчанию 'page N'. |
position : |
Перечень вставляемых страниц (начинается с 0), или -1 для добавления страниц после всех остальных. |
Возвращает: |
Перечень вставленных страниц (начинается с 0) в контейнер, или -1 если функция не выполнена |
gint gtk_notebook_insert_page_menu (GtkNotebook *notebook,
GtkWidget *child,
GtkWidget *tab_label,
GtkWidget *menu_label,
gint position);
Вставляет страницы в notebook в полученной позиции, определяет виджет для использования в качестве метки во всплывающем меню.
notebook : |
|
child : |
GtkWidget используемый как содержимое страницы. |
tab_label : |
GtkWidget используемый как метка для страницы, или NULL при использовании значения по умолчанию 'page N'. |
menu_label : |
Виджет используемый как метка для меню переключателя страниц, если это возможно. Если NULL, и tab_label это GtkLabel или NULL, то когда ярлык меню будет вновь создан с тем же самым текстом как tab_label; Если tab_label не является GtkLabel, должен быть определён menu_label, если меню переключателя страниц должно использоваться. |
position : |
Перечень вставляемых страниц (начинается с 0), или -1 для добавления страниц после всех остальных. |
Возвращает: |
Перечень вставленных страниц (начинается с 0) в контейнер, или -1 если функция не выполнена |
void gtk_notebook_remove_page (GtkNotebook *notebook,
gint page_num);
Удаляет страницу из контейнера вкладок согласно полученного индекса.
notebook : |
|
page_num : |
Индекс страниц контейнера вкладок, начинается с 0. Если -1, удаляется последняя страница. |
#define gtk_notebook_current_page gtk_notebook_get_current_pageВнимание
gtk_notebook_current_page устарела и не нужно её использовать во вновь создаваемом коде.
Устаревшая макрокоманда. Вместо неё используйте gtk_notebook_get_current_page().
gtk_notebook_page_num ()
gint gtk_notebook_page_num (GtkNotebook *notebook, GtkWidget *child);
Находит указатель страницы в которой находится полученный виджет.
notebook : |
|
child : |
|
Возвращает: |
Указатель страницы содержащей child, или -1 если child нет в контейнере вкладок. |
#define gtk_notebook_set_page gtk_notebook_set_current_pageВнимание
gtk_notebook_set_page устарела и не нужно её использовать во вновь создаваемом коде.
Устаревшая макрокоманда для совместимости. Вместо неё используйте gtk_notebook_set_current_page().
gtk_notebook_next_page ()
void gtk_notebook_next_page (GtkNotebook *notebook);Переключает к следующей странице. Если страница последняя, ничего не происходит.
notebook : |
void gtk_notebook_prev_page (GtkNotebook *notebook);Переключает к предыдущей странице. Если страница первая, ничего не происходит.
notebook : |
void gtk_notebook_reorder_child (GtkNotebook *notebook,
GtkWidget *child,
gint position);
Изменяет порядок страницы содержащей child, так, чтобы она появилась в позиции position. Если position больше или эквивалентно числу дочерних в списке или отрицательно, child будет перемещён в конец списка.
notebook : |
|
child : |
Перемещаемый дочерний виджет |
position : |
Новая позиция, или -1 для перемещения в конец |
void gtk_notebook_set_tab_pos (GtkNotebook *notebook,
GtkPositionType pos);
Устанавливает сторону для размещения переключателей страниц в контейнере вкладок.
notebook : |
|
pos : |
Сторона для отрисовки вкладок. |
void gtk_notebook_set_show_tabs (GtkNotebook *notebook,
gboolean show_tabs);
Устанавливает отображаются ли вкладки в контейнере или нет.
notebook : |
|
show_tabs : |
TRUE если вкладки должны отображаться. |
void gtk_notebook_set_show_border (GtkNotebook *notebook,
gboolean show_border);
Устанавливать ли скос возле страниц контейнера вкладок. Это имеет визуальный эффект только когда вкладки не отображаются. Смотрите gtk_notebook_set_show_tabs().
notebook : |
|
show_border : |
TRUE если скос должен быть отображен возле вкладок контейнера. |
void gtk_notebook_set_scrollable (GtkNotebook *notebook,
gboolean scrollable);
Устанавливать ли стрелки для прокручивания если слишком много вкладок.
notebook : |
|
scrollable : |
TRUE если нужно добавить стрелки для прокручивания |
void gtk_notebook_set_tab_border (GtkNotebook *notebook,
guint border_width);
gtk_notebook_set_tab_border устарела и не нужно её использовать во вновь создаваемом коде.
Устанавливает ширину окантовки вокруг меток вкладок в контейнере. Это эквивалентно вызову gtk_notebook_set_tab_hborder (notebook, border_width) после gtk_notebook_set_tab_vborder (notebook, border_width).
notebook : |
|
border_width : |
Ширина окантовки вокруг меток вкладок. |
void gtk_notebook_popup_enable (GtkNotebook *notebook);Включает всплывающее меню: если пользователь нажал правой кнопкой мыши на вкладку, то появится меню содержащее все страницы.
notebook : |
void gtk_notebook_popup_disable (GtkNotebook *notebook);Отключает всплывающее меню.
notebook : |
gint gtk_notebook_get_current_page (GtkNotebook *notebook);Возвращает номер текущемй страницы.
notebook : |
|
Возвращает: |
Индекс текущемй страницы в контейнере вкладок (начиная с 0). Если контейнер вкладок не имеет страниц, то возвращается -1. |
GtkWidget* gtk_notebook_get_menu_label (GtkNotebook *notebook,
GtkWidget *child);
Обеспечивает ярлыком меню страницу содержащую child.
notebook : |
|
child : |
Виджет содержащийся в странице контейнера notebook |
Возвращает: |
Ярлык меню, или NULL если страница контейнера вкладок не имеет метки меню кроме установленного по умолчанию (метка вкладки). |
GtkWidget* gtk_notebook_get_nth_page (GtkNotebook *notebook,
gint page_num);
Возвращает дочерний виджет содержащийся в странице с номером page_num.
notebook : |
|
page_num : |
Указатель страницы в контейнере вкладок, или -1 для последней страницы. |
Возвращает: |
Дочерний виджет, или NULL если page_num выходит за пределы. |
gint gtk_notebook_get_n_pages (GtkNotebook *notebook);Выдаёт номер страницы в контейнере вкладок.
notebook : |
|
Возвращает: |
Номер страницы в контейнере вкладок. |
Начиная с версии 2.2
GtkWidget* gtk_notebook_get_tab_label (GtkNotebook *notebook,
GtkWidget *child);
Возвращает ярлык вкладки для страницы child. NULL возвращается если child нет в notebook или если ярлык вкладки не определён для child.
notebook : |
|
child : |
страница |
Возвращает: |
Ярлык вкладки |
void gtk_notebook_query_tab_label_packing
(GtkNotebook *notebook,
GtkWidget *child,
gboolean *expand,
gboolean *fill,
GtkPackType *pack_type);
Запрашивает упаковочные свойства для страницы с меткой вкладки, содержащей child.
notebook : |
|
child : |
страница |
expand : |
Расположение для хранения значения расширения (или NULL) |
fill : |
Расположение для хранения значения заполнения (или NULL) |
pack_type : |
Расположение для хранения pack_type (или NULL) |
void gtk_notebook_set_homogeneous_tabs
(GtkNotebook *notebook,
gboolean homogeneous);
gtk_notebook_set_homogeneous_tabs устарела и не нужно её использовать во вновь создаваемом коде.
Устанавливает должны ли все вкладки иметь одинаковый размер или нет.
notebook : |
|
homogeneous : |
TRUE если все вкладки должны быть одинакового размера. |
void gtk_notebook_set_menu_label (GtkNotebook *notebook,
GtkWidget *child,
GtkWidget *menu_label);
Изменяет ярлык меню для страницы содержащей child.
notebook : |
|
child : |
Дочерний виджет |
menu_label : |
Ярлык меню, или NULL для значения по умолчанию |
void gtk_notebook_set_menu_label_text
(GtkNotebook *notebook,
GtkWidget *child,
const gchar *menu_text);
Создаёт новый ярлык и устанавливает его как ярлык меню для child.
notebook : |
|
child : |
Дочерний виджет |
menu_text : |
Текст метки |
void gtk_notebook_set_tab_hborder (GtkNotebook *notebook,
guint tab_hborder);
gtk_notebook_set_tab_hborder устарела и не нужно её использовать во вновь создаваемом коде.
Устанавливает ширину горизонтальной границы метки вкладок.
notebook : |
|
tab_hborder : |
Ширина горизонтальной границы метки вкладки. |
void gtk_notebook_set_tab_label (GtkNotebook *notebook,
GtkWidget *child,
GtkWidget *tab_label);
Изменяет метку вкладки для child. Если NULL установлен для tab_label, то когда страница будет иметь ярлык 'page N'.
notebook : |
|
child : |
страница |
tab_label : |
Используемый виджет ярлыка вкладки, или NULL для ярлыка вкладки по умолчанию. |
void gtk_notebook_set_tab_label_packing
(GtkNotebook *notebook,
GtkWidget *child,
gboolean expand,
gboolean fill,
GtkPackType pack_type);
Устанавливает упаковочные параметры для страницы с меткой вкладки, содержащей child. Смотрите gtk_box_pack_start() для дополнительных значений параметров.
notebook : |
|
child : |
Дочерний виджет |
expand : |
Расширяются ли вкладки или нет |
fill : |
Должны ли вкладки заполнять распределённую область или нет |
pack_type : |
Позиция вкладки |
void gtk_notebook_set_tab_label_text (GtkNotebook *notebook,
GtkWidget *child,
const gchar *tab_text);
Создаёт новый ярлык и устанавливает его как ярлык вкладки для страницы содержащей child.
notebook : |
|
child : |
страница |
tab_text : |
текст ярлыка |
void gtk_notebook_set_tab_vborder (GtkNotebook *notebook,
guint tab_vborder);
gtk_notebook_set_tab_vborder устарела и не нужно её использовать во вновь создаваемом коде.
Устанавливает ширину вертикальной границы ярлыка метки.
notebook : |
|
tab_vborder : |
Ширина вертикальной границы ярлыка вкладки. |
void gtk_notebook_set_tab_reorderable
(GtkNotebook *notebook,
GtkWidget *child,
gboolean reorderable);
Устанавливает может ли вкладка изменять расположение через перетаскивание (drag and drop) или нет.
|
|
child : |
дочерний GtkWidget |
|
Изменяет ли положение вкладка или нет. |
Начиная с версии 2.10
void gtk_notebook_set_tab_detachable (GtkNotebook *notebook,
GtkWidget *child,
gboolean detachable);
Устанавливает может ли вкладка быть
отделена из notebook
в другой контейнер
вкладок или виджет.
Помните, эти два контейнера вкладок
должны иметь общий идентификатор группы
(смотрите gtk_notebook_set_group_id()
)
позволяющий автоматический обмен
вкладками между ними.
Если вы хотите чтобы виджет взаимодействовал с контейнером вкладок через DnD (то есть: методом перетаскивания мышкой) он должен быть установлен как адресат перетаскивания и принять цель "GTK_NOTEBOOK_TAB". Контейнер вкладок будет заполнять выбранные указатели GtkWidget** для дочерних виджетов которые соответствуют перетаскиваемым вкладкам.
static void
on_drop_zone_drag_data_received (GtkWidget *widget,
GdkDragContext *context,
gint x,
gint y,
GtkSelectionData *selection_data,
guint info,
guint time,
gpointer user_data)
{
GtkWidget *notebook;
GtkWidget **child;
notebook = gtk_drag_get_source_widget (context);
child = (void*) selection_data->data;
process_widget (*child);
gtk_container_remove (GTK_CONTAINER (notebook), *child);
}
Если вы хотите чтобы контейнер вкладок позволял перетаскивание из других виджетов, вы должны будете установить ваш собственный код DnD делающий это.
notebook : |
|
|
дочерний GtkWidget |
detachable : |
Отделяемая вкладка или нет |
Начиная с версии 2.10
const gchar* gtk_notebook_get_menu_label_text
(GtkNotebook *notebook,
GtkWidget *child);
Определяет текст ярлыка меню для страницы содержащей child.
notebook : |
|
child : |
Дочерний виджет of a page of the notebook. |
Возвращает: |
Значение: текст ярлыка вкладки, или NULL если виджет не имеет ярлыка метки, кроме установленного по умолчанию, или ярлык метки не является GtkLabel. Строкой владеет виджет и она не должна высвобождаться. |
gboolean gtk_notebook_get_scrollable (GtkNotebook *notebook);Определяет имеет ли область вкладок с ярлыками стрелки для прокручивания. Смотрите gtk_notebook_set_scrollable().
notebook : |
|
Возвращает: |
TRUE если стрелки для прокручивания отображаются |
gboolean gtk_notebook_get_show_border (GtkNotebook *notebook);Определяет имеется ли скос возле страниц контейнера вкладок. Смотрите gtk_notebook_set_show_border().
notebook : |
|
Возвращает: |
TRUE если скос отрисовывается |
gboolean gtk_notebook_get_show_tabs (GtkNotebook *notebook);Определяет отображаются ли вкладки контейнера. Смотрите gtk_notebook_set_show_tabs().
notebook : |
|
Возвращает: |
TRUE если вкладки отображаются |
const gchar* gtk_notebook_get_tab_label_text
(GtkNotebook *notebook,
GtkWidget *child);
Определяет текст ярлыка вкладки для страницы содержащей child.
notebook : |
|
child : |
Виджет содержащийся в странице notebook |
Возвращает: |
Значение: текст ярлыка вкладки, или NULL если ярлык вкладки не является GtkLabel. Строкой владеет виджет и она не должна высвобождаться. |
GtkPositionType gtk_notebook_get_tab_pos (GtkNotebook *notebook);Определяет сторону с которой рисуются вкладки для переключения страниц в контейнере вкладок.
notebook : |
|
Возвращает: |
Сторону на которой отрисовываются вкладки |
gboolean gtk_notebook_get_tab_reorderable
(GtkNotebook *notebook,
GtkWidget *child);
Определяет может ли вкладка менять положение через перетаскивание (drag and drop) или нет.
notebook : |
|
child : |
дочерний GtkWidget |
Returns : |
|
Начиная с версии 2.10
gboolean gtk_notebook_get_tab_detachable (GtkNotebook *notebook,
GtkWidget *child);
Определяет может ли содержимое вкладки отделяться от notebook.
|
|
|
дочерний GtkWidget |
Returns : |
TRUE если вкладка отделяемая. |
Начиная с версии 2.10
void gtk_notebook_set_current_page (GtkNotebook *notebook,
gint page_num);
Переключатель к странице номер page_num.
notebook : |
|
page_num : |
Указатель страницы для переключения, начиная с 0. Если отрицательное, то будет использована последняя страница. Если больше чем количество страниц в контейнере вкладок, то ничего не произойдет. |
void gtk_notebook_set_group_id (GtkNotebook *notebook,
gint group_id);
Устанавливает идентификатор группы
для notebook
, контейнеры вкладок
одной и той же группы могут обмениваться
вкладками через drag and drop. Контейнер
вкладок с идентификатором -1 не может
обмениваться вкладками ни с какими
другими контейнерами.
|
|
|
Идентификатор группы, или -1 для его сброса |
Начиная с версии 2.10
gint gtk_notebook_get_group_id (GtkNotebook *notebook);Получает текущий идентификатор группы для notebook.
|
|
Returns : |
Идентификатор группы, или -1 если не был установлен |
Начиная с версии 2.10
GtkNotebook* (*GtkNotebookWindowCreationFunc)
(GtkNotebook *source,
GtkWidget *page,
gint x,
gint y,
gpointer data);
Функция используемая GtkNotebook когда
отделяемая вкладка перетаскивается в
основное окно, это используется для
создания окна содержащего контейнер
вкладок куда были добавлены вкладки.
Эта функция так же отвечает за
перемещение/изменение размера окна и
добавление необходимых свойств к
контейнеру вкладок (то есть: group-id). Если
функция возвращает NULL
,
то перетаскивание будет отменено.
source : |
Исходный GtkNotebook операции перетаскивания |
page : |
дочерний GtkWidget затрагиваемый операцией |
|
X координаты перетаскивания |
y : |
Y координаты перетаскивания |
data : |
Пользовательские данные |
Возвращает : |
Создаваемый GtkNotebook куда добавляются вкладки, или NULL для прекращения перетаскивания |
void gtk_notebook_set_window_creation_hook
(GtkNotebookWindowCreationFunc func,
gpointer data);
Устанавливает глобальную функцию используемую при создании окна когда отделённая вкладка перетаскивается в пустую область.
func : |
GtkNotebookWindowCreationFunc, или NULL |
|
Пользовательские данные для func. |
Начиная с версии 2.10
"enable-popup" gboolean : Read / WriteЕсли TRUE, то для перехода между страницами вы можете использовать меню всплывающее при нажатии правой кнопкой мышки на контейнере вкладок.
Значение по умолчанию: FALSE
Свойство "homogeneous"
"homogeneous" gboolean : Read / WriteДолжны ли вкладки иметь одинаковый размер.
Значение по умолчанию: FALSE
Свойство "page"
"page" gint : Read / WriteУказатель текущемй страницы.
Допустимые значения: >= 0
Значение по умолчанию: 0
Свойство "scrollable"
"scrollable" gboolean : Read / WriteЕсли TRUE, будут появляться стрелки для прокрутки при слишком большом количестве вкладок.
Значение по умолчанию: FALSE
Свойство "show-border"
"show-border" gboolean : Read / WriteДолжна ли отображаться окантовка или нет.
Значение по умолчанию: TRUE
Свойство "show-tabs"
"show-tabs" gboolean : Read / WriteДолжны ли отображаться вкладки или нет.
Значение по умолчанию: TRUE
Свойство "tab-border"
"tab-border" guint : WriteШирина окантовки вокруг ярлыка вкладки.
Значение по умолчанию: 2
Свойство "tab-hborder"
"tab-hborder" guint : Read / WriteШирина горизонтальной границы ярлыка вкладки.
Значение по умолчанию: 2
Свойство "tab-pos"
"tab-pos" GtkPositionType : Read / WriteС какой стороны контейнер вкладок содержит вкладки.
Значение по умолчанию: GTK_POS_TOP
Свойство "tab-vborder"
"tab-vborder" guint : Read / WriteШирина вертикальной границы ярлыка вкладки.
Значение по умолчанию: 2
Детали дочерних свойств
Дочернее свойство "menu-label"
"menu-label" gchararray : Read / WriteСтрока отображаемая в элементе дочернего меню.
Значение по умолчанию: NULL
Дочернее свойство "position"
"position" gint : Read / WriteУказатель дочернего виджета в родителе.
Допустимые значения: >= -1
Значение по умолчанию: 0
Дочернее свойство "tab-expand"
"tab-expand" gboolean : Read / WriteДолжны ли дочерние вкладки расширяться или нет.
Значение по умолчанию: TRUE
Дочернее свойство "tab-fill"
"tab-fill" gboolean : Read / WriteДолжны ли дочерние вкладки заполнять всю распределённую область или нет.
Значение по умолчанию: TRUE
Дочернее свойство "tab-label"
"tab-label" gchararray : Read / WriteСтрока отображаемая на ярлыке дочерней вкладки.
Значение по умолчанию: NULL
Дочернее свойство "tab-pack"
"tab-pack" GtkPackType : Read / WriteGtkPackType указывает куда упаковывается дочерний виджет, в конец или в начало родителя.
Значение по умолчанию: GTK_PACK_START
Детали свойств стиля
Свойство стиля "
arrow-spacing
""arrow-spacing" gint : ReadСвойство "arrow-size" определяет свободное пространство между стрелками прокрутки и вкладками.
Допустимые значения: >= 0
Значение по умолчанию: 0
Начиная с версии 2.10
Свойство стиля "has-backward-stepper"
"has-backward-stepper" gboolean : ReadСвойство "has-backward-stepper" определяет отображается ли обратная кнопка стрелка - «назад».
Значение по умолчанию: TRUE
Начиная с версии 2.4
Свойство стиля "has-forward-stepper"
"has-forward-stepper" gboolean : ReadСвойство "has-forward-stepper" определяет отображается ли стандартная кнопка стрелка - «вперёд».
Значение по умолчанию: TRUE
Начиная с версии 2.4
Свойство стиля "has-secondary-backward-stepper"
"has-secondary-backward-stepper" gboolean : ReadСвойство "has-secondary-backward-stepper" определяет отображается ли вторичная кнопка стрелка «назад» в противоположном конце области вкладок.
Значение по умолчанию: FALSE
Начиная с версии 2.4
Свойство стиля "has-secondary-forward-stepper"
"has-secondary-forward-stepper" gboolean : ReadСвойство "has-secondary-forward-stepper" определяет отображается ли вторичная кнопка стрелка «вперёд» в противоположном конце области вкладок.
Значение по умолчанию: FALSE
Начиная с версии 2.4
Свойство стиля "
tab-curvature
""tab-curvature" gint : ReadСвойство "tab-curvature" определяет размер искривления вкладок.
Допустимые значения: >= 0
Значение по умолчанию: 1
Начиная с версии 2.10
Свойство стиля "
tab-overlap
""tab-overlap" gint : ReadСвойство "tab-overlap" определяет размер области наложения вкладок.
Значение по умолчанию: 2
Начиная с версии 2.10
Детали сигнала
Сигнал "change-current-page"
void user_function (GtkNotebook *notebook, gint arg1, gpointer user_data) : Run last / Action
notebook : |
объект получающий сигнал. |
arg1 : |
|
user_data : |
пользовательские данные устанавливаемые при подключении обработчика сигнала |
gboolean user_function (GtkNotebook *notebook,
GtkNotebookTab arg1,
gpointer user_data) : Run last / Action
notebook : |
объект получающий сигнал. |
arg1 : |
|
user_data : |
пользовательские данные устанавливаемые при подключении обработчика сигнала |
Возвращает: |
void user_function (GtkNotebook *notebook,
GtkDirectionType arg1,
gpointer user_data) : Run last / Action
notebook : |
объект получающий сигнал. |
arg1 : |
|
user_data : |
пользовательские данные устанавливаемые при подключении обработчика сигнала |
void user_function (GtkNotebook *notebook,
GtkWidget *child,
guint page_num,
gpointer user_data) : Run last
Сигнал ::page-added издаётся в контейнере вкладок сразу после добавления страницы к контейнеру.
|
|
child : |
Затрагиваемый дочерний GtkWidget |
page_num : |
Новый номер страницы для |
user_data : |
пользовательские данные устанавливаемые при подключении обработчика сигнала |
Начиная с версии 2.10
void user_function (GtkNotebook *notebook,
GtkWidget *child,
guint page_num,
gpointer user_data) : Run last
Сигнал ::page-removed издаётся в контейнере вкладок сразу после удаления страницы из контейнера.
|
|
child : |
Затронутый дочерний GtkWidget |
|
child номер страницы |
|
пользовательские данные устанавливаемые при подключении обработчика сигнала |
Начиная с версии 2.10
void user_function (GtkNotebook *notebook,
GtkWidget *child,
guint page_num,
gpointer user_data) : Run last
Сигнал ::page-reordered издаётся сразу после изменения порядка вкладок в контейнере.
notebook : |
|
|
Затронутый дочерний GtkWidget |
|
Новый номер страницы для child |
user_data : |
пользовательские данные устанавливаемые при подключении обработчика сигнала |
Начиная с версии 2.10
gboolean user_function (GtkNotebook *notebook,
gboolean arg1,
gpointer user_data) : Run last / Action
notebook : |
объект получающий сигнал. |
arg1 : |
|
user_data : |
пользовательские данные устанавливаемые при подключении обработчика сигнала |
Возвращает: |
void user_function (GtkNotebook *notebook,
GtkNotebookPage *page,
guint page_num,
gpointer user_data) : Run last
Издаётся когда пользователь или функция переключили текущую страницу.
notebook : |
объект получающий сигнал. |
page : |
новая текущая страница |
page_num : |
указатель страницы |
user_data : |
пользовательские данные устанавливаемые при подключении обработчика сигнала |
Для функций которые применяют каждый GtkContainer (как GtkList). |