Spec-Zone.ru › GTK 3.24

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 выделение-при-наведении Чтение / Запись
int отступ-уровня Чтение / Запись
GtkTreeModel * модель Чтение / Запись
gboolean переупорядочиваемый Чтение / Запись
gboolean резиновая-полоса Чтение / Запись
gboolean подсказка-правил Чтение / Запись
int колонка-поиска Чтение / Запись
gboolean показывать-расширители Чтение / Запись
int колонка-подсказки Чтение / Запись

Стилизованные свойства

gboolean разрешить-правила Чтение
GdkColor * цвет-чётной-строки Чтение
int размер-расширителя Чтение
char * шаблон-линий-сетки Чтение
int ширина-линий-сетки Чтение
int горизонтальное-разделительное-элемент Чтение
gboolean отступ-расширителей Чтение
GdkColor * цвет-нечётной-строки Чтение
char * шаблон-линий-дерева Чтение
int ширина-линий-дерева Чтение
int вертикальное-разделительное-элемент Чтение

Сигналы

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
enum GtkTreeViewDropPosition
GtkTreeViewPrivate
enum 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 означает, что эта функция отключена.

Since: 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 в противном случае.

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

Since: 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 в противном случае.

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

a GtkTreeView

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

A 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

A GtkTreeView.

model

Модель.

[allow-none]

gtk_tree_view_get_selection ()

GtkTreeSelection *
gtk_tree_view_get_selection (GtkTreeView *tree_view);

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

Параметры

tree_view

A 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

A 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

A 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

A 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

A 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

A 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

...

A NULL-terminated list of attributes

Возвращает

Количество столбцов в 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

объект GtkTreeView

position

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

title

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

cell

визуализатор ячейки для столбца

func

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

data

данные для func

dnotify

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

Возвращает

число столбцов в tree view после вставки

gtk_tree_view_get_n_columns ()

guint
gtk_tree_view_get_n_columns (GtkTreeView *tree_view);

Получает количество столбцов в заданном tree_view.

Параметры

tree_view

объект GtkTreeView

Возвращает

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

Since: 3.4

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 если позиция находится вне диапазона столбцов.

[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

Объект 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

Объект GtkTreeView

column

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

base_column

Столбец, относительно которого происходит перемещение, или 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

Объект GtkTreeView

column

NULL, или столбец, в котором будет отображаться стрелка раскрытия.

[nullable]

gtk_tree_view_get_expander_column ()

GtkTreeViewColumn *
gtk_tree_view_get_expander_column (GtkTreeView *tree_view);

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

Параметры

tree_view

Объект 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, or 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

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][optional][nullable]

column

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

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

cell_x

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

[out][optional]

cell_y

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

[out][optional]

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

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

Since: 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 прямоугольника будут заполнены 0. Если column равно NULL, поля x и width будут заполнены 0. Сумма всех прямоугольников ячеек не покрывает весь дерево; между строками, например, есть дополнительные пиксели. Возвращаемый прямоугольник эквивалентен cell_area, переданному в gtk_cell_renderer_render(). Эта функция допустима только в том случае, если tree_view реализован.

Параметры

tree_view

a GtkTreeView

path

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

[allow-none]

column

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

Заполняет прямоугольник ограничивающей рамки в координатах bin_window для ячейки в строке, указанной path, и столбце, указанном column. Если path равно NULL, или указывает на узел, не найденный в дереве, поля y и height прямоугольника будут заполнены 0. Если column равно NULL, поля x и width будут заполнены 0. Возвращаемый прямоугольник эквивалентен background_area, переданному в gtk_cell_renderer_render(). Эти фоновые области повторяются, чтобы покрыть все bin_window. В отличие от 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 текущей видимой областью буфера в координатах дерева. Преобразуйте в координаты bin_window с помощью 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);

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

Параметры

tree_view

a GtkTreeView

bx

Координата X, относительная к bin_window

by

Координата Y, относительная к bin_window

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 в место назначения для автоматического перетаскивания. Вызов этого метода устанавливает “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 в источник перетаскивания для автоматического перетаскивания. Вызов этого метода устанавливает “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);

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

Параметры

tree_view

a GtkTreeView

path

a GtkTreePath in 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, пользователь все равно может начать поиск, используя привязку клавиш «start-interactive-search».

