Prev

Up

Home

GTK+ Reference Manual

Next

Top  |  Description  |  Object Hierarchy  |  Implemented Interfaces  |  Properties  |  Style Properties  |  Signals

GtkTreeView

GtkTreeView Виджет для отображения и деревьев и списков

Краткое описание

#include <gtk/gtk.h> GtkTreeView; enum GtkTreeViewDropPosition; GtkTreeViewPrivate; gboolean (*GtkTreeViewColumnDropFunc) (GtkTreeView *tree_view, GtkTreeViewColumn *column, GtkTreeViewColumn *prev_column, GtkTreeViewColumn *next_column, gpointer data); void (*GtkTreeViewMappingFunc) (GtkTreeView *tree_view, GtkTreePath *path, gpointer user_data); gboolean (*GtkTreeViewSearchEqualFunc) (GtkTreeModel *model, gint column, const gchar *key, GtkTreeIter *iter, gpointer search_data); GtkWidget* gtk_tree_view_new (void); GtkWidget* gtk_tree_view_new_with_model (GtkTreeModel *model); GtkTreeModel* gtk_tree_view_get_model (GtkTreeView *tree_view); void gtk_tree_view_set_model (GtkTreeView *tree_view, GtkTreeModel *model); GtkTreeSelection* gtk_tree_view_get_selection (GtkTreeView *tree_view); GtkAdjustment* gtk_tree_view_get_hadjustment (GtkTreeView *tree_view); void gtk_tree_view_set_hadjustment (GtkTreeView *tree_view, GtkAdjustment *adjustment); GtkAdjustment* gtk_tree_view_get_vadjustment (GtkTreeView *tree_view); void gtk_tree_view_set_vadjustment (GtkTreeView *tree_view, GtkAdjustment *adjustment); gboolean gtk_tree_view_get_headers_visible (GtkTreeView *tree_view); void gtk_tree_view_set_headers_visible (GtkTreeView *tree_view, gboolean headers_visible); void gtk_tree_view_columns_autosize (GtkTreeView *tree_view); gboolean gtk_tree_view_get_headers_clickable (GtkTreeView *tree_view); void gtk_tree_view_set_headers_clickable (GtkTreeView *tree_view, gboolean setting); void gtk_tree_view_set_rules_hint (GtkTreeView *tree_view, gboolean setting); gboolean gtk_tree_view_get_rules_hint (GtkTreeView *tree_view); gint gtk_tree_view_append_column (GtkTreeView *tree_view, GtkTreeViewColumn *column); gint gtk_tree_view_remove_column (GtkTreeView *tree_view, GtkTreeViewColumn *column); gint gtk_tree_view_insert_column (GtkTreeView *tree_view, GtkTreeViewColumn *column, gint position); gint gtk_tree_view_insert_column_with_attributes (GtkTreeView *tree_view, gint position, const gchar *title, GtkCellRenderer *cell, ...); gint gtk_tree_view_insert_column_with_data_func (GtkTreeView *tree_view, gint position, const gchar *title, GtkCellRenderer *cell, GtkTreeCellDataFunc func, gpointer data, GDestroyNotify dnotify); GtkTreeViewColumn* gtk_tree_view_get_column (GtkTreeView *tree_view, gint n); GList* gtk_tree_view_get_columns (GtkTreeView *tree_view); void gtk_tree_view_move_column_after (GtkTreeView *tree_view, GtkTreeViewColumn *column, GtkTreeViewColumn *base_column); void gtk_tree_view_set_expander_column (GtkTreeView *tree_view, GtkTreeViewColumn *column); GtkTreeViewColumn* gtk_tree_view_get_expander_column (GtkTreeView *tree_view); void gtk_tree_view_set_column_drag_function (GtkTreeView *tree_view, GtkTreeViewColumnDropFunc func, gpointer user_data, GtkDestroyNotify destroy); void gtk_tree_view_scroll_to_point (GtkTreeView *tree_view, gint tree_x, gint tree_y); void gtk_tree_view_scroll_to_cell (GtkTreeView *tree_view, GtkTreePath *path, GtkTreeViewColumn *column, gboolean use_align, gfloat row_align, gfloat col_align); void gtk_tree_view_set_cursor (GtkTreeView *tree_view, GtkTreePath *path, GtkTreeViewColumn *focus_column, gboolean start_editing); void gtk_tree_view_set_cursor_on_cell (GtkTreeView *tree_view, GtkTreePath *path, GtkTreeViewColumn *focus_column, GtkCellRenderer *focus_cell, gboolean start_editing); void gtk_tree_view_get_cursor (GtkTreeView *tree_view, GtkTreePath **path, GtkTreeViewColumn **focus_column); void gtk_tree_view_row_activated (GtkTreeView *tree_view, GtkTreePath *path, GtkTreeViewColumn *column); void gtk_tree_view_expand_all (GtkTreeView *tree_view); void gtk_tree_view_collapse_all (GtkTreeView *tree_view); void gtk_tree_view_expand_to_path (GtkTreeView *tree_view, GtkTreePath *path); gboolean gtk_tree_view_expand_row (GtkTreeView *tree_view, GtkTreePath *path, gboolean open_all); gboolean gtk_tree_view_collapse_row (GtkTreeView *tree_view, GtkTreePath *path); void gtk_tree_view_map_expanded_rows (GtkTreeView *tree_view, GtkTreeViewMappingFunc func, gpointer data); gboolean gtk_tree_view_row_expanded (GtkTreeView *tree_view, GtkTreePath *path); void gtk_tree_view_set_reorderable (GtkTreeView *tree_view, gboolean reorderable); gboolean gtk_tree_view_get_reorderable (GtkTreeView *tree_view); gboolean gtk_tree_view_get_path_at_pos (GtkTreeView *tree_view, gint x, gint y, GtkTreePath **path, GtkTreeViewColumn **column, gint *cell_x, gint *cell_y); void gtk_tree_view_get_cell_area (GtkTreeView *tree_view, GtkTreePath *path, GtkTreeViewColumn *column, GdkRectangle *rect); void gtk_tree_view_get_background_area (GtkTreeView *tree_view, GtkTreePath *path, GtkTreeViewColumn *column, GdkRectangle *rect); void gtk_tree_view_get_visible_rect (GtkTreeView *tree_view, GdkRectangle *visible_rect); gboolean gtk_tree_view_get_visible_range (GtkTreeView *tree_view, GtkTreePath **start_path, GtkTreePath **end_path); GdkWindow* gtk_tree_view_get_bin_window (GtkTreeView *tree_view); void gtk_tree_view_widget_to_tree_coords (GtkTreeView *tree_view, gint wx, gint wy, gint *tx, gint *ty); void gtk_tree_view_tree_to_widget_coords (GtkTreeView *tree_view, gint tx, gint ty, gint *wx, gint *wy); void gtk_tree_view_enable_model_drag_dest (GtkTreeView *tree_view, const GtkTargetEntry *targets, gint n_targets, GdkDragAction actions); void gtk_tree_view_enable_model_drag_source (GtkTreeView *tree_view, GdkModifierType start_button_mask, const GtkTargetEntry *targets, gint n_targets, GdkDragAction actions); void gtk_tree_view_unset_rows_drag_source (GtkTreeView *tree_view); void gtk_tree_view_unset_rows_drag_dest (GtkTreeView *tree_view); void gtk_tree_view_set_drag_dest_row (GtkTreeView *tree_view, GtkTreePath *path, GtkTreeViewDropPosition pos); void gtk_tree_view_get_drag_dest_row (GtkTreeView *tree_view, GtkTreePath **path, GtkTreeViewDropPosition *pos); gboolean gtk_tree_view_get_dest_row_at_pos (GtkTreeView *tree_view, gint drag_x, gint drag_y, GtkTreePath **path, GtkTreeViewDropPosition *pos); GdkPixmap* gtk_tree_view_create_row_drag_icon (GtkTreeView *tree_view, GtkTreePath *path); void gtk_tree_view_set_enable_search (GtkTreeView *tree_view, gboolean enable_search); gboolean gtk_tree_view_get_enable_search (GtkTreeView *tree_view); gint gtk_tree_view_get_search_column (GtkTreeView *tree_view); void gtk_tree_view_set_search_column (GtkTreeView *tree_view, gint column); GtkTreeViewSearchEqualFunc gtk_tree_view_get_search_equal_func (GtkTreeView *tree_view); void gtk_tree_view_set_search_equal_func (GtkTreeView *tree_view, GtkTreeViewSearchEqualFunc search_equal_func, gpointer search_user_data, GtkDestroyNotify search_destroy); GtkEntry* gtk_tree_view_get_search_entry (GtkTreeView *tree_view); void gtk_tree_view_set_search_entry (GtkTreeView *tree_view, GtkEntry *entry); void (*GtkTreeViewSearchPositionFunc) (GtkTreeView *tree_view, GtkWidget *search_dialog, gpointer user_data); GtkTreeViewSearchPositionFunc gtk_tree_view_get_search_position_func (GtkTreeView *tree_view); void gtk_tree_view_set_search_position_func (GtkTreeView *tree_view, GtkTreeViewSearchPositionFunc func, gpointer data, GDestroyNotify destroy); gboolean gtk_tree_view_get_fixed_height_mode (GtkTreeView *tree_view); void gtk_tree_view_set_fixed_height_mode (GtkTreeView *tree_view, gboolean enable); gboolean gtk_tree_view_get_hover_selection (GtkTreeView *tree_view); void gtk_tree_view_set_hover_selection (GtkTreeView *tree_view, gboolean hover); gboolean gtk_tree_view_get_hover_expand (GtkTreeView *tree_view); void gtk_tree_view_set_hover_expand (GtkTreeView *tree_view, gboolean expand); void (*GtkTreeDestroyCountFunc) (GtkTreeView *tree_view, GtkTreePath *path, gint children, gpointer user_data); void gtk_tree_view_set_destroy_count_func (GtkTreeView *tree_view, GtkTreeDestroyCountFunc func, gpointer data, GtkDestroyNotify destroy); gboolean (*GtkTreeViewRowSeparatorFunc) (GtkTreeModel *model, GtkTreeIter *iter, gpointer data); GtkTreeViewRowSeparatorFunc gtk_tree_view_get_row_separator_func (GtkTreeView *tree_view); void gtk_tree_view_set_row_separator_func (GtkTreeView *tree_view, GtkTreeViewRowSeparatorFunc func, gpointer data, GtkDestroyNotify destroy); gboolean gtk_tree_view_get_rubber_banding (GtkTreeView *tree_view); void gtk_tree_view_set_rubber_banding (GtkTreeView *tree_view, gboolean enable); gboolean gtk_tree_view_get_enable_tree_lines (GtkTreeView *tree_view); void gtk_tree_view_set_enable_tree_lines (GtkTreeView *tree_view, gboolean enabled); enum GtkTreeViewGridLines; GtkTreeViewGridLines gtk_tree_view_get_grid_lines (GtkTreeView *tree_view); void gtk_tree_view_set_grid_lines (GtkTreeView *tree_view, GtkTreeViewGridLines grid_lines);

