Spec-Zone.ru › GTK 3.22

GtkTreeView

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

Функции

gboolean (*GtkTreeViewColumnDropFunc) ()
void (*GtkTreeViewMappingFunc) ()
gboolean (*GtkTreeViewSearchEqualFunc) ()
GtkWidget * gtk_tree_view_new ()
gint gtk_tree_view_get_level_indentation ()
gboolean gtk_tree_view_get_show_expanders ()
void gtk_tree_view_set_level_indentation ()
void gtk_tree_view_set_show_expanders ()
GtkWidget * gtk_tree_view_new_with_model ()
GtkTreeModel * gtk_tree_view_get_model ()
void gtk_tree_view_set_model ()
GtkTreeSelection * gtk_tree_view_get_selection ()
GtkAdjustment * gtk_tree_view_get_hadjustment ()
void gtk_tree_view_set_hadjustment ()
GtkAdjustment * gtk_tree_view_get_vadjustment ()
void gtk_tree_view_set_vadjustment ()
gboolean gtk_tree_view_get_headers_visible ()
void gtk_tree_view_set_headers_visible ()
void gtk_tree_view_columns_autosize ()
gboolean gtk_tree_view_get_headers_clickable ()
void gtk_tree_view_set_headers_clickable ()
void gtk_tree_view_set_rules_hint ()
gboolean gtk_tree_view_get_rules_hint ()
void gtk_tree_view_set_activate_on_single_click ()
gboolean gtk_tree_view_get_activate_on_single_click ()
gint gtk_tree_view_append_column ()
gint gtk_tree_view_remove_column ()
gint gtk_tree_view_insert_column ()
gint gtk_tree_view_insert_column_with_attributes ()
gint gtk_tree_view_insert_column_with_data_func ()
guint gtk_tree_view_get_n_columns ()
GtkTreeViewColumn * gtk_tree_view_get_column ()
GList * gtk_tree_view_get_columns ()
void gtk_tree_view_move_column_after ()
void gtk_tree_view_set_expander_column ()
GtkTreeViewColumn * gtk_tree_view_get_expander_column ()
void gtk_tree_view_set_column_drag_function ()
void gtk_tree_view_scroll_to_point ()
void gtk_tree_view_scroll_to_cell ()
void gtk_tree_view_set_cursor ()
void gtk_tree_view_set_cursor_on_cell ()
void gtk_tree_view_get_cursor ()
void gtk_tree_view_row_activated ()
void gtk_tree_view_expand_all ()
void gtk_tree_view_collapse_all ()
void gtk_tree_view_expand_to_path ()
gboolean gtk_tree_view_expand_row ()
gboolean gtk_tree_view_collapse_row ()
void gtk_tree_view_map_expanded_rows ()
gboolean gtk_tree_view_row_expanded ()
void gtk_tree_view_set_reorderable ()
gboolean gtk_tree_view_get_reorderable ()
gboolean gtk_tree_view_get_path_at_pos ()
gboolean gtk_tree_view_is_blank_at_pos ()
void gtk_tree_view_get_cell_area ()
void gtk_tree_view_get_background_area ()
void gtk_tree_view_get_visible_rect ()
gboolean gtk_tree_view_get_visible_range ()
GdkWindow * gtk_tree_view_get_bin_window ()
void gtk_tree_view_convert_bin_window_to_tree_coords ()
void gtk_tree_view_convert_bin_window_to_widget_coords ()
void gtk_tree_view_convert_tree_to_bin_window_coords ()
void gtk_tree_view_convert_tree_to_widget_coords ()
void gtk_tree_view_convert_widget_to_bin_window_coords ()
void gtk_tree_view_convert_widget_to_tree_coords ()
void gtk_tree_view_enable_model_drag_dest ()
void gtk_tree_view_enable_model_drag_source ()
void gtk_tree_view_unset_rows_drag_source ()
void gtk_tree_view_unset_rows_drag_dest ()
void gtk_tree_view_set_drag_dest_row ()
void gtk_tree_view_get_drag_dest_row ()
gboolean gtk_tree_view_get_dest_row_at_pos ()
cairo_surface_t * gtk_tree_view_create_row_drag_icon ()
void gtk_tree_view_set_enable_search ()
gboolean gtk_tree_view_get_enable_search ()
gint gtk_tree_view_get_search_column ()
void gtk_tree_view_set_search_column ()
GtkTreeViewSearchEqualFunc gtk_tree_view_get_search_equal_func ()
void gtk_tree_view_set_search_equal_func ()
GtkEntry * gtk_tree_view_get_search_entry ()
void gtk_tree_view_set_search_entry ()
void (*GtkTreeViewSearchPositionFunc) ()
GtkTreeViewSearchPositionFunc gtk_tree_view_get_search_position_func ()
void gtk_tree_view_set_search_position_func ()
gboolean gtk_tree_view_get_fixed_height_mode ()
void gtk_tree_view_set_fixed_height_mode ()
gboolean gtk_tree_view_get_hover_selection ()
void gtk_tree_view_set_hover_selection ()
gboolean gtk_tree_view_get_hover_expand ()
void gtk_tree_view_set_hover_expand ()
void (*GtkTreeDestroyCountFunc) ()
void gtk_tree_view_set_destroy_count_func ()
gboolean (*GtkTreeViewRowSeparatorFunc) ()
GtkTreeViewRowSeparatorFunc gtk_tree_view_get_row_separator_func ()
void gtk_tree_view_set_row_separator_func ()
gboolean gtk_tree_view_get_rubber_banding ()
void gtk_tree_view_set_rubber_banding ()
gboolean gtk_tree_view_is_rubber_banding_active ()
gboolean gtk_tree_view_get_enable_tree_lines ()
void gtk_tree_view_set_enable_tree_lines ()
GtkTreeViewGridLines gtk_tree_view_get_grid_lines ()
void gtk_tree_view_set_grid_lines ()
void gtk_tree_view_set_tooltip_row ()
void gtk_tree_view_set_tooltip_cell ()
gboolean gtk_tree_view_get_tooltip_context ()
gint gtk_tree_view_get_tooltip_column ()
void gtk_tree_view_set_tooltip_column ()

Свойства