Параметры

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 как столбец, в котором должен выполняться интерактивный поиск для текущей модели.

Если столбец поиска установлен, пользователи могут использовать привязку клавиш «start-interactive-search», чтобы открыть всплывающее окно поиска. Свойство 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]

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

the GtkTreeModel

iter

a 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

a 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

a GtkTreeView

func

a 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

a 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

a 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

a 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

a 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

a 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

a 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 всегда будут преобразованы для относительности к bin_window tree_view, если 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» после одного щелчка.

Владелец: GtkTreeView

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

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

С версии: 3.8

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

  “enable-grid-lines”        GtkTreeViewGridLines

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

Владелец: GtkTreeView

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

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

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

  “enable-search”            gboolean

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

Владелец: GtkTreeView

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

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

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

  “enable-tree-lines”        gboolean

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

Владелец: GtkTreeView

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

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

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

  “expander-column”          GtkTreeViewColumn *

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

Владелец: GtkTreeView

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

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

  “fixed-height-mode”        gboolean

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

Владелец: GtkTreeView

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

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

С версии: 2.4

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

  “headers-clickable”        gboolean

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

Владелец: GtkTreeView

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

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

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

  “headers-visible”          gboolean

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

Владелец: GtkTreeView

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

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

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

  “hover-expand”             gboolean

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

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

Владелец: GtkTreeView

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

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

С версии: 2.6

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

  “hover-selection”          gboolean

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

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

Владелец: GtkTreeView

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

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

С версии: 2.6

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

  “level-indentation”        int

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

Владелец: GtkTreeView

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

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

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

С версии: 2.12

Свойство “model”

  “model”                    GtkTreeModel *

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

Владелец: GtkTreeView

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

Свойство “reorderable”

  “reorderable”              gboolean

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

Владелец: GtkTreeView

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

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

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

  “rubber-banding”           gboolean

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

Владелец: GtkTreeView

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

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

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

  “rules-hint”               gboolean

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

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

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

Владелец: GtkTreeView

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

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

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

  “search-column”            int

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

Владелец: GtkTreeView

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

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

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

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

  “show-expanders”           gboolean

TRUE если представление имеет расширители.

Владелец: GtkTreeView

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

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

С версии: 2.12

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

  “tooltip-column”           int

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

Владелец: GtkTreeView

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

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

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

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

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

  “allow-rules”              gboolean

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

Владелец: GtkTreeView

Флаги: Чтение

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

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

  “even-row-color”           GdkColor *

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

Владелец: GtkTreeView

Флаги: Чтение

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

  “expander-size”            int

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

Владелец: GtkTreeView

Флаги: Чтение

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

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

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

  “grid-line-pattern”        char *

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

Владелец: GtkTreeView

Флаги: Чтение

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

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

  “grid-line-width”          int

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

Владелец: GtkTreeView

Флаги: Чтение

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

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

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

  “horizontal-separator”     int

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

Владелец: GtkTreeView

Флаги: Чтение

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

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

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

  “indent-expanders”         gboolean

Вдавливать расширители.

Владелец: GtkTreeView

Флаги: Чтение

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

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

  “odd-row-color”            GdkColor *

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

Владелец: GtkTreeView

Флаги: Чтение

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

  “tree-line-pattern”        char *

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

Владелец: GtkTreeView

Флаги: Чтение

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

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

  “tree-line-width”          int

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

Владелец: GtkTreeView

Флаги: Чтение

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

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

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

  “vertical-separator”       int

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

Владелец: GtkTreeView

Флаги: Чтение

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

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

Подробное описание сигналов

Сигнал “columns-changed”

void
user_function (GtkTreeView *tree_view,
               gpointer     user_data)

Количество столбцов в списке изменилось.

Параметры

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,
               int             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(), при двойном щелчке пользователем строки дерева со свойством "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 для отклонения

Флаги: Run Last

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

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

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

Параметры

tree_view

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

iter

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

path

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

user_data

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

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

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

Флаги: Run Last

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

gboolean
user_function (GtkTreeView *treeview,
               gpointer     user_data)

Флаги: Action

Сигнал “unselect-all”

gboolean
user_function (GtkTreeView *treeview,
               gpointer     user_data)

Флаги: Action

См. также

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.24/GtkTreeView.html

Spec-Zone.ru

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