Иерархия объектов

GObject +----GInitiallyUnowned +----GtkObject +----GtkWidget +----GtkContainer +----GtkTreeView

Осуществляемые интерфейсы

GtkTreeView осуществляет AtkImplementorIface.

Свойства

"enable-grid-lines" GtkTreeViewGridLines : Read / Write "enable-search" gboolean : Read / Write "enable-tree-lines" gboolean : Read / Write "expander-column" GtkTreeViewColumn : Read / Write "fixed-height-mode" gboolean : Read / Write "hadjustment" GtkAdjustment : Read / Write "headers-clickable" gboolean : Read / Write "headers-visible" gboolean : Read / Write "hover-expand" gboolean : Read / Write "hover-selection" gboolean : Read / Write "level-indentation" gint : Read / Write "model" GtkTreeModel : Read / Write "reorderable" gboolean : Read / Write "rubber-banding" gboolean : Read / Write "rules-hint" gboolean : Read / Write "search-column" gint : Read / Write "show-expanders" gboolean : Read / Write "vadjustment" GtkAdjustment : Read / Write

Свойства стиля

"allow-rules" gboolean : Read "even-row-color" GdkColor : Read "expander-size" gint : Read "grid-line-pattern" gchararray : Read "grid-line-width" gint : Read "horizontal-separator" gint : Read "indent-expanders" gboolean : Read "odd-row-color" GdkColor : Read "row-ending-details" gboolean : Read "tree-line-pattern" gchararray : Read "tree-line-width" gint : Read "vertical-separator" gint : Read

Сигналы

"columns-changed" void user_function (GtkTreeView *tree_view, gpointer user_data) : Run last "cursor-changed" void user_function (GtkTreeView *tree_view, gpointer user_data) : Run last "expand-collapse-cursor-row" gboolean user_function (GtkTreeView *treeview, gboolean arg1, gboolean arg2, gboolean arg3, gpointer user_data) : Run last / Action "move-cursor" gboolean user_function (GtkTreeView *treeview, GtkMovementStep *arg1, gint arg2, gpointer user_data) : Run last / Action "row-activated" void user_function (GtkTreeView *tree_view, GtkTreePath *path, GtkTreeViewColumn *column, gpointer user_data) : Run last / Action "row-collapsed" void user_function (GtkTreeView *tree_view, GtkTreeIter *iter, GtkTreePath *path, gpointer user_data) : Run last "row-expanded" void user_function (GtkTreeView *tree_view, GtkTreeIter *iter, GtkTreePath *path, gpointer user_data) : Run last "select-all" gboolean user_function (GtkTreeView *treeview, gpointer user_data) : Run last / Action "select-cursor-parent" gboolean user_function (GtkTreeView *treeview, gpointer user_data) : Run last / Action "select-cursor-row" gboolean user_function (GtkTreeView *treeview, gboolean arg1, gpointer user_data) : Run last / Action "set-scroll-adjustments" void user_function (GtkTreeView *treeview, GtkAdjustment *arg1, GtkAdjustment *arg2, gpointer user_data) : Run last / Action "start-interactive-search" gboolean user_function (GtkTreeView *treeview, gpointer user_data) : Run last / Action "test-collapse-row" gboolean user_function (GtkTreeView *tree_view, GtkTreeIter *iter, GtkTreePath *path, gpointer user_data) : Run last "test-expand-row" gboolean user_function (GtkTreeView *tree_view, GtkTreeIter *iter, GtkTreePath *path, gpointer user_data) : Run last "toggle-cursor-row" gboolean user_function (GtkTreeView *treeview, gpointer user_data) : Run last / Action "unselect-all" gboolean user_function (GtkTreeView *treeview, gpointer user_data) : Run last / Action

Описание

Виджет который отображает любой объект реализуемый интерфейсом GtkTreeModel.

Пожалуйста обратитесь к tree widget conceptual overview для получения краткого описания объектов и типов данных связанных с древовидным виджетом и как они взаимодействуют.

Детали

GtkTreeView

typedef struct _GtkTreeView GtkTreeView;

enum GtkTreeViewDropPosition

typedef enum { /* перенос перед/после этой строки */ GTK_TREE_VIEW_DROP_BEFORE, GTK_TREE_VIEW_DROP_AFTER, /* перенос как дочернего элемента этой строки (с аварийным переходом в до или после * если во внутрь не возможно) */ GTK_TREE_VIEW_DROP_INTO_OR_BEFORE, GTK_TREE_VIEW_DROP_INTO_OR_AFTER } GtkTreeViewDropPosition;

Перечисление для определения передвижения строки.

GTK_TREE_VIEW_DROP_BEFORE

Перемещаемая строка вставляется перед

GTK_TREE_VIEW_DROP_AFTER

Перемещаемая строка вставляется после

GTK_TREE_VIEW_DROP_INTO_OR_BEFORE

Перемещаемая строка становится дочерней или вставляется перед

GTK_TREE_VIEW_DROP_INTO_OR_AFTER

Перемещаемая строка становится дочерней или вставляется после


GtkTreeViewPrivate

typedef struct _GtkTreeViewPrivate GtkTreeViewPrivate;

Закрытая структура только для внутреннего использования.


GtkTreeViewColumnDropFunc ()

gboolean (*GtkTreeViewColumnDropFunc) (GtkTreeView *tree_view, GtkTreeViewColumn *column, GtkTreeViewColumn *prev_column, GtkTreeViewColumn *next_column, gpointer data);

Тип функции для определения может ли column перемещен в специфическую ячейку (как определено параметрами prev_column и next_column). В локалях слева на право, prev_column это потенциальную ячейку для переноса слева, а next_column это право. В режиме с право на лево, всё наоборот. Эта функция должна возвращать TRUE если ячейка доступна для перемещения. Пожалуйста помните, возвращаемое TRUE фактически не указывает на перенос столбца, а указывает только о возможности переноса ячейки для пользователя.

tree_view :

GtkTreeView

column :

GtkTreeViewColumn для переноса

prev_column :

GtkTreeViewColumn на одной стороне column

next_column :

GtkTreeViewColumn на другой стороне column

data :

Данные пользователя

Возвращает :

TRUE, если column может быть перемещён в эту ячейку


GtkTreeViewMappingFunc ()

void (*GtkTreeViewMappingFunc) (GtkTreeView *tree_view, GtkTreePath *path, gpointer user_data);

Функция используемая для gtk_tree_view_map_expanded_rows.

tree_view :

GtkTreeView

path :

Путь этого расширения

user_data :

данные пользователя


GtkTreeViewSearchEqualFunc ()

gboolean (*GtkTreeViewSearchEqualFunc) (GtkTreeModel *model, gint column, const gchar *key, GtkTreeIter *iter, gpointer search_data);

Функция используемая для контроля соответствует ли строка в model ключевой строке поиска введенной пользователем. Помните, возвращаемое значение обратно тому которое вы обычно ожидаете, однако она имеет некоторое сходство с strcmp(), для равных значений возвращается 0.

model :

GtkTreeModel для поиска

column :

Столбец поиска установленный с помощью gtk_tree_view_set_search_column()

key :

Ключевая строка для сравнения

iter :

GtkTreeIter указывающий строку model с которой должен сравниваться key.

search_data :

данные пользователя из gtk_tree_view_set_search_equal_func()

Возвращает :

FALSE если строки равны, иначе TRUE.