gboolean активировать-при-одиночном-щелчке Чтение / Запись
GtkTreeViewGridLines включить-линии-сетки Чтение / Запись
gboolean включить-поиск Чтение / Запись
gboolean включить-линии-дерева Чтение / Запись
GtkTreeViewColumn * колонка-расширителя Чтение / Запись
gboolean фиксированный-режим-высоты Чтение / Запись
gboolean заголовки-кликабельные Чтение / Запись
gboolean заголовки-видимые Чтение / Запись
gboolean наведение-для-расширения Чтение / Запись
gboolean наведение-для-выделения Чтение / Запись
gint отступ-уровня Чтение / Запись
GtkTreeModel * модель Чтение / Запись
gboolean переупорядочиваемый Чтение / Запись
gboolean резиновый-эффект Чтение / Запись
gboolean подсказка-правил Чтение / Запись
gint колонка-поиска Чтение / Запись
gboolean показывать-расширители Чтение / Запись
gint колонка-подсказки Чтение / Запись

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

gboolean allow-rules Чтение
GdkColor * even-row-color Чтение
gint expander-size Чтение
gchar * grid-line-pattern Чтение
gint grid-line-width Чтение
gint horizontal-separator Чтение
gboolean indent-expanders Чтение
GdkColor * odd-row-color Чтение
gchar * tree-line-pattern Чтение
gint tree-line-width Чтение
gint vertical-separator Чтение

Сигналы

void columns-changed Выполнить последним
void cursor-changed Выполнить последним
gboolean expand-collapse-cursor-row Действие
gboolean move-cursor Действие
void row-activated Действие
void row-collapsed Выполнить последним
void row-expanded Выполнить последним
gboolean select-all Действие
gboolean select-cursor-parent Действие
gboolean select-cursor-row Действие
gboolean start-interactive-search Действие
gboolean test-collapse-row Выполнить последним
gboolean test-expand-row Выполнить последним
gboolean toggle-cursor-row Действие
gboolean unselect-all Действие

Типы и значения

struct GtkTreeView
перечисление GtkTreeViewDropPosition
GtkTreeViewPrivate
перечисление GtkTreeViewGridLines

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

    GObject
    ╰── GInitiallyUnowned
        ╰── GtkWidget
            ╰── GtkContainer
                ╰── GtkTreeView

Реализованные интерфейсы

GtkTreeView реализует AtkImplementorIface, GtkBuildable и GtkScrollable.

Включения

#include <gtk/gtk.h>

Описание

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

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

В API GtkTreeView доступны несколько различных систем координат. Это:

Системы координат в API GtkTreeView:

  • Координаты виджета: Координаты, относящиеся к виджету (обычно widget->window).

  • Координаты окна отображения: Координаты, относящиеся к окну, в которое GtkTreeView отрисовывает.

  • Координаты дерева: Координаты, относящиеся к всей прокручиваемой области GtkTreeView. Эти координаты начинаются с (0, 0) для строки 0 дерева.

Для преобразования между различными системами координат доступны несколько функций. Наиболее распространённые преобразования — между координатами виджета и окна отображения, а также между координатами окна отображения и дерева. Для первого случая можно использовать gtk_tree_view_convert_widget_to_bin_window_coords() (и наоборот), а для второго — gtk_tree_view_convert_bin_window_to_tree_coords() (и наоборот).

GtkTreeView как GtkBuildable

Реализация GtkTreeView интерфейса GtkBuildable принимает объекты GtkTreeViewColumn в качестве элементов <child> и предоставляет доступ к внутреннему GtkTreeSelection в определениях пользовательского интерфейса.

Пример фрагмента определения пользовательского интерфейса с GtkTreeView:

Узлы CSS

<object class="GtkTreeView" id="treeview">
  <property name="model">liststore1</property>
  <child>
    <object class="GtkTreeViewColumn" id="test-column">
      <property name="title">Test</property>
      <child>
        <object class="GtkCellRendererText" id="test-renderer"/>
        <attributes>
          <attribute name="text">1</attribute>
        </attributes>
      </child>
    </object>
  </child>
  <child internal-child="selection">
    <object class="GtkTreeSelection" id="selection">
      <signal name="changed" handler="on_treeview_selection_changed"/>
    </object>
  </child>
</object>

GtkTreeView имеет главный узел CSS с именем treeview и классом стиля .view. Он имеет дочерний узел с именем header, который является родительским для всех узлов CSS виджетов заголовков столбцов. Для выделения резиновым прямоугольником используется дочерний узел с именем rubberband.

Функции

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

A GtkTreeView

column

Перетаскиваемый GtkTreeViewColumn

prev_column

GtkTreeViewColumn слева от column

next_column

GtkTreeViewColumn справа от column

data

пользовательские данные.

[closure]

Возвращает

TRUE, если column можно переместить в это место

GtkTreeViewMappingFunc ()

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

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

Параметры

tree_view

A 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().

[closure]

Возвращает

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

gtk_tree_view_new ()

GtkWidget *
gtk_tree_view_new (void);

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

Возвращает

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

gtk_tree_view_get_level_indentation ()

gint
gtk_tree_view_get_level_indentation (GtkTreeView *tree_view);

Возвращает величину отступа для дочерних уровней в tree_view в пикселях.

Параметры

tree_view

a GtkTreeView.

Возвращает

Величину отступа для дочерних уровней в tree_view. Значение 0 означает, что эта функция отключена.

С: 2.12

gtk_tree_view_get_show_expanders ()

gboolean
gtk_tree_view_get_show_expanders (GtkTreeView *tree_view);

Возвращает, отображаются ли раскрывающие значки в tree_view.

Параметры

tree_view

a GtkTreeView.

Возвращает

TRUE, если раскрывающие значки отображаются в tree_view, FALSE в противном случае.

С: 2.12

gtk_tree_view_set_level_indentation ()

void
gtk_tree_view_set_level_indentation (GtkTreeView *tree_view,
                                     gint indentation);

Устанавливает величину дополнительного отступа для дочерних уровней в tree_view, в дополнение к стандартному отступу. Значение должно быть указано в пикселях, значение 0 отключает эту функцию, в этом случае используется только стандартный отступ. Для списков это не имеет видимого эффекта.

Параметры

tree_view

a GtkTreeView

indentation

величина дополнительного отступа в tree_view в пикселях.

С: 2.12

gtk_tree_view_set_show_expanders ()

void
gtk_tree_view_set_show_expanders (GtkTreeView *tree_view,
                                  gboolean enabled);

Устанавливает отображение и включение раскрывающих значков и отступов дочерних строк в tree_view. При отключении раскрывающие значки не будут отображаться в дереве, а также по умолчанию не будет возможности раскрывать и сворачивать строки. Также обратите внимание, что скрытие раскрывающих значков отключит стандартный отступ. В этом случае можно установить настраиваемый отступ с помощью gtk_tree_view_set_level_indentation(). Для списков это не имеет видимого эффекта.