gtk_tree_view_new ()

GtkWidget*  gtk_tree_view_new               (void);

Создаёт новый виджет GtkTreeView.

Возвращает :

Вновь созданный виджет GtkTreeView.


gtk_tree_view_new_with_model ()

GtkWidget*  gtk_tree_view_new_with_model    (GtkTreeModel *model);

Создаёт новый GtkTreeView с моделью инициализируемой как model.

model :

модель.

Возвращает :

Вновь созданный GtkTreeView виджет.


gtk_tree_view_get_model ()

GtkTreeModel* gtk_tree_view_get_model       (GtkTreeView *tree_view);

Возвращает модель на которой основан GtkTreeView. Возвращает NULL если модель не установлена.

tree_view :

GtkTreeView

Возвращает :

GtkTreeModel, или NULL если нет используемой в текущий момент.


gtk_tree_view_set_model ()

void gtk_tree_view_set_model (GtkTreeView *tree_view, GtkTreeModel *model);

Устанавливает модель для GtkTreeView. Если tree_view уже имеет установленную модель, она переписывает предыдущие установки новой моделью. Если model равна NULL, то когда предыдущая модель удаляется.

tree_view :

GtkTreeNode.

model :

модель.


gtk_tree_view_get_selection ()

GtkTreeSelection* gtk_tree_view_get_selection (GtkTreeView *tree_view);

Выдаёт GtkTreeSelection связанный с tree_view.

tree_view :

GtkTreeView.

Возвращает :

GtkTreeSelection объект.


gtk_tree_view_get_hadjustment ()

GtkAdjustment* gtk_tree_view_get_hadjustment (GtkTreeView *tree_view);

Выдаёт GtkAdjustment используемый в текущий момент для горизонтального аспекта.

tree_view :

GtkTreeView

Возвращает :

GtkAdjustment объект, или NULL если нет используемого в текущий момент.


gtk_tree_view_set_hadjustment ()

void gtk_tree_view_set_hadjustment (GtkTreeView *tree_view, GtkAdjustment *adjustment);

Устанавливает GtkAdjustment для текущемго горизонтального аспекта.

tree_view :

GtkTreeView

adjustment :

GtkAdjustment для установки, или NULL


gtk_tree_view_get_vadjustment ()

GtkAdjustment* gtk_tree_view_get_vadjustment (GtkTreeView *tree_view);

Выдаёт GtkAdjustment используемый в текущий момент для вертикального аспекта.

tree_view :

GtkTreeView

Возвращает :

GtkAdjustment объект, или NULL если нет используемого в текущий момент.


gtk_tree_view_set_vadjustment ()

void gtk_tree_view_set_vadjustment (GtkTreeView *tree_view, GtkAdjustment *adjustment);

Устанавливает GtkAdjustment для текущемго вертикального аспекта.

tree_view :

GtkTreeView

adjustment :

GtkAdjustment для установки, или NULL


gtk_tree_view_get_headers_visible ()

gboolean gtk_tree_view_get_headers_visible (GtkTreeView *tree_view);

Возвращает TRUE заголовки в tree_view видимы.

tree_view :

GtkTreeView.

Возвращает :

Видимы ли заголовки или нет.


gtk_tree_view_set_headers_visible ()

void gtk_tree_view_set_headers_visible (GtkTreeView *tree_view, gboolean headers_visible);

Устанавливает состояние видимости заголовков.

tree_view :

GtkTreeView.

headers_visible :

TRUE если заголовки видимы


gtk_tree_view_columns_autosize ()

void        gtk_tree_view_columns_autosize  (GtkTreeView *tree_view);

Изменяет размер всех столбцов до оптимальной ширины. Работает только после реализации древовидного просмотра.

tree_view :

GtkTreeView.


gtk_tree_view_get_headers_clickable ()

gboolean gtk_tree_view_get_headers_clickable (GtkTreeView *tree_view);

Возвращает доступны ли все заголовки столбцов для нажатия.

tree_view :

GtkTreeView.

Возвращает :

TRUE если все заголовки столбцов доступны для нажатия, иначе FALSE

Начиная с версии 2.10


gtk_tree_view_set_headers_clickable ()

void gtk_tree_view_set_headers_clickable (GtkTreeView *tree_view, gboolean setting);

Позволяет нажимать кнопки заголовков столбцов.

tree_view :

GtkTreeView.

setting :

TRUE если заголовки доступны для нажатия.


gtk_tree_view_set_rules_hint ()

void gtk_tree_view_set_rules_hint (GtkTreeView *tree_view, gboolean setting);

Эта функция сообщает GTK+ что интерфейс пользователя вашего приложения чередует разные по цвету строки и связанные между собой ячейки. По умолчанию, GTK+ будет отображать дерево с разными по цвету строками. Не используйте её только потому, что вы предпочитаете плоский вид дерева; это можно настроить темой. Некоторые темы будут отображать строки разными цветами даже когда правила выключены и пользователи предпочитающие данный вид могут выбрать эти темы. Вы должны вызывать эту функцию только как семантическую подсказку для движка темы, что делает разность цветов вашего дерева полезной с функциональной точки зрения (так как обычно оно имеет множество столбцов).

tree_view :

GtkTreeView

setting :

TRUE если дерево требует через строчную интерпретацию


gtk_tree_view_get_rules_hint ()

gboolean    gtk_tree_view_get_rules_hint    (GtkTreeView *tree_view);

Выдаёт настройки установленные с помощью gtk_tree_view_set_rules_hint().

tree_view :

GtkTreeView

Возвращает :

TRUE если правила для использования этим деревом получены


gtk_tree_view_append_column ()

gint gtk_tree_view_append_column (GtkTreeView *tree_view, GtkTreeViewColumn *column);

Устанавливает column в начало списка столбцов. Если tree_view имеет "fixed_height" режим включенным, то column должен иметь свойство "sizing" установленным в GTK_TREE_VIEW_COLUMN_FIXED.

tree_view :

GtkTreeView.

column :

Добавляемый GtkTreeViewColumn.

Возвращает :

Число столбцов в tree_view после добавления.


gtk_tree_view_remove_column ()

gint gtk_tree_view_remove_column (GtkTreeView *tree_view, GtkTreeViewColumn *column);

Удаляет column из tree_view.

tree_view :

GtkTreeView.

column :

Удаляемый GtkTreeViewColumn.

Возвращает :

Число столбцов в tree_view после удаления.


gtk_tree_view_insert_column ()

gint gtk_tree_view_insert_column (GtkTreeView *tree_view, GtkTreeViewColumn *column, gint position);

Вставляет column в tree_view в позицию position. Если position равна -1, то когда столбец вставляется в конец. Если tree_view имеет "fixed_height" режим включенным, то column должен иметь свойство "sizing" установленное в значение GTK_TREE_VIEW_COLUMN_FIXED.

tree_view :

GtkTreeView.

column :

Вставляемый GtkTreeViewColumn.

position :

Позиция для вставки column.

Возвращает :

Число столбцов после вставки tree_view.


gtk_tree_view_insert_column_with_attributes ()

gint gtk_tree_view_insert_column_with_attributes (GtkTreeView *tree_view, gint position, const gchar *title, GtkCellRenderer *cell, ...);

Создаёт новый GtkTreeViewColumn и вставляет его в tree_view в позицию position. Если position равна -1, то когда вновь созданный столбец вставляется в конец. Столбец инициализируется с полученными атрибутами. Если tree_view имеет "fixed_height" режим включенным, то новый столбец будет иметь свойство размера установленное в значение GTK_TREE_VIEW_COLUMN_FIXED.

tree_view :

GtkTreeView

position :

Позиция для вставки нового столбца.

title :

Заголовок.

cell :

GtkCellRenderer.

... :

NULL-завершённый список параметров.

Возвращает :

Число столбцов в tree_view после вставки.


gtk_tree_view_insert_column_with_data_func ()

gint gtk_tree_view_insert_column_with_data_func (GtkTreeView *tree_view, gint position, const gchar *title, GtkCellRenderer *cell, GtkTreeCellDataFunc func, gpointer data, GDestroyNotify dnotify);

Удобная функция для вставки столбцов в GtkTreeView с полученной ячейкой представления и GtkCellDataFunc для установки свойств ячейки представления (обычно используются данные из модели). Смотрите также gtk_tree_view_column_set_cell_data_func(), gtk_tree_view_column_pack_start(). Если tree_view имеет включенный режим "fixed_height", то новый столбец будет иметь свойство "sizing" установленное в значение GTK_TREE_VIEW_COLUMN_FIXED.

tree_view :

GtkTreeView

position :

Позиция для вставки, -1 для вставки в начало

title :

Заголовок столбца

cell :

Ячейка представления столбца

func :

Функция для установки свойств ячейки представления

data :

Данные для func

dnotify :

Разрушающее уведомление для data

Возвращает :

Число столбцов в дереве просмотра после вставки


gtk_tree_view_get_column ()

GtkTreeViewColumn* gtk_tree_view_get_column (GtkTreeView *tree_view, gint n);

Выдаёт GtkTreeViewColumn из полученной позиции в tree_view.

tree_view :

GtkTreeView.

n :

Позиция столбца, начиная с 0.

Возвращает :

GtkTreeViewColumn, или NULL если позиция выходит за диапазон столбцов.


gtk_tree_view_get_columns ()

GList*      gtk_tree_view_get_columns       (GtkTreeView *tree_view);

Возвращает GList всех GtkTreeViewColumn находящихся в текущий момент в tree_view. Возвращаемый список должен освобождаться с помощью g_list_free().

tree_view :

GtkTreeView

Возвращает :

Список GtkTreeViewColumn


gtk_tree_view_move_column_after ()

void gtk_tree_view_move_column_after (GtkTreeView *tree_view, GtkTreeViewColumn *column, GtkTreeViewColumn *base_column);

Перемещает column в позицию после base_column. Если base_column равен NULL, то column помещается в первую позицию.

tree_view :

GtkTreeView

column :

GtkTreeViewColumn для перемещения.

base_column :

GtkTreeViewColumn относительно которого перемещается столбец, или NULL.


gtk_tree_view_set_expander_column ()

void gtk_tree_view_set_expander_column (GtkTreeView *tree_view, GtkTreeViewColumn *column);

Устанавливает столбец для представления расширительной стрелки. Он должен быть в tree_view. Если column равен NULL, то расширительная стрелка всегда в первом видимом столбце.

Если вы не хотите чтобы расширительная стрелка появлялась в вашем дереве, установите дополнительный столбец в скрытый столбец.

tree_view :

GtkTreeView

column :

NULL, или столбец для представления расширительной стрелки.


gtk_tree_view_get_expander_column ()

GtkTreeViewColumn* gtk_tree_view_get_expander_column (GtkTreeView *tree_view);

Возвращает текущий расширительный столбец. Этот столбец имеет стрелку расширителя отображаемую рядом.

tree_view :

GtkTreeView

Возвращает :

Расширительный столбец.


gtk_tree_view_set_column_drag_function ()

void gtk_tree_view_set_column_drag_function (GtkTreeView *tree_view, GtkTreeViewColumnDropFunc func, gpointer user_data, GtkDestroyNotify destroy);

Устанавливает функцию для определения где столбец может быть вставлен при перетаскивании. Эта функция вызывается на каждой паре столбцов в начале перетаскивания для определения куда можно поместить перетаскиваемый столбец. Аргументы помещаемые в func : tree_view, GtkTreeViewColumn для перетаскивания, два GtkTreeViewColumns определяющих ячейку вставки и user_data. Если любой из аргументов GtkTreeViewColumn является NULL, то это означает край. Если func установлена в NULL, то tree_view возвращается к поведению по умолчанию позволяя всем столбцам перемещаться везде.

tree_view :

GtkTreeView.

func :

Функция определяющая какие столбцы переупорядочиваются, или NULL.

user_data :

данные пользователя для помещения в func, или NULL

destroy :

Разрушающее уведомление для user_data, или NULL


gtk_tree_view_scroll_to_point ()

void gtk_tree_view_scroll_to_point (GtkTreeView *tree_view, gint tree_x, gint tree_y);

Прокручивает дерево просмотра так, что верхний-левый угол видимой области равен tree_x, tree_y, где tree_x и tree_y определяются в координатах окна дерева. tree_view должен быть реализован перед использованием этой функции. Если нет, вам вероятно нужно использовать gtk_tree_view_scroll_to_cell().

Если значение параметра tree_x или tree_y равно -1, то когда направление не прокручивается.

tree_view :

GtkTreeView

tree_x :

X координата нового верхнего-левого пиксела видимой области, или -1

tree_y :

Y координата нового верхнего-левого пиксела видимой области, или -1


gtk_tree_view_scroll_to_cell ()

void gtk_tree_view_scroll_to_cell (GtkTreeView *tree_view, GtkTreePath *path, GtkTreeViewColumn *column, gboolean use_align, gfloat row_align, gfloat col_align);

Перемещает выравнивание tree_view в позицию определённую column и path. Если column это NULL, то горизонтальная прокрутка не выполняется. Аналогично, если path равен NULL вертикальная прокрутка не выполняется. Как минимум один из column или path должен быть не-NULL. row_align определяет где помещается строка, а col_align определяет где помещается столбец column. Оба располагаются в промежутке между 0.0 и 1.0. 0.0 означает левое/верхнее выравнивание, 1.0 означает правое/нижнее выравнивание, 0.5 означает центр.

Если use_align равен FALSE, то аргументы выравнивания игнорируются, а дерево выполняет минимальный объём работы для прокручивания ячейки на экран. Это означает что ячейка будет прокручена до наиболее близкого края своей текущемй позиции. Если ячейка уже видима на экране, то ничего не произойдёт.

Эта функция работает только если модель установлена, а path это допустимая строка в модели. Если модель изменяется перед изменением размера tree_view, центральный путь будет изменён для отражения этих изменений.

tree_view :

GtkTreeView.

path :

Путь перемещаемой строки, или NULL.

column :

GtkTreeViewColumn для горизонтального перемещения, или NULL.

use_align :

Используются ли аргументы выравнивания, или FALSE.

row_align :

Вертикальное выравнивание строки определенной path.

col_align :

Горизонтальное выравнивание столбца определенного column.


gtk_tree_view_set_cursor ()

void gtk_tree_view_set_cursor (GtkTreeView *tree_view, GtkTreePath *path, GtkTreeViewColumn *focus_column, gboolean start_editing);

Устанавливает текущий клавиатурный фокус соответствующий параметру path, и выбирает его. Это полезно для привлечения внимания пользователя к определенной строке. Если focus_column не NULL, то фокус представляется этому столбцу. Дополнительно, если focus_column определён, а start_editing равен TRUE, то редактирование должно начинаться в определенной ячейке. Эта функция часто сопровождается gtk_widget_grab_focus(tree_view) для предоставления фокуса виджету. Пожалуйста помните, что редактирование может происходить только когда виджет реализован.

tree_view :

GtkTreeView

path :

GtkTreePath

focus_column :

GtkTreeViewColumn, или NULL

start_editing :

TRUE если определенная ячейка должна быть началом редактирования.


gtk_tree_view_set_cursor_on_cell ()

void gtk_tree_view_set_cursor_on_cell (GtkTreeView *tree_view, GtkTreePath *path, GtkTreeViewColumn *focus_column, GtkCellRenderer *focus_cell, gboolean start_editing);

Устанавливает текущий клавиатурный фокус в значение path, и выбирает его. Это полезно когда вам нужно привлечь внимание пользователя к определенной строке. Если focus_column не NULL, то фокус предоставляется этому столбцу. Если focus_column и focus_cell не NULL, и focus_column содержит 2 и более редактируемых или активизируемых ячейки, то фокус отдаётся ячейке определенной параметром focus_cell. Дополнительно, если focus_column определен, а start_editing равен TRUE, то редактирование должно начинаться в определенной ячейке. Эта функция обычно сопровождается gtk_widget_grab_focus (tree_view) для предоставления фокуса виджету. Пожалуйста помните, что редактирование может происходить только когда виджет реализован.

tree_view :

GtkTreeView

path :

GtkTreePath

focus_column :

GtkTreeViewColumn, или NULL

focus_cell :

GtkCellRenderer, или NULL

start_editing :

TRUE если определенная ячейка должна начинать редактирование.

Начиная с версии 2.2


gtk_tree_view_get_cursor ()

void gtk_tree_view_get_cursor (GtkTreeView *tree_view, GtkTreePath **path, GtkTreeViewColumn **focus_column);

Заполняет поля path и focus_column текущими путём и сфокусированным столбцом. Если курсор в текущий момент не установлен, то *path будет NULL. Если нет текущемго сфокусированного столбца, то *focus_column будет NULL.

Возвращаемый GtkTreePath должен освобождаться с помощью gtk_tree_path_free().

tree_view :

GtkTreeView

path :

Заполняется текущим путём курсора, или NULL

focus_column :

Текущий сфокусированный столбец, или NULL


gtk_tree_view_row_activated ()

void gtk_tree_view_row_activated (GtkTreeView *tree_view, GtkTreePath *path, GtkTreeViewColumn *column);

Активизирует ячейку определенную параметрами path и column.

tree_view :

GtkTreeView

path :

GtkTreePath для активизации.

column :

GtkTreeViewColumn для активизации.


gtk_tree_view_expand_all ()

void        gtk_tree_view_expand_all        (GtkTreeView *tree_view);

Рекурсивно расширяет все элементы в tree_view.

tree_view :

GtkTreeView.


gtk_tree_view_collapse_all ()

void        gtk_tree_view_collapse_all      (GtkTreeView *tree_view);

Рекурсивно разрушает все видимые, расширенные элементы в tree_view.

tree_view :

GtkTreeView.


gtk_tree_view_expand_to_path ()

void gtk_tree_view_expand_to_path (GtkTreeView *tree_view, GtkTreePath *path);

Разворачивает строку в позиции path. Это также развернёт все родительские строки по мере необходимости.

tree_view :

GtkTreeView.

path :

Путь для строки.

Начиная с версии 2.2


gtk_tree_view_expand_row ()

gboolean gtk_tree_view_expand_row (GtkTreeView *tree_view, GtkTreePath *path, gboolean open_all);

Открывает строку, чтобы были видимы дочерние элементы.

tree_view :

GtkTreeView

path :