Параметры

tree_view

a GtkTreeView

enabled

TRUE для включения отображения раскрывающих значков, FALSE в противном случае.

С: 2.12

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, если модель не используется.

[transfer none][nullable]

gtk_tree_view_set_model ()

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

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

Параметры

tree_view

Виджет GtkTreeView.

model

Модель.

[allow-none]

gtk_tree_view_get_selection ()

GtkTreeSelection *
gtk_tree_view_get_selection (GtkTreeView *tree_view);

Возвращает GtkTreeSelection, связанную с tree_view .

Параметры

tree_view

Виджет GtkTreeView.

Возвращаемое значение

Объект GtkTreeSelection .

[transfer none]

gtk_tree_view_get_hadjustment ()

GtkAdjustment *
gtk_tree_view_get_hadjustment (GtkTreeView *tree_view);

gtk_tree_view_get_hadjustment устарел начиная с версии 3.0 и не должен использоваться в новом коде.

Используйте gtk_scrollable_get_hadjustment()

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

Параметры

tree_view

Виджет GtkTreeView

Возвращаемое значение

Объект GtkAdjustment или NULL, если не используется.

[transfer none]

gtk_tree_view_set_hadjustment ()

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

gtk_tree_view_set_hadjustment устарел начиная с версии 3.0 и не должен использоваться в новом коде.

Используйте gtk_scrollable_set_hadjustment()

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

Параметры

tree_view

Виджет GtkTreeView

adjustment

Устанавливаемый GtkAdjustment или NULL.

[allow-none]

gtk_tree_view_get_vadjustment ()

GtkAdjustment *
gtk_tree_view_get_vadjustment (GtkTreeView *tree_view);

gtk_tree_view_get_vadjustment устарел начиная с версии 3.0 и не должен использоваться в новом коде.

Используйте gtk_scrollable_get_vadjustment()

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

Параметры

tree_view

Виджет GtkTreeView

Возвращаемое значение

Объект GtkAdjustment или NULL, если не используется.

[transfer none]

gtk_tree_view_set_vadjustment ()

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

gtk_tree_view_set_vadjustment устарел начиная с версии 3.0 и не должен использоваться в новом коде.

Используйте gtk_scrollable_set_vadjustment()

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

Параметры

tree_view

Виджет GtkTreeView

adjustment

Устанавливаемый GtkAdjustment или NULL.

[allow-none]

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

A GtkTreeView.

headers_visible

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

gtk_tree_view_columns_autosize ()

void
gtk_tree_view_columns_autosize (GtkTreeView *tree_view);

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

Параметры

tree_view

A GtkTreeView.

gtk_tree_view_get_headers_clickable ()

gboolean
gtk_tree_view_get_headers_clickable (GtkTreeView *tree_view);

Возвращает, являются ли все столбцы заголовков кликабельными.

Параметры

tree_view

A 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

A GtkTreeView.

setting

TRUE, если столбцы кликабельны.

gtk_tree_view_set_rules_hint ()

void
gtk_tree_view_set_rules_hint (GtkTreeView *tree_view,
                              gboolean setting);

gtk_tree_view_set_rules_hint устарел с версии 3.14 и не должен использоваться в новом коде.

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

Эта функция сообщает теме GTK+, что пользовательский интерфейс вашего приложения требует, чтобы пользователи читали строки дерева и связывали ячейки друг с другом.

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

Параметры

tree_view

a GtkTreeView

setting

TRUE, если дерево требует чтения по строкам

gtk_tree_view_get_rules_hint ()

gboolean
gtk_tree_view_get_rules_hint (GtkTreeView *tree_view);

gtk_tree_view_get_rules_hint устарел с версии 3.14 и не должен использоваться в новом коде.

Получает значение, установленное gtk_tree_view_set_rules_hint().

Параметры

tree_view

a GtkTreeView

Возвращает

TRUE, если подсказка установлена

gtk_tree_view_set_activate_on_single-click ()

void
gtk_tree_view_set_activate_on_single_click
                               (GtkTreeView *tree_view,
                                gboolean single);

Заставляет сигнал “row-activated” срабатывать при одном клике вместо двойного.

Параметры

tree_view

a GtkTreeView

single

TRUE, чтобы срабатывал сигнал row-activated при одном клике

С момента: 3.8

gtk_tree_view_get_activate-on-single-click ()

gboolean
gtk_tree_view_get_activate_on_single_click
                               (GtkTreeView *tree_view);

Получает значение, установленное gtk_tree_view_set_activate_on_single_click().

Параметры

tree_view

a GtkTreeView

Возвращает

TRUE, если сигнал row-activated будет срабатывать при одном клике

С момента: 3.8

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

A GtkTreeView.

column

The GtkTreeViewColumn для добавления.

Возвращает

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

gtk_tree_view_remove-column ()

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

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

Параметры

tree_view

A GtkTreeView.

column

The 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

A GtkTreeView.

column

The 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», то у нового столбца свойство sizing будет установлено как GTK_TREE_VIEW_COLUMN_FIXED.

Параметры

tree_view

A GtkTreeView

position

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

title

Заголовок для установки в заголовке

cell

The 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 с заданным элементом отображения ячейки и GtkTreeCellDataFunc для установки атрибутов элемента отображения ячейки (обычно используя данные из модели). См. также 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

a GtkTreeView

position

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

title

название столбца

cell

элемент отображения ячейки для столбца

func

функция для установки атрибутов элемента отображения ячейки

data

данные для func

dnotify

уведомление об уничтожении для data

Возвращаемое значение

количество столбцов в виджете дерева после вставки

gtk_tree_view_get_n_columns ()

guint
gtk_tree_view_get_n_columns (GtkTreeView *tree_view);

Запрашивает количество столбцов в данном tree_view .

Параметры

tree_view

a GtkTreeView

Возвращаемое значение

Количество столбцов в tree_view

С: 3.4

gtk_tree_view_get_column ()

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

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

Параметры

tree_view

A GtkTreeView.

n

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

Возвращаемое значение

The GtkTreeViewColumn, или NULL, если позиция за пределами диапазона столбцов.

[nullable][transfer none]

gtk_tree_view_get_columns ()

GList *
gtk_tree_view_get_columns (GtkTreeView *tree_view);

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

Параметры

tree_view

A GtkTreeView

Возвращаемое значение

Список GtkTreeViewColumn .

[element-type GtkTreeViewColumn][transfer container]

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