Путь строки

open_all :

Должна ли раскрыться рекурсивно, или только непосредственные дочерние элементы

Возвращает :

TRUE если строка существует и имеет дочерние элементы


gtk_tree_view_collapse_row ()

gboolean gtk_tree_view_collapse_row (GtkTreeView *tree_view, GtkTreePath *path);

Сворачивает строку (скрывает её дочерние строки, если есть).

tree_view :

GtkTreeView

path :

Путь для строки в tree_view

Возвращает :

TRUE если строка была свёрнута.


gtk_tree_view_map_expanded_rows ()

void gtk_tree_view_map_expanded_rows (GtkTreeView *tree_view, GtkTreeViewMappingFunc func, gpointer data);

Вызывает func для всех развёрнутых строк.

tree_view :

GtkTreeView

func :

Вызываемая функция

data :

данные пользователя для помещения в функцию.


gtk_tree_view_row_expanded ()

gboolean gtk_tree_view_row_expanded (GtkTreeView *tree_view, GtkTreePath *path);

Возвращает TRUE если элемент указанный в path расширен в tree_view.

tree_view :

GtkTreeView.

path :

GtkTreePath для проверки состояния расширения.

Возвращает :

TRUE если путь расширен.


gtk_tree_view_set_reorderable ()

void gtk_tree_view_set_reorderable (GtkTreeView *tree_view, gboolean reorderable);

Это удобная функция которая позволяет вам пере-упорядочивать модель которая поддерживает GtkDragSourceIface и GtkDragDestIface. Оба GtkTreeStore и GtkListStore поддерживают их. Если reorderable равен TRUE, то пользователь может пере-упорядочивать модель перетаскивая строки. Разработчик может слушать эти изменения подключая к модели row_inserted и row_deleted сигналы.

Эта функция не даёт вам никакого уровня контроля над порядком позволяется любое переупорядочивание. Если нужно больше контроля, вы должны вероятно обрабатывать drag and drop самостоятельно.

tree_view :

GtkTreeView.

reorderable :

TRUE, если дерево может изменять порядок.


gtk_tree_view_get_reorderable ()

gboolean    gtk_tree_view_get_reorderable   (GtkTreeView *tree_view);

Определяет может ли пользователь изменять порядок дерева с помощью drag-and-drop. Смотрите gtk_tree_view_set_reorderable().

tree_view :

GtkTreeView

Возвращает :

TRUE если дерево может менять порядок.


gtk_tree_view_get_path_at_pos ()

gboolean gtk_tree_view_get_path_at_pos (GtkTreeView *tree_view, gint x, gint y, GtkTreePath **path, GtkTreeViewColumn **column, gint *cell_x, gint *cell_y);

Находит путь в точке (x, y), относительно координат виджета. Таким образом, x и y являются относительными для координат события. x и y должны исходить из события в tree_view только где event->window == gtk_tree_view_get_bin(). Это первостепенно для таких вещей как всплывающее меню. Если path не-NULL, то он будет заполнен объектом GtkTreePath в этой точке. Этот путь должен быть освобождён с помощью gtk_tree_path_free(). Если column не-NULL, то он будет заполнен столбцом в этой точке. cell_x и cell_y возвращает координаты относительно подготовленной ячейки (то есть background_area помещается в gtk_cell_renderer_render()). Эта функция имеет значение только если tree_view реализован.

tree_view :

GtkTreeView.

x :

x позиция для идентификации.

y :

y позиция для идентификации.

path :

Указатель GtkTreePath, или NULL

column :

Указатель GtkTreeViewColumn, или NULL

cell_x :

X координата относительная для помещаемой ячейки, или NULL

cell_y :

Y координата относительная для помещаемой ячейки, или NULL

Возвращает :

TRUE если строка существует в этих координатах.


gtk_tree_view_get_cell_area ()

void gtk_tree_view_get_cell_area (GtkTreeView *tree_view, GtkTreePath *path, GtkTreeViewColumn *column, GdkRectangle *rect);

Заполняет ограничивающий прямоугольник в оконных координатах дерева для ячейки в строке определенной параметром path и столбце определенном параметром column. Если path равен NULL, или указывает путь не отображенный в текущий момент, y и height поля прямоугольника будут заполнены 0. Если column равен NULL, x и width заполняются 0. Итог всей ячейки не покрывает все дерево; например есть дополнительные пикселы между строками. Возвращаемый прямоугольник эквивалентен cell_area помещаемой в gtk_cell_renderer_render(). Эта функция доступна только если tree_view реализован.

tree_view :

GtkTreeView

path :

GtkTreePath для строки, или NULL для получения только горизонтальных координат

column :

GtkTreeViewColumn для столбца, или NULL для получения только вертикальных координат

rect :

Прямоугольник для заполнения получаемой ячейки


gtk_tree_view_get_background_area ()

void gtk_tree_view_get_background_area (GtkTreeView *tree_view, GtkTreePath *path, GtkTreeViewColumn *column, GdkRectangle *rect);

Заполняет ограничивающий прямоугольник в оконных координатах дерева для ячейки в строке определенной параметром path и столбце определенном параметром column. Если path равен NULL, или указывает на элемент не найденный в дереве, y и height поля прямоугольника заполняются 0. Если column равен NULL, x и width поля заполняются 0. Возвращаемый прямоугольник эквивалентен background_area помещаемой в gtk_cell_renderer_render(). Это фоновая область для покрытия всего окна дерева (за исключением кнопок заголовков). В противоположность cell_area, возвращаемой gtk_tree_view_get_cell_area(), которая возвращает только ячейку непосредственно, исключая окружающие границы и площадь расширителя дерева.

tree_view :

GtkTreeView

path :

GtkTreePath для строки, или NULL для получения только горизонтальных координат

column :

GtkTreeViewColumn для столбца, или NULL для получения только вертикальных координат

rect :

Прямоугольник для заполнения фоновой ячейки


gtk_tree_view_get_visible_rect ()

void gtk_tree_view_get_visible_rect (GtkTreeView *tree_view, GdkRectangle *visible_rect);

Заполняет visible_rect текущемй видимой областью буфера, в координатах дерева. Конвертируется в координаты виджета с помощью gtk_tree_view_tree_to_widget_coords(). Координаты дерева начинаются в 0,0 для 0 строки дерева и покрывают всю прокручиваемую область дерева.

tree_view :

GtkTreeView

visible_rect :

Прямоугольник для заполнения


gtk_tree_view_get_visible_range ()

gboolean gtk_tree_view_get_visible_range (GtkTreeView *tree_view, GtkTreePath **start_path, GtkTreePath **end_path);

Устанавливает start_path и end_path для первого и последнего видимого пути. Помните что между ними могут быть невидимые пути.

Пути должны освобождаться с помощью gtk_tree_path_free() после использования.

tree_view :

GtkTreeView

start_path :

Место для хранения значения начала области, или NULL.

end_path :

Место для хранения значения конца области, или NULL.

Возвращает :

TRUE, если доступные пути размещены в start_path и end_path.

Начиная с версии 2.8


gtk_tree_view_get_bin_window ()

GdkWindow*  gtk_tree_view_get_bin_window    (GtkTreeView *tree_view);

Возвращает окно отображающее tree_view. Это используется прежде всего для сравнения event->window , чтобы подтвердить что событие в tree_view находится в правильном окне.

tree_view :

GtkTreeView

Возвращает :

GdkWindow, или NULL когда tree_view не реализован


gtk_tree_view_widget_to_tree_coords ()

void gtk_tree_view_widget_to_tree_coords (GtkTreeView *tree_view, gint wx, gint wy, gint *tx, gint *ty);

Преобразует координаты виджета в координаты окна дерева (полная область прокручивания дерева).

tree_view :

GtkTreeView

wx :

X координата виджета

wy :

Y координата виджета

tx :

Место для хранения возвращаемого значения X координаты дерева

ty :

Место для хранения возвращаемого значения Y координаты дерева


gtk_tree_view_tree_to_widget_coords ()

void gtk_tree_view_tree_to_widget_coords (GtkTreeView *tree_view, gint tx, gint ty, gint *wx, gint *wy);

Преобразует координаты дерева (координаты всей прокручиваемой области дерева) в координаты виджета.

tree_view :

GtkTreeView

tx :

X координата дерева

ty :

Y координата дерева

wx :

Место для хранения возвращаемого значения X координаты виджета

wy :

Место для хранения возвращаемого значения Y координаты виджета


gtk_tree_view_enable_model_drag_dest ()

void gtk_tree_view_enable_model_drag_dest (GtkTreeView *tree_view, const GtkTargetEntry *targets, gint n_targets, GdkDragAction actions);

Включает tree_view в адресат назначения для автоматического DND.

tree_view :

GtkTreeView

targets :

Таблица адресов которые поддерживает перетаскивание

n_targets :

Число пунктов в targets

actions :

Возможность перетаскивания из виджета (битовое)


gtk_tree_view_enable_model_drag_source ()

void gtk_tree_view_enable_model_drag_source (GtkTreeView *tree_view, GdkModifierType start_button_mask, const GtkTargetEntry *targets, gint n_targets, GdkDragAction actions);

Включает tree_view в источник перетаскивания для автоматического DND.

tree_view :

GtkTreeView