A GtkTreeView

column

Перемещаемый GtkTreeViewColumn.

base_column

GtkTreeViewColumn относительно которого осуществляется перемещение, или NULL.

[allow-none]

gtk_tree_view_set_expander_column ()

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

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

Если вы не хотите отображать стрелку разворачивания в дереве, установите столбец разворачивания для скрытого столбца.

Параметры

tree_view

A GtkTreeView

column

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

gtk_tree_view_get_expander_column ()

GtkTreeViewColumn *
gtk_tree_view_get_expander_column (GtkTreeView *tree_view);

Возвращает столбец, который в данный момент является столбцом разворачивания. В этом столбце отображается стрелка разворачивания.

Параметры

tree_view

A GtkTreeView

Возвращаемое значение

Столбец разворачивания.

[transfer none]

gtk_tree_view_set_column_drag_function ()

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

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

Параметры

tree_view

A GtkTreeView.

func

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

[allow-none]

user_data

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

[allow-none]

destroy

Уведомление об уничтожении user_data , или NULL.

[allow-none]

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

a 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

A GtkTreeView.

path

Путь к строке, которую нужно переместить, или NULL.

[allow-none]

column

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

[allow-none]

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), чтобы передать фокус клавиатуры виджету. Обратите внимание, что редактирование может происходить только когда виджет реализован.

Если path недопустимо для model, текущий курсор (если есть) будет сброшен, и функция вернется без ошибки.

Параметры

tree_view

A GtkTreeView

path

A GtkTreePath

focus_column

A GtkTreeViewColumn, или NULL.

[allow-none]

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), чтобы передать фокус клавиатуры виджету. Обратите внимание, что редактирование может происходить только когда виджет реализован.

Если path недопустимо для model, текущий курсор (если есть) будет сброшен, и функция вернется без ошибки.

Параметры

tree_view

A GtkTreeView

path

A GtkTreePath

focus_column

A GtkTreeViewColumn, или NULL.

[allow-none]

focus_cell

A GtkCellRenderer, или NULL.

[allow-none]

start_editing

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

Since: 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

A GtkTreeView

path

Указатель, который нужно заполнить текущим путем курсора, или NULL.

[out][transfer full][optional][nullable]

focus_column

Указатель, который нужно заполнить текущим столбцом фокуса, или NULL.

[out][transfer none][optional][nullable]

gtk_tree_view_row_activated ()

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

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

Параметры

tree_view

A GtkTreeView

path

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

column

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

gtk_tree_view_expand_all ()

void
gtk_tree_view_expand_all (GtkTreeView *tree_view);

Рекурсивно раскрывает все узлы в tree_view .

Параметры

tree_view

A GtkTreeView.

gtk_tree_view_collapse_all ()

void
gtk_tree_view_collapse_all (GtkTreeView *tree_view);

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

Параметры

tree_view

A GtkTreeView.

gtk_tree_view_expand-to-path ()

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

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

Параметры

tree_view

A GtkTreeView.

path

путь к строке.

Since: 2.2

gtk_tree_view_expand_row ()

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

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

Параметры

tree_view

a GtkTreeView

path

путь к строке

open_all

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

Возвращает

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

gtk_tree_view_collapse_row ()

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

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

Параметры

tree_view

a 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

A GtkTreeView

func

Функция, которая должна быть вызвана.

[scope call]

data

Пользовательские данные, которые нужно передать функции.

gtk_tree_view_row-expanded ()

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

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

Параметры

tree_view

A GtkTreeView.

path

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

Возвращает

TRUE, если path раскрыт.

gtk_tree_view_set_reorderable ()

void
gtk_tree_view_set_reorderable (GtkTreeView *tree_view,
                               gboolean reorderable);

Эта функция — функция удобства, позволяющая переупорядочивать модели, поддерживающие GtkTreeDragSourceIface и GtkTreeDragDestIface. Обе GtkTreeStore и GtkListStore поддерживают их. Если reorderable равно TRUE, пользователь может переупорядочить модель, перетаскивая строки. Разработчик может отслеживать эти изменения, подключившись к сигналам модели «row-inserted» и «row-deleted». Переупорядочивание реализуется путём задания виджету дерева свойств источника и приемника перетаскивания. Поэтому перетаскивание не может быть использовано для других целей в переупорядочиваемом представлении.

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

Параметры

tree_view

A GtkTreeView.

reorderable

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

gtk_tree_view_get_reorderable ()

gboolean
gtk_tree_view_get_reorderable (GtkTreeView *tree_view);

Возвращает значение, указывающее, может ли пользователь переупорядочить дерево с помощью перетаскивания. См. gtk_tree_view_set_reorderable().

Параметры

tree_view

a 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 ), относительно координат bin_window (см. gtk_tree_view_get_bin_window()). То есть, x и y относятся к координатам событий. x и y должны поступать из события в tree_view только там, где event->window == gtk_tree_view_get_bin_window(). Это в первую очередь для таких вещей, как всплывающие меню. Если path не равно NULL, он будет заполнен GtkTreePath в этой точке. Этот путь нужно освободить с помощью gtk_tree_path_free(). Если column не равно NULL, он будет заполнен столбцом в этой точке. cell_x и cell_y возвращают координаты, относящиеся к фону ячейки (т. е. background_area, переданному gtk_cell_renderer_render()). Эта функция имеет смысл только если tree_view реализован. Поэтому эта функция всегда вернёт FALSE, если tree_view не реализован или не имеет модели.

Для преобразования координат виджета (например, тех, которые вы получаете из GtkWidget::query-tooltip), см. gtk_tree_view_convert_widget_to_bin_window_coords().

Параметры

tree_view

A GtkTreeView.

x

Положение x для идентификации (относительно bin_window).

y

Положение y для идентификации (относительно bin_window).

path

Указатель на GtkTreePath указатель для заполнения, или NULL.

[out][optional][nullable]

column

Указатель на GtkTreeViewColumn указатель для заполнения, или NULL.

[out][transfer none][optional][nullable]

cell_x

Указатель, куда можно поместить координату X, относительную к ячейке, или NULL.

[out][optional]

cell_y

Указатель, куда можно поместить координату Y, относительную к ячейке, или NULL.

[out][optional]

Возвращаемое значение

TRUE, если в этой координате есть строка.

gtk_tree_view_is_blank_at_pos ()

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

Определяет, является ли точка (x , y ) в tree_view пустой, то есть в данной позиции не отображается содержимое ячейки или стрелка раскрывающегося списка. В таком случае эту позицию можно рассматривать как область фона. Вы можете предпринять особые действия при щелчке по фону, такие как очистка текущего выделения, отображение пользовательского контекстного меню или начало выделения резиновым прямоугольником.

Координаты x и y, которые предоставляются, должны быть относительными к координатам окна bin_window. То есть, x и y должны быть получены из события на tree_view, где event->window == gtk_tree_view_get_bin_window().

Для преобразования координат виджета (например, полученных из GtkWidget::query-tooltip), см. gtk_tree_view_convert_widget_to_bin_window_coords().

Аргументы path, column, cell_x и cell_y будут заполнены аналогично gtk_tree_view_get_path_at_pos(). Дополнительную информацию см. в gtk_tree_view_get_path_at_pos().

Параметры

tree_view

A GtkTreeView

x

Позиция x для идентификации (относительно bin_window)

y

Позиция y для идентификации (относительно bin_window)

path

Указатель на GtkTreePath для заполнения, или NULL.

[out][allow-none]

column

Указатель на GtkTreeViewColumn для заполнения, или NULL.

[out][allow-none]

cell_x

Указатель, куда можно поместить координату X, относительную к ячейке, или NULL.

[out][allow-none]

cell_y

Указатель, куда можно поместить координату Y, относительную к ячейке, или NULL.

[out][allow-none]

Возвращаемое значение

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

С: 3.0

gtk_tree_view_get_cell_area ()

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

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

Параметры

tree_view

a GtkTreeView

path

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

[allow-none]

column

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

[allow-none]

rect

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

[out]

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

a GtkTreeView

path

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

[allow-none]

column

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

[allow-none]

rect

прямоугольник, который будет заполнен прямоугольником фона ячейки.

[out]

gtk_tree_view_get_visible_rect ()

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

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

Параметры

tree_view

a GtkTreeView

visible_rect

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

[out]

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

A GtkTreeView

start_path

Место возврата начала области или NULL.

[out][allow-none]

end_path

Место возврата конца области или NULL.

[out][allow-none]

Возвращает

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

A GtkTreeView

Возвращает

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

[nullable][transfer none]

gtk_tree_view_convert_bin_window_to_tree_coords ()

void
gtk_tree_view_convert_bin_window_to_tree_coords
                               (GtkTreeView *tree_view,
                                gint bx,
                                gint by,
                                gint *tx,
                                gint *ty);

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

Параметры

tree_view

a GtkTreeView

bx

Координата X относительно окна ячейки

by

Координата Y относительно окна ячейки

tx

Место возврата координаты X дерева.

[out]

ty

Место возврата координаты Y дерева.

[out]

С: 2.12

gtk_tree_view_convert_bin_window_to_widget_coords ()

void
gtk_tree_view_convert_bin_window_to_widget_coords
                               (GtkTreeView *tree_view,
                                gint bx,
                                gint by,
                                gint *wx,
                                gint *wy);

Преобразует координаты bin_window (см. gtk_tree_view_get_bin_window()) в координаты, относительные к виджету.

Параметры

tree_view

a GtkTreeView

bx

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

by

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

wx

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

[out]

wy

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

[out]

С: 2.12

gtk_tree_view_convert_tree_to_bin_window_coords ()

void
gtk_tree_view_convert_tree_to_bin_window_coords
                               (GtkTreeView *tree_view,
                                gint tx,
                                gint ty,
                                gint *bx,
                                gint *by);

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

Параметры

tree_view

a GtkTreeView

tx

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

ty

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

bx

место назначения для координаты X, относительной к bin_window.

[out]

by

место назначения для координаты Y, относительной к bin_window.

[out]

С: 2.12

gtk_tree_view_convert_tree_to_widget_coords ()

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

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

Параметры

tree_view

a GtkTreeView

tx

координата X относительно дерева

ty

координата Y относительно дерева

wx

место назначения для координаты X виджета.

[out]

wy

место назначения для координаты Y виджета.

[out]

С: 2.12

gtk_tree_view_convert_widget_to_bin-window-coords ()

void
gtk_tree_view_convert_widget_to_bin_window_coords
                               (GtkTreeView *tree_view,
                                gint wx,
                                gint wy,
                                gint *bx,
                                gint *by);

Преобразует координаты виджета в координаты bin_window (см. gtk_tree_view_get_bin_window()).

Параметры

tree_view

a GtkTreeView

wx

координата X, относительная к виджету

wy

координата Y, относительная к виджету

bx

место назначения для координаты X bin_window.

[out]

by

место назначения для координаты Y bin_window.

[out]

С: 2.12

gtk_tree_view_convert_widget_to_tree_coords ()

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

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

Параметры

tree_view

a GtkTreeView

wx

координата X, относительная к виджету

wy

координата Y, относительная к виджету

tx

место назначения для координаты X дерева.

[out]

ty

место назначения для координаты Y дерева.

[out]

С: 2.12

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). Вызов этого метода устанавливает “reorderable” в FALSE.

Параметры

tree_view

a GtkTreeView

targets

таблица целей, которые будет поддерживать перетаскивание.