start_button_mask :

Маска доступных кнопок для начала перетаскивания

targets :

Таблица адресов поддерживаемых перетаскиванием

n_targets :

Число пунктов в targets

actions :

Возможность перетаскивания из виджета (битовое)


gtk_tree_view_unset_rows_drag_source ()

void gtk_tree_view_unset_rows_drag_source (GtkTreeView *tree_view);

Отменяет эффект gtk_tree_view_enable_model_drag_source().

tree_view :

GtkTreeView


gtk_tree_view_unset_rows_drag_dest ()

void gtk_tree_view_unset_rows_drag_dest (GtkTreeView *tree_view);

Отменяет эффект gtk_tree_view_enable_model_drag_dest().

tree_view :

GtkTreeView


gtk_tree_view_set_drag_dest_row ()

void gtk_tree_view_set_drag_dest_row (GtkTreeView *tree_view, GtkTreePath *path, GtkTreeViewDropPosition pos);

Устанавливает подсветку строки для обратной связи.

tree_view :

GtkTreeView

path :

Путь строки для подсвечивания, или NULL.

pos :

Определяет перетаскивается ли до, после, или в строку


gtk_tree_view_get_drag_dest_row ()

void gtk_tree_view_get_drag_dest_row (GtkTreeView *tree_view, GtkTreePath **path, GtkTreeViewDropPosition *pos);

Выдаёт информацию о подсвеченной строке для обратной связи.

tree_view :

GtkTreeView

path :

Место для хранения возвращаемого значения указывающего путь подсвеченной строки, или NULL.

pos :

Место для хранения возвращаемого значения позиции перетаскивания, или NULL


gtk_tree_view_get_dest_row_at_pos ()

gboolean gtk_tree_view_get_dest_row_at_pos (GtkTreeView *tree_view, gint drag_x, gint drag_y, GtkTreePath **path, GtkTreeViewDropPosition *pos);

Определяет строку адресата для данной позиции.

tree_view :

GtkTreeView

drag_x :

Позиция для определения строки адресата

drag_y :

Позиция для определения строки адресата

path :

Место для хранения возвращаемого значения указывающего путь подсвечиваемой строки, или NULL.

pos :

Место для хранения возвращаемого значения позиции перетаскивания, или NULL

Возвращает :

Есть ли строка в данной позиции.


gtk_tree_view_create_row_drag_icon ()

GdkPixmap* gtk_tree_view_create_row_drag_icon (GtkTreeView *tree_view, GtkTreePath *path);

Создаёт GdkPixmap представляющий строку в позиции path. Это изображение используется для значка перетаскивания.

tree_view :

GtkTreeView

path :

GtkTreePath в tree_view

Возвращает :

Вновь размещенное изображение значка перетаскивания.


gtk_tree_view_set_enable_search ()

void gtk_tree_view_set_enable_search (GtkTreeView *tree_view, gboolean enable_search);

Если enable_search установлен, то пользователь может впечатывать в текст для интерактивного поиска (это иногда называют "typeahead find").

Помните, даже если установлено FALSE, пользователь всё ещё может начать поиск используя привязку клавиш "start-interactive-search".

tree_view :

GtkTreeView

enable_search :

TRUE, если пользователь может искать интерактивно


gtk_tree_view_get_enable_search ()

gboolean    gtk_tree_view_get_enable_search (GtkTreeView *tree_view);

Определяет может или нет дерево позволить интерактивный поиск.

tree_view :

GtkTreeView

Возвращает :

Позволен или нет пользователю интерактивный поиск


gtk_tree_view_get_search_column ()

gint        gtk_tree_view_get_search_column (GtkTreeView *tree_view);

Выдаёт столбец для интерактивного поиска кода.

tree_view :

GtkTreeView

Возвращает :

Столбец в котором происходит интерактивный поиск кода.


gtk_tree_view_set_search_column ()

void gtk_tree_view_set_search_column (GtkTreeView *tree_view, gint column);

Устанавливает column как столбец в котором должен происходить интерактивный поиск кода.

Если установлен сортированный столбец, пользователи могут использовать "start-interactive-search" привязку клавиш для начала поиска. Включение свойства поиска контролирует будет ли начинаться интерактивный поиск при простом вводе в текст.

Помните, column ссылается на столбец модели.

tree_view :

GtkTreeView

column :

Столбец модели для поиска, или -1 для отключения поиска


gtk_tree_view_get_search_equal_func ()

GtkTreeViewSearchEqualFunc gtk_tree_view_get_search_equal_func (GtkTreeView *tree_view);

Возвращает функцию сравнения используемую в текущий момент.

tree_view :

GtkTreeView

Возвращает :

Используемая в текущий момент функция сравнения для поиска кода.


gtk_tree_view_set_search_equal_func ()

void gtk_tree_view_set_search_equal_func (GtkTreeView *tree_view, GtkTreeViewSearchEqualFunc search_equal_func, gpointer search_user_data, GtkDestroyNotify search_destroy);

Устанавливает функцию сравнения для интерактивного поиска возможностей; отметьте, отчасти похоже на strcmp() возвращает 0 при равенстве, GtkTreeViewSearchEqualFunc возвращает FALSE для соответствий.

tree_view :

GtkTreeView

search_equal_func :

Функция сравнения для использования при поиске

search_user_data :

данные пользователя помещаемые в search_equal_func, или NULL

search_destroy :

Разрушающее уведомление для search_user_data, или NULL


gtk_tree_view_get_search_entry ()

GtkEntry*   gtk_tree_view_get_search_entry  (GtkTreeView *tree_view);

Возвращает GtkEntry который в текущий момент используется как ввод для интерактивного поиска для tree_view. В случае использования встроенного ввода, возвращается NULL.

tree_view :

GtkTreeView

Возвращает :

Текущее поля ввода для поиска.

Начиная с версии 2.10


gtk_tree_view_set_search_entry ()

void gtk_tree_view_set_search_entry (GtkTreeView *tree_view, GtkEntry *entry);

Устанавливает ввод для интерактивного поиска используемый для tree_view. Это полезно когда вы хотите обеспечить поле поиска в интерфейсе постоянно в зафиксированной позиции. Помещённый NULL для entry заставит использовать встроенное, всплывающее поле поиска.

tree_view :

GtkTreeView

entry :

Используемое поле интерактивного поиска для tree_view, или NULL

Начиная с версии 2.10


GtkTreeViewSearchPositionFunc ()

void (*GtkTreeViewSearchPositionFunc) (GtkTreeView *tree_view, GtkWidget *search_dialog, gpointer user_data);

tree_view :

search_dialog :

user_data :


gtk_tree_view_get_search_position_func ()

GtkTreeViewSearchPositionFunc gtk_tree_view_get_search_position_func (GtkTreeView *tree_view);

Возвращает используемую в текущеме время функцию позиционирования.

tree_view :

GtkTreeView

Возвращает :

Используемая в текущий момент функция позиционирования диалога поиска.

Начиная с версии 2.10


gtk_tree_view_set_search_position_func ()

void gtk_tree_view_set_search_position_func (GtkTreeView *tree_view, GtkTreeViewSearchPositionFunc func, gpointer data, GDestroyNotify destroy);

Устанавливает функцию используемую для позиционирования диалога поиска.

tree_view :

GtkTreeView

func :

Функция используемая для диалога поиска, или NULL для использования позиции по умолчанию

data :

данные пользователя помещаемые в func, или NULL

destroy :

Разрушающее уведомление для data, или NULL

Начиная с версии 2.10


gtk_tree_view_get_fixed_height_mode ()

gboolean gtk_tree_view_get_fixed_height_mode (GtkTreeView *tree_view);

Определяет включен ли установленный режим высоты для tree_view.

tree_view :

GtkTreeView

Возвращает :

TRUE если tree_view в режиме фиксированной высоты

Начиная с версии 2.6


gtk_tree_view_set_fixed_height_mode ()

void gtk_tree_view_set_fixed_height_mode (GtkTreeView *tree_view, gboolean enable);

Включает или выключает режим фиксированной высоты tree_view. Режим фиксированной высоты GtkTreeView предполагает что все строки имеют одинаковую высоту. Эта опция допустима только если все строки одинаковой высоты а все столбцы типа GTK_TREE_VIEW_COLUMN_FIXED.

tree_view :

GtkTreeView

enable :

TRUE для включения режима фиксированной высоты

Начиная с версии 2.6


gtk_tree_view_get_hover_selection ()

gboolean gtk_tree_view_get_hover_selection (GtkTreeView *tree_view);

Определяет включен ли режим плавающего выбора для tree_view.

tree_view :

GtkTreeView

Возвращает :

TRUE если tree_view в режиме плавающего выбора

Начиная с версии 2.6


gtk_tree_view_set_hover_selection ()

void gtk_tree_view_set_hover_selection (GtkTreeView *tree_view, gboolean hover);

Включает или выключает режим плавающего выбора для tree_view. Режим плавающего выбора заставляет выделенную строку следовать за указателем. В настоящее время это работает только для режимов выделения GTK_SELECTION_SINGLE и GTK_SELECTION_BROWSE.

tree_view :

GtkTreeView

hover :

TRUE включает плавающее выделение

Начиная с версии 2.6


gtk_tree_view_get_hover_expand ()