[array length=n_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. Вызов этого метода устанавливает “reorderable” в FALSE.

Параметры

tree_view

a GtkTreeView

start_button_mask

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

targets

таблица целей, которые будет поддерживать перетаскивание.

[array length=n_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(). Вызов этого метода устанавливает “reorderable” в FALSE.

Параметры

tree_view

a 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(). Вызов этого метода устанавливает “reorderable” в FALSE.

Параметры

tree_view

a GtkTreeView

gtk_tree_view_set_drag-dest-row ()

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

Устанавливает строку, которая выделена для обратной связи. Если path имеет значение NULL, существующее выделение удаляется.

Параметры

tree_view

a GtkTreeView

path

Путь к строке, которую нужно выделить, или NULL.

[allow-none]

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

a GtkTreeView

path

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

[out][optional][nullable]

pos

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

[out][optional]

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);

Определяет целевую строку для заданной позиции. drag_x и drag_y ожидаются в координатах виджета. Эта функция имеет смысл только если tree_view реализован. Поэтому эта функция всегда вернёт FALSE, если tree_view не реализован или не имеет модели.

Параметры

tree_view

a GtkTreeView

drag_x

позиция для определения целевой строки

drag_y

позиция для определения целевой строки

path

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

[out][optional][nullable]

pos

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

[out][optional]

Возвращаемое значение

является ли в данной позиции строка, TRUE если это так.

gtk_tree_view_create_row_drag_icon ()

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

Создаёт представление строки в path как cairo_surface_t. Этот образ используется в качестве значка перетаскивания.

Параметры

tree_view

a GtkTreeView

path

a GtkTreePath в tree_view

Возвращаемое значение

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

[transfer full]

gtk_tree_view_set_enable_search ()

void
gtk_tree_view_set_enable_search (GtkTreeView *tree_view,
                                 gboolean enable_search);

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

Обратите внимание, что даже если это FALSE, пользователь всё равно может инициировать поиск с помощью сочетания клавиш «начать-интерактивный-поиск».

Параметры

tree_view

A GtkTreeView

enable_search

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

gtk_tree_view_get_enable_search ()

gboolean
gtk_tree_view_get_enable_search (GtkTreeView *tree_view);

Возвращает, разрешено ли дереву начинать интерактивный поиск путём ввода текста.

Параметры

tree_view

A GtkTreeView

Возвращает

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

gtk_tree_view_get_search_column ()

gint
gtk_tree_view_get_search_column (GtkTreeView *tree_view);

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

Параметры

tree_view

A GtkTreeView

Возвращает

столбец, в котором выполняется поиск интерактивным кодом.

gtk_tree_view_set_search_column ()

void
gtk_tree_view_set_search_column (GtkTreeView *tree_view,
                                 gint column);

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

Если столбец поиска установлен, пользователи могут использовать сочетание клавиш «начать-интерактивный-поиск», чтобы отобразить всплывающее окно поиска. Свойство enable-search управляет тем, будет ли интерактивный поиск запущен просто вводом текста.

Обратите внимание, что column относится к столбцу текущей модели. Столбец поиска сбрасывается до -1 при изменении модели.

Параметры

tree_view

A GtkTreeView

column

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

gtk_tree_view_get_search_equal_func ()

GtkTreeViewSearchEqualFunc
gtk_tree_view_get_search_equal_func (GtkTreeView *tree_view);

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

[skip]

Параметры

tree_view

A 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,
                                     GDestroyNotify search_destroy);

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

Параметры

tree_view

A GtkTreeView

search_equal_func

функция сравнения, используемая во время поиска

search_user_data

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

[allow-none]

search_destroy

Уведомление о уничтожении для search_user_data, или NULL.

[allow-none]

gtk_tree_view_get_search_entry ()

GtkEntry *
gtk_tree_view_get_search_entry (GtkTreeView *tree_view);

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

Параметры

tree_view

A GtkTreeView

Возвращает

текущее поле ввода, используемое в качестве поля поиска.

[transfer none]

С момента: 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

A GtkTreeView

entry

поле ввода, которое должен использовать интерактивный код поиска tree_view, или NULL.

[allow-none]

С момента: 2.10

GtkTreeViewSearchPositionFunc ()

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

gtk_tree_view_get_search-position-func ()

GtkTreeViewSearchPositionFunc
gtk_tree_view_get_search_position_func
                               (GtkTreeView *tree_view);

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

[skip]

Параметры

tree_view

A 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

A GtkTreeView

func

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

[allow-none]

data

пользовательские данные для передачи в func, или NULL.

[allow-none]

destroy

указатель на функцию удаления для data, или NULL.

[allow-none]

С: 2.10

gtk_tree_view_get_fixed_height_mode ()

gboolean
gtk_tree_view_get_fixed_height_mode (GtkTreeView *tree_view);

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

Параметры

tree_view

a 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

a 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

a 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

a 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

a 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

a GtkTreeView

expand

TRUE для включения режима выделения при наведении курсора

С: 2.6

GtkTreeDestroyCountFunc ()

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

gtk_tree_view_set_destroy_count_func ()

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

gtk_tree_view_set_destroy_count_func устарел начиная с версии 3.4 и не должен использоваться в новом коде.

Доступность больше не нуждается в этой функции.

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

Параметры

tree_view

A GtkTreeView

func

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

[allow-none]

data

Пользовательские данные, передаваемые в func, или NULL.

[allow-none]

destroy

Указатель на функцию удаления для data, или NULL.

[allow-none]

GtkTreeViewRowSeparatorFunc ()

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

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

Параметры

model

модель GtkTreeModel

iter

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

data

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

[closure]

Возвращаемое значение

TRUE, если строка является разделителем

gtk_tree_view_get_row_separator_func ()

GtkTreeViewRowSeparatorFunc
gtk_tree_view_get_row_separator_func (GtkTreeView *tree_view);

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

[skip]

Параметры

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,
                                      GDestroyNotify destroy);

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

Параметры

tree_view

объект GtkTreeView

func

функция GtkTreeViewRowSeparatorFunc.

[allow-none]

data

данные пользователя для передачи в func или NULL.

[allow-none]

destroy

указатель для уничтожения data или NULL.

[allow-none]

С версии: 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_is_rubber_banding_active ()

gboolean
gtk_tree_view_is_rubber_banding_active
                               (GtkTreeView *tree_view);

Возвращает, выполняется ли операция резинового выделения в tree_view.

Параметры

tree_view

объект GtkTreeView

Возвращаемое значение

TRUE, если операция резинового выделения выполняется в tree_view.

С версии: 2.12

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

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

a GtkTreeView

grid_lines

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

С момента: 2.10

gtk_tree_view_set_tooltip_row ()

void
gtk_tree_view_set_tooltip_row (GtkTreeView *tree_view,
                               GtkTooltip *tooltip,
                               GtkTreePath *path);

Устанавливает область подсказки для tooltip как область, охватываемую строкой по адресу path. Смотрите также gtk_tree_view_set_tooltip_column() для более простого варианта. Смотрите также gtk_tooltip_set_tip_area().

Параметры

tree_view

a GtkTreeView

tooltip

a GtkTooltip

path

a GtkTreePath

С момента: 2.12

gtk_tree_view_set_tooltip_cell ()

void
gtk_tree_view_set_tooltip_cell (GtkTreeView *tree_view,
                                GtkTooltip *tooltip,
                                GtkTreePath *path,
                                GtkTreeViewColumn *column,
                                GtkCellRenderer *cell);

Устанавливает область подсказки для tooltip в область, общую для path, column и cell. Например, если path равно NULL и column установлено, область подсказки будет установлена как вся область, покрываемая column. Смотрите также gtk_tooltip_set_tip_area().

Обратите внимание, что если path не указано, и cell установлено и является частью столбца, содержащего расширитель, подсказка может не отображаться и не скрываться в правильном положении. В таких случаях path необходимо установить на текущий узел под курсором мыши для корректной работы этой функции.