gboolean    gtk_tree_view_get_hover_expand  (GtkTreeView *tree_view);

Определяет включен ли режим плавающего расширения для tree_view.

tree_view :

GtkTreeView

Возвращает :

TRUE если tree_view в режиме плавающего расширения

Начиная с версии 2.6


gtk_tree_view_set_hover_expand ()

void gtk_tree_view_set_hover_expand (GtkTreeView *tree_view, gboolean expand);

Включает или выключает режим плавающего расширения для tree_view. Плавающее расширение заставляет строки разворачиваться или сворачиваться если указатель передвигается над ними.

tree_view :

GtkTreeView

expand :

TRUE для включения плавающего расширения

Начиная с версии 2.6


GtkTreeDestroyCountFunc ()

void (*GtkTreeDestroyCountFunc) (GtkTreeView *tree_view, GtkTreePath *path, gint children, gpointer user_data);

tree_view :

path :

children :

user_data :


gtk_tree_view_set_destroy_count_func ()

void gtk_tree_view_set_destroy_count_func (GtkTreeView *tree_view, GtkTreeDestroyCountFunc func, gpointer data, GtkDestroyNotify destroy);

Эта функция в основном не должна использоваться. Она предназначена для закрытого использования в ATK, для определения количества видимости дочерних элементов которые удаляются когда пользователь сворачивает строку, или строка удаляется.

tree_view :

GtkTreeView

func :

Функция вызываемая при удалении видимой строки, или NULL

data :

данные пользователя помещаемые в func, или NULL

destroy :

Разрушающее уведомление для data, или NULL


GtkTreeViewRowSeparatorFunc ()

gboolean (*GtkTreeViewRowSeparatorFunc) (GtkTreeModel *model, GtkTreeIter *iter, gpointer data);

Функциональный тип для определения должна ли строка на которую указывает iter представляться как разделитель. Общий способ осуществления этого, заключается в наличии логического столбца в модели, значение которого возвращает GtkTreeViewRowSeparatorFunc.

model :

GtkTreeModel

iter :

GtkTreeIter указывающий строку в model

data :

данные пользователя

Возвращает :

TRUE если строка - разделитель.


gtk_tree_view_get_row_separator_func ()

GtkTreeViewRowSeparatorFunc gtk_tree_view_get_row_separator_func (GtkTreeView *tree_view);

Возвращает текущую функцию строки разделителя.

tree_view :

GtkTreeView

Возвращает :

Текущая функция строки разделителя.

Начиная с версии 2.6


gtk_tree_view_set_row_separator_func ()

void gtk_tree_view_set_row_separator_func (GtkTreeView *tree_view, GtkTreeViewRowSeparatorFunc func, gpointer data, GtkDestroyNotify destroy);

Устанавливает функцию строки разделителя, которая используется для определения отображается ли строка как разделитель. Если функция строки разделителя NULL, нет отображаемых разделителей. Это значение по умолчанию.

tree_view :

GtkTreeView

func :

GtkTreeViewRowSeparatorFunc

data :

данные пользователя помещаемые в func, или NULL

destroy :

Разрушающее уведомление для data, или NULL

Начиная с версии 2.6


gtk_tree_view_get_rubber_banding ()

gboolean gtk_tree_view_get_rubber_banding (GtkTreeView *tree_view);

Определяет включен ли метод резиновой нити для tree_view. Если режим выделения GTK_SELECTION_MULTIPLE, метод резиновой нити позволит пользователю выделять множество строк перемещая мышь.

tree_view :

GtkTreeView

Возвращает :

TRUE если метод резиновой нити для tree_view включен.

Начиная с версии 2.10


gtk_tree_view_set_rubber_banding ()

void gtk_tree_view_set_rubber_banding (GtkTreeView *tree_view, gboolean enable);

Включает или выключает метод резиновой нити в tree_view. Если режим выделения GTK_SELECTION_MULTIPLE, метод резиновой нити позволит пользователю выделять множество строк перемещая мышь.

tree_view :

GtkTreeView

enable :

TRUE для включения метода резиновой нити

Начиная с версии 2.10


gtk_tree_view_get_enable_tree_lines ()

gboolean gtk_tree_view_get_enable_tree_lines (GtkTreeView *tree_view);

Определяет отображаются ли линии в tree_view.

tree_view :

GtkTreeView.

Возвращает :

TRUE если линии дерева отображаются в tree_view, иначе FALSE.

Начиная с версии 2.10


gtk_tree_view_set_enable_tree_lines ()

void gtk_tree_view_set_enable_tree_lines (GtkTreeView *tree_view, gboolean enabled);

Устанавливает отображаются ли линии связывающие расширители в tree_view. Это не имеет видимого эффекта для списков.

tree_view :

GtkTreeView

enabled :

TRUE для включения отображения линий дерева, иначе FALSE.

Начиная с версии 2.10


enum GtkTreeViewGridLines

typedef enum { GTK_TREE_VIEW_GRID_LINES_NONE, GTK_TREE_VIEW_GRID_LINES_HORIZONTAL, GTK_TREE_VIEW_GRID_LINES_VERTICAL, GTK_TREE_VIEW_GRID_LINES_BOTH } GtkTreeViewGridLines;

gtk_tree_view_get_grid_lines ()

GtkTreeViewGridLines gtk_tree_view_get_grid_lines (GtkTreeView *tree_view);

Определяет какие линии сетки включены в tree_view.

tree_view :

GtkTreeView

Возвращает :

GtkTreeViewGridLines значение указывающее какие линии сетки включены.

Начиная с версии 2.10


gtk_tree_view_set_grid_lines ()

void gtk_tree_view_set_grid_lines (GtkTreeView *tree_view, GtkTreeViewGridLines grid_lines);

Устанавливает какие линии сетки отображать в tree_view.

tree_view :

GtkTreeView

grid_lines :

GtkTreeViewGridLines значение указывающее какие линии сетки включены.

Начиная с версии 2.10

Детали свойств

Свойство "enable-grid-lines"

  "enable-grid-lines"    GtkTreeViewGridLines  : Read / Write

Должны ли линии сетки отображаться в дереве просмотра.

Значение по умолчанию: GTK_TREE_VIEW_GRID_LINES_NONE


Свойство "enable-search"

  "enable-search"        gboolean              : Read / Write

Позволяет пользователю интерактивный поиск в столбцах.

Значение по умолчанию: TRUE


Свойство "enable-tree-lines"

  "enable-tree-lines"    gboolean              : Read / Write

Должны ли отображаться линии дерева в дереве просмотра.

Значение по умолчанию: FALSE


Свойство "expander-column"

  "expander-column"      GtkTreeViewColumn     : Read / Write

Устанавливает столбец для расширительной колонки.


Свойство "fixed-height-mode"

  "fixed-height-mode"    gboolean              : Read / Write

Устанавливает свойство ::fixed-height-mode в TRUE для GtkTreeView предполагая что все строки имеют одинаковую высоту. Только включает эту опцию, если строки имеют одинаковую высоту. Подробности смотрите в gtk_tree_view_set_fixed_height_mode().

Значение по умолчанию: FALSE

Начиная с версии 2.4


Свойство "hadjustment"

  "hadjustment"          GtkAdjustment         : Read / Write

Горизонтальное выравнивание виджета.


Свойство "headers-clickable"

  "headers-clickable"    gboolean              : Read / Write

Заголовки столбцов реагируют на событие нажатия.

Значение по умолчанию: FALSE


Свойство "headers-visible"

  "headers-visible"      gboolean              : Read / Write

Показывать кнопки заголовков столбцов.

Значение по умолчанию: TRUE


Свойство "hover-expand"

  "hover-expand"         gboolean              : Read / Write

Включает или выключает плавающий режим для tree_view. Плавающий режим заставляет строки сворачиваться или разворачиваться если указатель перемещается над ними.

Это режим прежде всего для всплывающих просмотров дерева, например в GtkComboBox или GtkEntryCompletion.

Значение по умолчанию: FALSE

Начиная с версии 2.6


Свойство "hover-selection"

  "hover-selection"      gboolean              : Read / Write

Включает или выключает плавающее выделение для tree_view. Плавающее выделение заставляет выделенную строку следовать за указателем. В настоящее время это работает только для режимов выделения GTK_SELECTION_SINGLE и GTK_SELECTION_BROWSE.

Это режим прежде всего для всплывающих просмотров дерева, например в GtkComboBox или GtkEntryCompletion.

Значение по умолчанию: FALSE

Начиная с версии 2.6


Свойство "level-indentation"

  "level-indentation"    gint                  : Read / Write

Дополнительный отступ для каждого уровня.

Допустимые значения: >= 0

Значение по умолчанию: 0


Свойство "model"

  "model"                GtkTreeModel          : Read / Write

Модель для дерева просмотра.


Свойство "reorderable"

  "reorderable"          gboolean              : Read / Write

Возможность смены порядка.

Значение по умолчанию: FALSE


Свойство "rubber-banding"

  "rubber-banding"       gboolean              : Read / Write

Допускается ли выделение множества пунктов перемещением указателя.

Значение по умолчанию: FALSE


Свойство "rules-hint"

  "rules-hint"           gboolean              : Read / Write