Смотрите также gtk_tree_view_set_tooltip_column() для более простого варианта.

Параметры

tree_view

a GtkTreeView

tooltip

a GtkTooltip

path

a GtkTreePath или NULL.

[allow-none]

column

a GtkTreeViewColumn или NULL.

[allow-none]

cell

a GtkCellRenderer или NULL.

[allow-none]

С момента: 2.12

gtk_tree_view_get_tooltip_context ()

gboolean
gtk_tree_view_get_tooltip_context (GtkTreeView *tree_view,
                                   gint *x,
                                   gint *y,
                                   gboolean keyboard_tip,
                                   GtkTreeModel **model,
                                   GtkTreePath **path,
                                   GtkTreeIter *iter);

Эта функция должна использоваться в обработчике сигнала «query-tooltip» для GtkTreeView. Значения x, y и keyboard_tip, которые получают в обработчике сигнала, должны быть переданы этой функции без изменений.

Значение возврата указывает, есть ли в дереве строка по заданным координатам (TRUE) или нет (FALSE) для подсказок при наведении курсора мыши. Для подсказок при нажатии клавиш возвращаемая строка будет строкой курсора. Если TRUE, то любое из model, path и iter, которые были предоставлены, будет установлено на указание этой строки и соответствующей модели. x и y всегда будут преобразовываться в относительные к tree_view`s bin_window, если keyboard_tooltip равно FALSE.

Параметры

tree_view

a GtkTreeView

x

координата x (относительно координат виджета).

[inout]

y

координата y (относительно координат виджета).

[inout]

keyboard_tip

является ли это подсказкой от нажатия клавиш или нет

model

указатель для получения GtkTreeModel или NULL.

[out][optional][nullable][transfer none]

path

указатель для получения GtkTreePath или NULL.

[out][optional]

iter

указатель для получения GtkTreeIter или NULL.

[out][optional]

Возвращает

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

С момента: 2.12

gtk_tree_view_get_tooltip_column ()

gint
gtk_tree_view_get_tooltip_column (GtkTreeView *tree_view);

Возвращает столбец модели tree_view, который используется для отображения подсказок на строках tree_view.

Параметры

tree_view

a GtkTreeView

Возвращаемое значение

индекс столбца подсказки, который используется в данный момент, или -1, если эта функция отключена.

С: 2.12

gtk_tree_view_set_tooltip_column ()

void
gtk_tree_view_set_tooltip_column (GtkTreeView *tree_view,
                                  gint column);

Если вы планируете использовать простые (только текстовые) подсказки для целых строк, вы можете использовать эту функцию, чтобы GtkTreeView автоматически обрабатывал их за вас. column должен быть установлен на столбец в модели tree_view, содержащий тексты подсказок, или -1 для отключения этой функции.

При включении “has-tooltip” будет установлено в значение TRUE, и tree_view подключит обработчик сигнала “query-tooltip”.

Обратите внимание, что обработчик сигнала устанавливает текст с помощью gtk_tooltip_set_markup(), поэтому символы &, < и т. д. необходимо экранировать в тексте.

Параметры

tree_view

a GtkTreeView

column

целое число, являющееся допустимым номером столбца для модели tree_view

С: 2.12

Типы и значения

struct GtkTreeView

struct GtkTreeView;

перечисление 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;

перечисление GtkTreeViewGridLines

Используется для указания, какие линии сетки нужно отобразить в дереве.

Члены

GTK_TREE_VIEW_GRID_LINES_NONE

Линии сетки отсутствуют.

GTK_TREE_VIEW_GRID_LINES_HORIZONTAL

Горизонтальные линии сетки.

GTK_TREE_VIEW_GRID_LINES_VERTICAL

Вертикальные линии сетки.

GTK_TREE_VIEW_GRID_LINES_BOTH

Горизонтальные и вертикальные линии сетки.

Подробное описание свойств

Свойство “activate-on-single-click”

  “activate-on-single-click” gboolean

Свойство activate-on-single-click определяет, будет ли сигнал «row-activated» испускаться после одиночного щелчка.

Флаги: Чтение / Запись

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

С версии: 3.8

Свойство “enable-grid-lines”

  “enable-grid-lines”        GtkTreeViewGridLines

Определяет, будут ли отображаться сетчатые линии в дереве.

Флаги: Чтение / Запись

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

Свойство “enable-search”

  “enable-search”            gboolean

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

Флаги: Чтение / Запись

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

Свойство “enable-tree-lines”

  “enable-tree-lines”        gboolean

Определяет, будут ли отображаться линии дерева в представлении.

Флаги: Чтение / Запись

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

Свойство “expander-column”

  “expander-column”          GtkTreeViewColumn *

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

Флаги: Чтение / Запись

Свойство “fixed-height-mode”

  “fixed-height-mode”        gboolean

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

Флаги: Чтение / Запись

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

С версии: 2.4

Свойство “headers-clickable”

  “headers-clickable”        gboolean

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

Флаги: Чтение / Запись

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

Свойство “headers-visible”

  “headers-visible”          gboolean

Отображать кнопки заголовков столбцов.

Флаги: Чтение / Запись

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

Свойство “hover-expand”

  “hover-expand”             gboolean

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

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

Флаги: Чтение / Запись

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

С версии: 2.6

Свойство “hover-selection”

  “hover-selection”          gboolean

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

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

Флаги: Чтение / Запись

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

С версии: 2.6

Свойство “level-indentation”

  “level-indentation”        gint

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

Флаги: Чтение / Запись

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

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

С версии: 2.12

Свойство “model”

  “model”                    GtkTreeModel *

Модель для дерева.

Флаги: Чтение / Запись

Свойство “reorderable”

  “reorderable”              gboolean

Представление можно переупорядочивать.

Флаги: Чтение / Запись

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

Свойство “rubber-banding”

  “rubber-banding”           gboolean

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

Флаги: Чтение / Запись

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

Свойство “rules-hint”

  “rules-hint”               gboolean

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

GtkTreeView:rules-hint устарело с версии 3.14 и не должно использоваться в новом коде.

Тема отвечает за рисование строк с чередующимися цветами

Флаги: Чтение / Запись

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

Свойство “search-column”

  “search-column”            gint

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

Флаги: Чтение / Запись

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

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

Свойство “show-expanders”

  “show-expanders”           gboolean

TRUE, если в представлении есть раскрыватели.

Флаги: Чтение / Запись

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

С версии: 2.12

Свойство “tooltip-column”

  “tooltip-column”           gint

Столбец в модели, содержащий текст всплывающей подсказки для строк.

Флаги: Чтение / Запись

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

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

Подробное описание свойств стиля

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

  “allow-rules”              gboolean

Разрешить рисование строк в чередующихся цветах.

Флаги: Только чтение

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

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

  “even-row-color”           GdkColor *

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

Флаги: Только чтение

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

  “expander-size”            gint

Размер стрелки раскрывателя.

Флаги: Только чтение

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

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

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

  “grid-line-pattern”        gchar *

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

Флаги: Только чтение

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

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

  “grid-line-width”          gint

Ширина, в пикселях, сетчатых линий в представлении дерева.

Флаги: Только чтение

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

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

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

  “horizontal-separator”     gint

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

Флаги: Только чтение

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

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

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

  “indent-expanders”         gboolean

Уменьшить раскрыватели.

Флаги: Только чтение

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

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

  “odd-row-color”            GdkColor *

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

Флаги: Только чтение

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

  “tree-line-pattern”        gchar *

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

Флаги: Только чтение

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

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

  “tree-line-width”          gint

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

Флаги: Только чтение

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

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

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

  “vertical-separator”       gint

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

Флаги: Только чтение

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

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

Подробные сведения о сигналах

Сигнал “columns-changed”

void
user_function (GtkTreeView *tree_view,
               gpointer     user_data)

Количество столбцов виджета GtkTreeView изменилось.

Параметры

tree_view

объект, на котором испускается сигнал

user_data

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

Флаги: Run Last

Сигнал “cursor-changed”

void
user_function (GtkTreeView *tree_view,
               gpointer     user_data)

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

Параметры

tree_view

объект, на котором испускается сигнал

user_data

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

Флаги: Run Last

Сигнал “expand-collapse-cursor-row”

gboolean
user_function (GtkTreeView *treeview,
               gboolean     arg1,
               gboolean     arg2,
               gboolean     arg3,
               gpointer     user_data)

Флаги: Action

Сигнал “move-cursor”

gboolean
user_function (GtkTreeView    *tree_view,
               GtkMovementStep step,
               gint            direction,
               gpointer        user_data)

Сигнал “move-cursor” — это сигнал для управления сочетаниями клавиш, который испускается при нажатии пользователем клавиш управления курсором.

Приложениям не следует подключаться к нему, но они могут испускать его с помощью g_signal_emit_by_name(), если им нужно программно управлять курсором. В отличие от gtk_tree_view_set_cursor() и gtk_tree_view_set_cursor_on_cell(), при горизонтальном перемещении “move-cursor” не сбрасывает текущую выделение.

Параметры

tree_view

объект, на котором испускается сигнал.

step

размер шага перемещения, как GtkMovementStep. Поддерживаются GTK_MOVEMENT_LOGICAL_POSITIONS, GTK_MOVEMENT_VISUAL_POSITIONS, GTK_MOVEMENT_DISPLAY_LINES, GTK_MOVEMENT_PAGES и GTK_MOVEMENT_BUFFER_ENDS. GTK_MOVEMENT_LOGICAL_POSITIONS и GTK_MOVEMENT_VISUAL_POSITIONS обрабатываются одинаково.

direction

направление перемещения: +1 для перемещения вперёд; -1 для перемещения назад. Результат перемещения не определён для других значений.

user_data

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

Возвращаемое значение

TRUE, если step поддерживается, FALSE в противном случае.

Флаги: Action

Сигнал “row-activated”

void
user_function (GtkTreeView       *tree_view,
               GtkTreePath       *path,
               GtkTreeViewColumn *column,
               gpointer           user_data)

Сигнал "row-activated" испускается, когда вызывается метод gtk_tree_view_row_activated(), когда пользователь дважды щелкает строку в GtkTreeView с установленным свойством "activate-on-single-click" в FALSE, или когда пользователь один раз щелкает строку, когда свойство "activate-on-single-click" установлено в TRUE. Также он испускается, когда нередактируемая строка выделена, и нажата одна из клавиш: Пробел, Shift+Пробел, Возврат или Enter.

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

Параметры

tree_view

объект, на котором испускается сигнал

path

GtkTreePath для активированной строки

column

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

user_data

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

Флаги: Action

Сигнал “row-collapsed”

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

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

Параметры

tree_view

объект, на котором испускается сигнал

iter

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

path

путь к строке

user_data

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

Флаги: Run Last

Сигнал “row-expanded”

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

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

Параметры

tree_view

объект, на котором испускается сигнал

iter

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

path

путь к строке

user_data

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

Флаги: Run Last

Сигнал “select-all”

gboolean
user_function (GtkTreeView *treeview,
               gpointer     user_data)

Флаги: Action

Сигнал “select-cursor-parent”

gboolean
user_function (GtkTreeView *treeview,
               gpointer     user_data)

Флаги: Action

Сигнал “select-cursor-row”

gboolean
user_function (GtkTreeView *treeview,
               gboolean     arg1,
               gpointer     user_data)

Флаги: Action

Сигнал “start-interactive-search”

gboolean
user_function (GtkTreeView *treeview,
               gpointer     user_data)

Флаги: Action

Сигнал “test-collapse-row”

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

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

Параметры

tree_view

объект, на котором генерируется сигнал

iter

итератор дерева для строки, которую нужно свернуть

path

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

user_data

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

Возвращаемое значение

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

Флаги: Выполнить последним

Сигнал “test-expand-row”

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

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

Параметры

tree_view

объект, на котором генерируется сигнал

iter

итератор дерева для строки, которую нужно развернуть

path

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

user_data

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

Возвращаемое значение

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

Флаги: Выполнить последним

Сигнал “toggle-cursor-row”

gboolean
user_function (GtkTreeView *treeview,
               gpointer     user_data)

Флаги: Действие

Сигнал “unselect-all”

gboolean
user_function (GtkTreeView *treeview,
               gpointer     user_data)

Флаги: Действие

См. также

GtkTreeViewColumn, GtkTreeSelection, GtkTreeModel, GtkTreeView перетаскивание и опускание, GtkTreeSortable, GtkTreeModelSort, GtkListStore, GtkTreeStore, GtkCellRenderer, GtkCellEditable, GtkCellRendererPixbuf, GtkCellRendererText, GtkCellRendererToggle

© 2005–2020 The GNOME Project
Licensed under the GNU Lesser General Public License version 2.1 or later.
https://developer.gnome.org/gtk3/3.22/GtkTreeView.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API