Устанавливает подсказку для движка темы, чтобы отображать строки разными цветами.

Значение по умолчанию: FALSE


Свойство "search-column"

  "search-column"        gint                  : Read / Write

Столбец модели для поиска.

Допустимые значения: >= -1

Значение по умолчанию: -1


Свойство "show-expanders"

  "show-expanders"       gboolean              : Read / Write

Вид имеет расширители.

Значение по умолчанию: TRUE


Свойство "vadjustment"

  "vadjustment"          GtkAdjustment         : Read / Write

Вертикальное выравнивание для виджета.

Детали свойств стиля

Свойство стиля "allow-rules"

  "allow-rules"          gboolean              : Read

Позволяет отображать строки разными цветами.

Значение по умолчанию: TRUE


Свойство стиля "even-row-color"

  "even-row-color"       GdkColor              : Read

Цвет используемый для четных строк.


Свойство стиля "expander-size"

  "expander-size"        gint                  : Read

Размер расширяющей стрелки.

Допустимые значения: >= 0

Значение по умолчанию: 12


Свойство стиля "grid-line-pattern"

  "grid-line-pattern"    gchararray            : Read

Шаблон черты используемый для отображения линий сетки дерева просмотра.

Значение по умолчанию: "\001\001"


Свойство стиля "grid-line-width"

  "grid-line-width"      gint                  : Read

Ширина в пикселах линий сетки дерева просмотра.

Допустимые значения: >= 0

Значение по умолчанию: 1


Свойство стиля "horizontal-separator"

  "horizontal-separator" gint                  : Read

Горизонтальный интервал между ячейками. Должен быть целым числом.

Допустимые значения: >= 0

Значение по умолчанию: 2


Свойство стиля "indent-expanders"

  "indent-expanders"     gboolean              : Read

Создаёт выравнивание расширителя.

Значение по умолчанию: TRUE


Свойство стиля "odd-row-color"

  "odd-row-color"        GdkColor              : Read

Цвет для нечетных строк.


Свойство стиля "row-ending-details"

  "row-ending-details"   gboolean              : Read

Включает расширенный фон строк.

Значение по умолчанию: FALSE


Свойство стиля "tree-line-pattern"

  "tree-line-pattern"    gchararray            : Read

Шаблон черты используемой для отображения линий в дереве просмотра.

Значение по умолчанию: "\001\001"


Свойство стиля "tree-line-width"

  "tree-line-width"      gint                  : Read

Ширина линий дерева просмотра в пикселах.

Допустимые значения: >= 0

Значение по умолчанию: 1


Свойство стиля "vertical-separator"

  "vertical-separator"   gint                  : Read

Вертикальный интервал между ячейками. Должно быть целое число.

Допустимые значения: >= 0

Значение по умолчанию: 2

Детали сигналов

Сигнал "columns-changed"

void user_function (GtkTreeView *tree_view, gpointer user_data) : Run last

Изменение количества столбцов в дереве просмотра.

tree_view :

объект в котором издан сигнал

user_data :

пользовательские данные устанавливаемые при подключении обработчика сигнала.


Сигнал "cursor-changed"

void user_function (GtkTreeView *tree_view, gpointer user_data) : Run last

Изменение позиции курсора (фокусирование ячейки).

tree_view :

объект в котором издан сигнал

user_data :

пользовательские данные устанавливаемые при подключении обработчика сигнала.


Сигнал "expand-collapse-cursor-row"

gboolean user_function (GtkTreeView *treeview, gboolean arg1, gboolean arg2, gboolean arg3, gpointer user_data) : Run last / Action

treeview :

объект который получает сигнал.

arg1 :

arg2 :

arg3 :

user_data :

пользовательские данные устанавливаемые при подключении обработчика сигнала.

Возвращает :


Сигнал "move-cursor"

gboolean user_function (GtkTreeView *treeview, GtkMovementStep *arg1, gint arg2, gpointer user_data) : Run last / Action

treeview :

объект который получает сигнал.

arg1 :

arg2 :

user_data :

пользовательские данные устанавливаемые при подключении обработчика сигнала.

Возвращает :


Сигнал "row-activated"

void user_function (GtkTreeView *tree_view, GtkTreePath *path, GtkTreeViewColumn *column, gpointer user_data) : Run last / Action

Сигнал "row-activated" издаётся когда вызван метод gtk_tree_view_row_activated() или пользователь два раза кликнул на строке дерева просмотра. Он также издаётся когда выделена не редактируемая строка и одна из клавиш: Space, Shift+Space, Return или Enter нажата.

Для изучения обработки выделения обратитесь к разделу tree widget conceptual overview, а также к GtkTreeSelection.

tree_view :

объект в котором издан сигнал

path :

GtkTreePath активируемой строки

column :

GtkTreeViewColumn в котором произошла активизация

user_data :

пользовательские данные устанавливаемые при подключении обработчика сигнала.


Сигнал "row-collapsed"

void user_function (GtkTreeView *tree_view, GtkTreeIter *iter, GtkTreePath *path, gpointer user_data) : Run last

Данная строка свернулась (дочерние элементы скрыты).

tree_view :

объект в котором издан сигнал

iter :

Итератор дерева свернутой строки

path :

Путь дерева указывающий на эту строку

user_data :

пользовательские данные устанавливаемые при подключении обработчика сигнала.


Сигнал "row-expanded"

void user_function (GtkTreeView *tree_view, GtkTreeIter *iter, GtkTreePath *path, gpointer user_data) : Run last

Данная строка развернулась (дочерние элементы видимы).

tree_view :

объект в котором издан сигнал

iter :

Итератор дерева развернутой строки

path :

Путь дерева указывающий на развернутую строку

user_data :

пользовательские данные устанавливаемые при подключении обработчика сигнала.


Сигнал "select-all"

gboolean user_function (GtkTreeView *treeview, gpointer user_data) : Run last / Action

treeview :

объект который получает сигнал.

user_data :

пользовательские данные устанавливаемые при подключении обработчика сигнала.

Возвращает :


Сигнал "select-cursor-parent"

gboolean user_function (GtkTreeView *treeview, gpointer user_data) : Run last / Action

treeview :

объект который получает сигнал.

user_data :

пользовательские данные устанавливаемые при подключении обработчика сигнала.

Возвращает :


Сигнал "select-cursor-row"

gboolean user_function (GtkTreeView *treeview, gboolean arg1, gpointer user_data) : Run last / Action

treeview :

объект который получает сигнал.

arg1 :

user_data :

пользовательские данные устанавливаемые при подключении обработчика сигнала.

Возвращает :


Сигнал "set-scroll-adjustments"

void user_function (GtkTreeView *treeview, GtkAdjustment *arg1, GtkAdjustment *arg2, gpointer user_data) : Run last / Action

treeview :

объект который получает сигнал.

arg1 :

arg2 :

user_data :

пользовательские данные устанавливаемые при подключении обработчика сигнала.


Сигнал "start-interactive-search"

gboolean user_function (GtkTreeView *treeview, gpointer user_data) : Run last / Action

treeview :

объект который получает сигнал.

user_data :

пользовательские данные устанавливаемые при подключении обработчика сигнала.

Возвращает :


Сигнал "test-collapse-row"

gboolean user_function (GtkTreeView *tree_view, GtkTreeIter *iter, GtkTreePath *path, gpointer user_data) : Run last

Данная строка предполагает сворачивание (скрытие дочерних элементов). Используйте этот сигнал если вам нужно контролировать возможность сворачивания индивидуальных строк.

tree_view :

объект в котором издан сигнал

iter :

Итератор дерева строки для сворачивания

path :

Путь дерева указывающий на строку

user_data :

пользовательские данные устанавливаемые при подключении обработчика сигнала.

Возвращает :

TRUE позволяет сворачивание, FALSE отклоняет


Сигнал "test-expand-row"

gboolean user_function (GtkTreeView *tree_view, GtkTreeIter *iter, GtkTreePath *path, gpointer user_data) : Run last

Данная строка предполагает разворачивание (отображение дочерних элементов). Используйте этот сигнал если вам нужно контролировать возможность разворачивания индивидуальных строк.

tree_view :

объект в котором издан сигнал

iter :

Итератор дерева для строки разворачивания

path :

Путь дерева указывающий на строку

user_data :

пользовательские данные устанавливаемые при подключении обработчика сигнала.

Возвращает :

TRUE разрешает развернуться, FALSE отклоняет


Сигнал "toggle-cursor-row"

gboolean user_function (GtkTreeView *treeview, gpointer user_data) : Run last / Action

treeview :

объект который получает сигнал.

user_data :

пользовательские данные устанавливаемые при подключении обработчика сигнала.

Возвращает :


Сигнал "unselect-all"

gboolean user_function (GtkTreeView *treeview, gpointer user_data) : Run last / Action

treeview :

объект который получает сигнал.

user_data :

пользовательские данные устанавливаемые при подключении обработчика сигнала.

Возвращает :

Смотрите также

GtkTreeViewColumn, GtkTreeSelection, GtkTreeDnd, GtkTreeMode, GtkTreeSortable, GtkTreeModelSort, GtkListStore, GtkTreeStore, GtkCellRenderer, GtkCellEditable, GtkCellRendererPixbuf, GtkCellRendererText, GtkCellRendererToggle