Spec-Zone.ru › GTK 3.22

GtkIconView

GtkIconView — Виджет, отображающий список значков в сетке

Функции

void (*GtkIconViewForeachFunc) ()
GtkWidget * gtk_icon_view_new ()
GtkWidget * gtk_icon_view_new_with_area ()
GtkWidget * gtk_icon_view_new_with_model ()
void gtk_icon_view_set_model ()
GtkTreeModel * gtk_icon_view_get_model ()
void gtk_icon_view_set_text_column ()
gint gtk_icon_view_get_text_column ()
void gtk_icon_view_set_markup_column ()
gint gtk_icon_view_get_markup_column ()
void gtk_icon_view_set_pixbuf_column ()
gint gtk_icon_view_get_pixbuf_column ()
GtkTreePath * gtk_icon_view_get_path_at_pos ()
gboolean gtk_icon_view_get_item_at_pos ()
void gtk_icon_view_convert_widget_to_bin_window_coords ()
void gtk_icon_view_set_cursor ()
gboolean gtk_icon_view_get_cursor ()
void gtk_icon_view_selected_foreach ()
void gtk_icon_view_set_selection_mode ()
GtkSelectionMode gtk_icon_view_get_selection_mode ()
void gtk_icon_view_set_item_orientation ()
GtkOrientation gtk_icon_view_get_item_orientation ()
void gtk_icon_view_set_columns ()
gint gtk_icon_view_get_columns ()
void gtk_icon_view_set_item_width ()
gint gtk_icon_view_get_item_width ()
void gtk_icon_view_set_spacing ()
gint gtk_icon_view_get_spacing ()
void gtk_icon_view_set_row_spacing ()
gint gtk_icon_view_get_row_spacing ()
void gtk_icon_view_set_column_spacing ()
gint gtk_icon_view_get_column_spacing ()
void gtk_icon_view_set_margin ()
gint gtk_icon_view_get_margin ()
void gtk_icon_view_set_item_padding ()
gint gtk_icon_view_get_item_padding ()
void gtk_icon_view_set_activate_on_single_click ()
gboolean gtk_icon_view_get_activate_on_single_click ()
gboolean gtk_icon_view_get_cell_rect ()
void gtk_icon_view_select_path ()
void gtk_icon_view_unselect_path ()
gboolean gtk_icon_view_path_is_selected ()
GList * gtk_icon_view_get_selected_items ()
void gtk_icon_view_select_all ()
void gtk_icon_view_unselect_all ()
void gtk_icon_view_item_activated ()
void gtk_icon_view_scroll_to_path ()
gboolean gtk_icon_view_get_visible_range ()
void gtk_icon_view_set_tooltip_item ()
void gtk_icon_view_set_tooltip_cell ()
gboolean gtk_icon_view_get_tooltip_context ()
void gtk_icon_view_set_tooltip_column ()
gint gtk_icon_view_get_tooltip_column ()
gint gtk_icon_view_get_item_row ()
gint gtk_icon_view_get_item_column ()
void gtk_icon_view_enable_model_drag_source ()
void gtk_icon_view_enable_model_drag_dest ()
void gtk_icon_view_unset_model_drag_source ()
void gtk_icon_view_unset_model_drag_dest ()
void gtk_icon_view_set_reorderable ()
gboolean gtk_icon_view_get_reorderable ()
void gtk_icon_view_set_drag_dest_item ()
void gtk_icon_view_get_drag_dest_item ()
gboolean gtk_icon_view_get_dest_item_at_pos ()
cairo_surface_t * gtk_icon_view_create_drag_icon ()

Свойства

gboolean activate-on-single-click Чтение / Запись
GtkCellArea * cell-area Чтение / Запись / Только для создания
gint column-spacing Чтение / Запись
gint columns Чтение / Запись
GtkOrientation item-orientation Чтение / Запись
gint item-padding Чтение / Запись
gint item-width Чтение / Запись
gint margin Чтение / Запись
gint markup-column Чтение / Запись
GtkTreeModel * model Чтение / Запись
gint pixbuf-column Чтение / Запись
gboolean reorderable Чтение / Запись
gint row-spacing Чтение / Запись
GtkSelectionMode selection-mode Чтение / Запись
gint spacing Чтение / Запись
gint text-column Чтение / Запись
gint tooltip-column Чтение / Запись

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

guchar selection-box-alpha Чтение
GdkColor * selection-box-color Чтение

Сигналы

gboolean activate-cursor-item Действие
void item-activated Выполнить в конце
gboolean move-cursor Действие
void select-all Действие
void select-cursor-item Действие
void selection-changed Выполнить в начале
void toggle-cursor-item Действие
void unselect-all Действие

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

структура GtkIconView
перечисление GtkIconViewDropPosition

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

    GObject
    ╰── GInitiallyUnowned
        ╰── GtkWidget
            ╰── GtkContainer
                ╰── GtkIconView

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

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

Файлы включения

#include <gtk/gtk.h>

Описание

GtkIconView предоставляет альтернативный вид на GtkTreeModel. Он отображает модель в виде сетки значков с метками. Как и GtkTreeView, он позволяет выбрать один или несколько элементов (в зависимости от режима выбора, см. gtk_icon_view_set_selection_mode()). Помимо выбора с помощью стрелок, GtkIconView поддерживает выделение резиновым прямоугольником, которое контролируется перетаскиванием указателя.

Обратите внимание, что если модель дерева основана на фактическом хранилище дерева (в отличие от плоского списка, где отображение значков очевидно), GtkIconView будет отображать только первый уровень дерева и игнорировать ветви дерева.

Узлы CSS

GtkIconView имеет один узел CSS с именем iconview и классом стиля .view. Для выделения резиновым прямоугольником используется под-узел с именем rubberband.

Функции

GtkIconViewForeachFunc ()

void
(*GtkIconViewForeachFunc) (GtkIconView *icon_view,
                           GtkTreePath *path,
                           gpointer data);

Функция, используемая gtk_icon_view_selected_foreach() для отображения всех выбранных строк. Она будет вызываться для каждой выбранной строки в представлении.

Параметры

icon_view

a GtkIconView

path

The GtkTreePath выбранной строки

data

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

[closure]

gtk_icon_view_new ()

GtkWidget *
gtk_icon_view_new (void);

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

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

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

С: 2.6

gtk_icon_view_new_with_area ()

GtkWidget *
gtk_icon_view_new_with_area (GtkCellArea *area);

Создаёт новый виджет GtkIconView, используя указанный area для размещения ячеек внутри иконок.

Параметры

area

the GtkCellArea для размещения ячеек

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

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

С: 3.0

gtk_icon_view_new_with_model ()

GtkWidget *
gtk_icon_view_new_with_model (GtkTreeModel *model);

Создаёт новый виджет GtkIconView с моделью model .

Параметры

model

Модель.

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

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

С: 2.6

gtk_icon_view_set_model ()

void
gtk_icon_view_set_model (GtkIconView *icon_view,
                         GtkTreeModel *model);

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

Параметры

icon_view

A GtkIconView.

model

Модель.

[allow-none]

С: 2.6

gtk_icon_view_get_model ()

GtkTreeModel *
gtk_icon_view_get_model (GtkIconView *icon_view);

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

Параметры

icon_view

a GtkIconView

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

GtkTreeModel, или NULL, если модель не используется.

[nullable][transfer none]

С: 2.6

gtk_icon_view_set_text_column ()

void
gtk_icon_view_set_text_column (GtkIconView *icon_view,
                               gint column);

Устанавливает столбец с текстом для icon_view в column . Столбец с текстом должен иметь тип G_TYPE_STRING.

Параметры

icon_view

A GtkIconView.

column

Столбец в текущей модели или -1 для отображения без текста

С: 2.6

gtk_icon_view_get_text_column ()

gint
gtk_icon_view_get_text_column (GtkIconView *icon_view);

Возвращает столбец с текстом для icon_view .

Параметры

icon_view

A GtkIconView.

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

столбец с текстом, или -1, если он не установлен.

С: 2.6

gtk_icon_view_set_markup_column ()

void
gtk_icon_view_set_markup_column (GtkIconView *icon_view,
                                 gint column);

Устанавливает столбец с разметкой для icon_view в column . Столбец с разметкой должен иметь тип G_TYPE_STRING. Если столбец разметки установлен, он переопределяет столбец с текстом, установленный gtk_icon_view_set_text_column().

Параметры

icon_view

A GtkIconView.

column

Столбец в текущей модели или -1 для отображения без текста

С: 2.6

gtk_icon_view_get_markup_column ()

gint
gtk_icon_view_get_markup_column (GtkIconView *icon_view);

Возвращает столбец с разметкой для icon_view .

Параметры

icon_view

A GtkIconView.

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

столбец с разметкой, или -1, если он не установлен.

С: 2.6

gtk_icon_view_set_pixbuf_column ()

void
gtk_icon_view_set_pixbuf_column (GtkIconView *icon_view,
                                 gint column);

Устанавливает столбец с pixbufs для icon_view в column . Столбец pixbuf должен иметь тип GDK_TYPE_PIXBUF

Параметры

icon_view

A GtkIconView.

column

Столбец в текущей модели или -1 для отключения

С: 2.6

gtk_icon_view_get_pixbuf_column ()

gint
gtk_icon_view_get_pixbuf_column (GtkIconView *icon_view);

Возвращает столбец с pixbufs для icon_view .

Параметры

icon_view

A GtkIconView.

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

столбец pixbuf, или -1, если он не задан.

С: 2.6

gtk_icon_view_get_path_at_pos ()

GtkTreePath *
gtk_icon_view_get_path_at_pos (GtkIconView *icon_view,
                               gint x,
                               gint y);

Находит путь в точке (x , y ), относительно координат bin_window. См. gtk_icon_view_get_item_at_pos(), если вы также заинтересованы в ячейке в указанной позиции. См. gtk_icon_view_convert_widget_to_bin_window_coords() для преобразования координат виджета в координаты bin_window.

Параметры

icon_view

A GtkIconView.

x

Координата X для идентификации

y

Координата Y для идентификации

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

GtkTreePath, соответствующий значку, или NULL, если значок в этой позиции отсутствует.

[nullable][transfer full]

С: 2.6

gtk_icon_view_get_item_at_pos ()

gboolean
gtk_icon_view_get_item_at_pos (GtkIconView *icon_view,
                               gint x,
                               gint y,
                               GtkTreePath **path,
                               GtkCellRenderer **cell);

Находит путь в точке (x , y ), относительно координат bin_window. В отличие от gtk_icon_view_get_path_at_pos(), эта функция также получает ячейку в указанной позиции. Возвращаемый путь следует освободить с помощью gtk_tree_path_free(). См. gtk_icon_view_convert_widget_to_bin_window_coords() для преобразования координат виджета в координаты bin_window.

Параметры

icon_view

A GtkIconView.

x

Координата X для идентификации

y

Координата Y для идентификации

path

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

[out][allow-none]

cell

Место для возврата рендерера ячейки в точке (x , y ), или NULL.

[out][allow-none]

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

TRUE если элемент существует в указанной позиции

С: 2.8

gtk_icon_view_convert_widget_to_bin-window-coords ()

void
gtk_icon_view_convert_widget_to_bin_window_coords
                               (GtkIconView *icon_view,
                                gint wx,
                                gint wy,
                                gint *bx,
                                gint *by);

Преобразует координаты виджета в координаты bin_window, как ожидается, например, функцией gtk_icon_view_get_path_at_pos().

Параметры

icon_view

a GtkIconView

wx

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

wy

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

bx

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

[out]

by

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

[out]

С: 2.12

gtk_icon_view_set_cursor ()

void
gtk_icon_view_set_cursor (GtkIconView *icon_view,
                          GtkTreePath *path,
                          GtkCellRenderer *cell,
                          gboolean start_editing);

Устанавливает текущий фокус клавиатуры в path и выбирает его. Это полезно, когда вы хотите привлечь внимание пользователя к определенному элементу. Если cell не NULL, фокус передаётся ячейке, указанной им. Кроме того, если start_editing TRUE, то редактирование должно начаться в указанной ячейке.

Эта функция часто сопровождается gtk_widget_grab_focus (icon_view) для передачи фокуса клавиатуры виджету. Обратите внимание, что редактирование может произойти только при реализации виджета.

Параметры

icon_view

A GtkIconView

path

A GtkTreePath

cell

Один из рендереров ячеек icon_view, или NULL.

[allow-none]

start_editing

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

С: 2.8

gtk_icon_view_get_cursor ()

gboolean
gtk_icon_view_get_cursor (GtkIconView *icon_view,
                          GtkTreePath **path,
                          GtkCellRenderer **cell);

Заполняет path и cell текущим путем курсора и ячейкой. Если курсор не установлен, то *path будет NULL. Если ни одна ячейка не имеет фокуса, то *cell будет NULL.

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

Параметры

icon_view

A GtkIconView

path

Место для возвращения текущего пути курсора или NULL.

[out][allow-none][transfer full]

cell

Место для возвращения текущей ячейки с фокусом или NULL.

[out][allow-none][transfer none]

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

TRUE, если курсор установлен.

C момента: 2.8

gtk_icon_view_selected_foreach ()

void
gtk_icon_view_selected_foreach (GtkIconView *icon_view,
                                GtkIconViewForeachFunc func,
                                gpointer data);

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

Параметры

icon_view

A GtkIconView.

func

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

[scope call]

data

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

C момента: 2.6

gtk_icon_view_set_selection_mode ()

void
gtk_icon_view_set_selection_mode (GtkIconView *icon_view,
                                  GtkSelectionMode mode);

Устанавливает режим выбора для icon_view .

Параметры

icon_view

A GtkIconView.

mode

Режим выбора

C момента: 2.6

gtk_icon_view_get_selection_mode ()

GtkSelectionMode
gtk_icon_view_get_selection_mode (GtkIconView *icon_view);

Возвращает режим выбора icon_view .

Параметры

icon_view

A GtkIconView.

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

текущий режим выбора

C момента: 2.6

gtk_icon_view_set_item_orientation ()

void
gtk_icon_view_set_item_orientation (GtkIconView *icon_view,
                                    GtkOrientation orientation);

Устанавливает свойство ::item-orientation, определяющее, будут ли метки отображаться рядом с иконками, а не под ними.

Параметры

icon_view

a GtkIconView

orientation

относительное расположение текстов и иконок

C момента: 2.6

gtk_icon_view_get_item_orientation ()

GtkOrientation
gtk_icon_view_get_item_orientation (GtkIconView *icon_view);

Возвращает значение свойства ::item-orientation, определяющее, будут ли метки отображаться рядом с иконками, а не под ними.

Параметры

icon_view

a GtkIconView

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

относительное расположение текстов и иконок

C момента: 2.6

gtk_icon_view_set_columns ()

void
gtk_icon_view_set_columns (GtkIconView *icon_view,
                           gint columns);

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

Параметры

icon_view

a GtkIconView

columns

количество столбцов

C момента: 2.6

gtk_icon_view_get_columns ()

gint
gtk_icon_view_get_columns (GtkIconView *icon_view);

Возвращает значение свойства ::columns.

Параметры

icon_view

a GtkIconView

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

количество столбцов, или -1

C момента: 2.6

gtk_icon_view_set_item_width ()

void
gtk_icon_view_set_item_width (GtkIconView *icon_view,
                              gint item_width);

Устанавливает свойство ::item-width, которое задаёт ширину для каждого элемента. Если оно установлено в -1, просмотр иконок автоматически определит подходящий размер элемента.

Параметры

icon_view

a GtkIconView

item_width

ширина для каждого элемента

C момента: 2.6

gtk_icon_view_get_item_width ()

gint
gtk_icon_view_get_item_width (GtkIconView *icon_view);

Возвращает значение свойства ::item-width.

Параметры

icon_view

a GtkIconView

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

ширина одного элемента, или -1

C момента: 2.6

gtk_icon_view_set_spacing ()

void
gtk_icon_view_set_spacing (GtkIconView *icon_view,
                           gint spacing);

Устанавливает свойство ::spacing, которое задаёт расстояние между ячейками (т.е. иконкой и текстом) элемента.

Параметры

icon_view

a GtkIconView

spacing

расстояние

C момента: 2.6

gtk_icon_view_get_spacing ()

gint
gtk_icon_view_get_spacing (GtkIconView *icon_view);

Возвращает значение свойства ::spacing.

Параметры

icon_view

a GtkIconView

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

расстояние между ячейками

С: 2.6

gtk_icon_view_set_row_spacing ()

void
gtk_icon_view_set_row_spacing (GtkIconView *icon_view,
                               gint row_spacing);

Устанавливает свойство ::row-spacing, которое определяет расстояние между строками в представлении иконок.

Параметры

icon_view

a GtkIconView

row_spacing

расстояние между строками

С: 2.6

gtk_icon_view_get_row_spacing ()

gint
gtk_icon_view_get_row_spacing (GtkIconView *icon_view);

Возвращает значение свойства ::row-spacing.

Параметры

icon_view

a GtkIconView

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

расстояние между строками

С: 2.6

gtk_icon_view_set_column_spacing ()

void
gtk_icon_view_set_column_spacing (GtkIconView *icon_view,
                                  gint column_spacing);

Устанавливает свойство ::column-spacing, которое определяет расстояние между столбцами в представлении иконок.

Параметры

icon_view

a GtkIconView

column_spacing

расстояние между столбцами

С: 2.6

gtk_icon_view_get_column_spacing ()

gint
gtk_icon_view_get_column_spacing (GtkIconView *icon_view);

Возвращает значение свойства ::column-spacing.

Параметры

icon_view

a GtkIconView

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

расстояние между столбцами

С: 2.6

gtk_icon_view_set_margin ()

void
gtk_icon_view_set_margin (GtkIconView *icon_view,
                          gint margin);

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

Параметры

icon_view

a GtkIconView

margin

отступ

С: 2.6

gtk_icon_view_get_margin ()

gint
gtk_icon_view_get_margin (GtkIconView *icon_view);

Возвращает значение свойства ::margin.

Параметры

icon_view

a GtkIconView

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

расстояние по границам

С: 2.6

gtk_icon_view_set_item_padding ()

void
gtk_icon_view_set_item_padding (GtkIconView *icon_view,
                                gint item_padding);

Устанавливает свойство “item-padding”, которое определяет отступы вокруг каждого элемента в представлении иконок.

Параметры

icon_view

a GtkIconView

item_padding

отступ элемента

С: 2.18

gtk_icon_view_get_item_padding ()

gint
gtk_icon_view_get_item_padding (GtkIconView *icon_view);

Возвращает значение свойства ::item-padding.

Параметры

icon_view

a GtkIconView

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

отступ вокруг элементов

С: 2.18

gtk_icon_view_set_activate_on_single_click ()

void
gtk_icon_view_set_activate_on_single_click
                               (GtkIconView *icon_view,
                                gboolean single);

Приводит к тому, что сигнал “item-activated” будет генерироваться при одном щелчке вместо двойного.

Параметры

icon_view

a GtkIconView

single

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

С: 3.8

gtk_icon_view_get_activate_on_single_click ()

gboolean
gtk_icon_view_get_activate_on_single_click
                               (GtkIconView *icon_view);

Получает значение, заданное функцией gtk_icon_view_set_activate_on_single_click().

Параметры

icon_view

a GtkIconView

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

TRUE, если item-activated будет генерироваться при одном щелчке

С: 3.8

gtk_icon_view_get_cell_rect ()

gboolean
gtk_icon_view_get_cell_rect (GtkIconView *icon_view,
                             GtkTreePath *path,
                             GtkCellRenderer *cell,
                             GdkRectangle *rect);

Заполняет прямоугольник области для ячейки, указанной параметрами path и cell , в координатах виджета. Если cell равен NULL, используется основная область ячейки.

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

Параметры

icon_view

a GtkIconView

path

a GtkTreePath

cell

a GtkCellRenderer или NULL.

[allow-none]

rect

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

[out]

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

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

С: 3.6

gtk_icon_view_select_path ()

void
gtk_icon_view_select_path (GtkIconView *icon_view,
                           GtkTreePath *path);

Выбирает строку по адресу path .

Параметры

icon_view

A GtkIconView.

path

The GtkTreePath для выбора.

С версии: 2.6

gtk_icon_view_unselect_path ()

void
gtk_icon_view_unselect_path (GtkIconView *icon_view,
                             GtkTreePath *path);

Снимает выбор со строки по адресу path .

Параметры

icon_view

A GtkIconView.

path

The GtkTreePath для снятия выбора.

С версии: 2.6

gtk_icon_view_path_is_selected ()

gboolean
gtk_icon_view_path_is_selected (GtkIconView *icon_view,
                                GtkTreePath *path);

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

Параметры

icon_view

A GtkIconView.

path

A GtkTreePath для проверки выбора.

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

TRUE, если path выбран.

С версии: 2.6

gtk_icon_view_get_selected_items ()

GList *
gtk_icon_view_get_selected_items (GtkIconView *icon_view);

Создаёт список путей всех выбранных элементов. Если после вызова этой функции планируется изменение модели, можно преобразовать возвращённый список в список GtkTreeRowReferences. Для этого можно использовать gtk_tree_row_reference_new().

Для освобождения возвращаемого значения используйте:

iconview.view
╰── [rubberband]

Параметры

icon_view

A GtkIconView.

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

A GList содержащий GtkTreePath для каждой выбранной строки.

[element-type GtkTreePath][transfer full]

С версии: 2.6

gtk_icon_view_select_all ()

void
gtk_icon_view_select_all (GtkIconView *icon_view);

Выбирает все значки. icon_view должен иметь режим выбора, установленный на GTK_SELECTION_MULTIPLE.

Параметры

icon_view

A GtkIconView.

С версии: 2.6

gtk_icon_view_unselect_all ()

void
gtk_icon_view_unselect_all (GtkIconView *icon_view);

Снимает выбор со всех значков.

Параметры

icon_view

A GtkIconView.

С версии: 2.6

gtk_icon_view_item_activated ()

void
gtk_icon_view_item_activated (GtkIconView *icon_view,
                              GtkTreePath *path);

Активирует элемент, указанный path .

Параметры

icon_view

A GtkIconView

path

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

С версии: 2.6

gtk_icon_view_scroll_to_path ()

void
gtk_icon_view_scroll_to_path (GtkIconView *icon_view,
                              GtkTreePath *path,
                              gboolean use_align,
                              gfloat row_align,
                              gfloat col_align);

Перемещает выравнивание icon_view в позицию, заданную path . row_align определяет, куда помещается строка, а col_align определяет, куда помещается column. Оба значения должны быть от 0.0 до 1.0. 0.0 означает выравнивание по левому/верхнему краю, 1.0 означает выравнивание по правому/нижнему краю, 0.5 означает центрирование.

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

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

Параметры

icon_view

A GtkIconView.

path

Путь к элементу, который нужно переместить.

use_align

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

row_align

Вертикальное выравнивание элемента, указанного path .

col_align

Горизонтальное выравнивание элемента, указанного path .

С версии: 2.8

gtk_icon_view_get_visible_range ()

gboolean
gtk_icon_view_get_visible_range (GtkIconView *icon_view,
                                 GtkTreePath **start_path,
                                 GtkTreePath **end_path);

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

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

Параметры

icon_view

A GtkIconView

start_path

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

[out][allow-none]

end_path

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

[out][allow-none]

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

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

С: 2.8

gtk_icon_view_set_tooltip_item ()

void
gtk_icon_view_set_tooltip_item (GtkIconView *icon_view,
                                GtkTooltip *tooltip,
                                GtkTreePath *path);

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

Параметры

icon_view

a GtkIconView

tooltip

a GtkTooltip

path

a GtkTreePath

С: 2.12

gtk_icon_view_set_tooltip_cell ()

void
gtk_icon_view_set_tooltip_cell (GtkIconView *icon_view,
                                GtkTooltip *tooltip,
                                GtkTreePath *path,
                                GtkCellRenderer *cell);

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

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

Параметры

icon_view

a GtkIconView

tooltip

a GtkTooltip

path

a GtkTreePath

cell

a GtkCellRenderer или NULL.

[allow-none]

С: 2.12

gtk_icon_view_get_tooltip_context ()

gboolean
gtk_icon_view_get_tooltip_context (GtkIconView *icon_view,
                                   gint *x,
                                   gint *y,
                                   gboolean keyboard_tip,
                                   GtkTreeModel **model,
                                   GtkTreePath **path,
                                   GtkTreeIter *iter);

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

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

Параметры

icon_view

an GtkIconView

x

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

[inout]

y

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

[inout]

keyboard_tip

является ли это всплывающей подсказкой клавиатуры

model

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

[out][allow-none][transfer none]

path

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

[out][allow-none]

iter

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

[out][allow-none]

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

является ли заданный контекст подсказки указателем на элемент

С: 2.12

gtk_icon_view_set_tooltip_column ()

void
gtk_icon_view_set_tooltip_column (GtkIconView *icon_view,
                                  gint column);

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

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

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

Параметры

icon_view

a GtkIconView

column

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

Since: 2.12

gtk_icon_view_get_tooltip_column ()

gint
gtk_icon_view_get_tooltip_column (GtkIconView *icon_view);

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

Параметры

icon_view

a GtkIconView

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

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

Since: 2.12

gtk_icon_view_get_item_row ()

gint
gtk_icon_view_get_item_row (GtkIconView *icon_view,
                            GtkTreePath *path);

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

Параметры

icon_view

a GtkIconView

path

the GtkTreePath элемента

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

Строка, в которой отображается элемент

Since: 2.22

gtk_icon_view_get_item_column ()

gint
gtk_icon_view_get_item_column (GtkIconView *icon_view,
                               GtkTreePath *path);

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

Параметры

icon_view

a GtkIconView

path

the GtkTreePath элемента

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

Столбец, в котором отображается элемент

Since: 2.22

gtk_icon_view_enable_model_drag_source ()

void
gtk_icon_view_enable_model_drag_source
                               (GtkIconView *icon_view,
                                GdkModifierType start_button_mask,
                                const GtkTargetEntry *targets,
                                gint n_targets,
                                GdkDragAction actions);

Преобразует icon_view в источник перетаскивания для автоматического DND. Вызов этого метода устанавливает “reorderable” в FALSE.

Параметры

icon_view

a GtkIconView

start_button_mask

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

targets

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

[массив length=n_targets]

n_targets

количество элементов в targets

actions

маска возможных действий для перетаскивания из этого виджета

Since: 2.8

gtk_icon_view_enable_model_drag_dest ()

void
gtk_icon_view_enable_model_drag_dest (GtkIconView *icon_view,
                                      const GtkTargetEntry *targets,
                                      gint n_targets,
                                      GdkDragAction actions);

Преобразует icon_view в целевой объект для автоматического DND. Вызов этого метода устанавливает “reorderable” в FALSE.

Параметры

icon_view

a GtkIconView

targets

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

[массив length=n_targets]

n_targets

количество элементов в targets

actions

маска возможных действий для перетаскивания в этот виджет

Since: 2.8

gtk_icon_view_unset_model_drag_source ()

void
gtk_icon_view_unset_model_drag_source (GtkIconView *icon_view);

Отменяет действие gtk_icon_view_enable_model_drag_source(). Вызов этого метода устанавливает “reorderable” в FALSE.

Параметры

icon_view

a GtkIconView

Since: 2.8

gtk_icon_view_unset_model_drag_dest ()

void
gtk_icon_view_unset_model_drag_dest (GtkIconView *icon_view);

Отменяет действие gtk_icon_view_enable_model_drag_dest(). Вызов этого метода устанавливает “reorderable” в FALSE.

Параметры

icon_view

a GtkIconView

Since: 2.8

gtk_icon_view_set_reorderable ()

void
gtk_icon_view_set_reorderable (GtkIconView *icon_view,
                               gboolean reorderable);

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

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

Параметры

icon_view

A GtkIconView.

reorderable

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

С: 2.8

gtk_icon_view_get_reorderable ()

gboolean
gtk_icon_view_get_reorderable (GtkIconView *icon_view);

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

Параметры

icon_view

a GtkIconView

Возвращает

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

С: 2.8

gtk_icon_view_set_drag_dest_item ()

void
gtk_icon_view_set_drag_dest_item (GtkIconView *icon_view,
                                  GtkTreePath *path,
                                  GtkIconViewDropPosition pos);

Устанавливает элемент, который выделяется для обратной связи.

Параметры

icon_view

a GtkIconView

path

Путь к элементу для выделения, или NULL.

[allow-none]

pos

Указывает, куда поместить, относительно элемента

С: 2.8

gtk_icon_view_get_drag_dest_item ()

void
gtk_icon_view_get_drag_dest_item (GtkIconView *icon_view,
                                  GtkTreePath **path,
                                  GtkIconViewDropPosition *pos);

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

Параметры

icon_view

a GtkIconView

path

Место возврата пути выделенного элемента, или NULL.

[out][allow-none]

pos

Место возврата позиции вставки, или NULL.

[out][allow-none]

С: 2.8

gtk_icon_view_get_dest_item_at-pos ()

gboolean
gtk_icon_view_get_dest_item_at_pos (GtkIconView *icon_view,
                                    gint drag_x,
                                    gint drag_y,
                                    GtkTreePath **path,
                                    GtkIconViewDropPosition *pos);

Определяет целевой элемент для заданной позиции.

Параметры

icon_view

a GtkIconView

drag_x

позиция для определения целевого элемента

drag_y

позиция для определения целевого элемента

path

Место возврата пути элемента, или NULL.

[out][allow-none]

pos

Место возврата позиции вставки, или NULL.

[out][allow-none]

Возвращает

является ли в данной позиции элемент.

С: 2.8

gtk_icon_view_create_drag-icon ()

cairo_surface_t *
gtk_icon_view_create_drag_icon (GtkIconView *icon_view,
                                GtkTreePath *path);

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

Параметры

icon_view

a GtkIconView

path

a GtkTreePath в icon_view

Возвращает

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

[transfer full]

С: 2.8

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

struct GtkIconView

struct GtkIconView;

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

Перечисление для определения позиции падения элемента.

Члены

GTK_ICON_VIEW_NO_DROP

перетаскивание невозможно

GTK_ICON_VIEW_DROP_INTO

элемент заменяет существующий

GTK_ICON_VIEW_DROP_LEFT

элемент вставляется слева

GTK_ICON_VIEW_DROP_RIGHT

элемент вставляется справа

GTK_ICON_VIEW_DROP_ABOVE

элемент вставляется сверху

GTK_ICON_VIEW_DROP_BELOW

элемент вставляется снизу

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

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

  “activate-on-single-click” gboolean

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

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

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

С версии: 3.8

Свойство “cell-area”

  “cell-area”                GtkCellArea *

Объект GtkCellArea, используемый для компоновки элементов отображения ячеек для этого представления.

Если при создании представления иконок с помощью gtk_icon_view_new_with_area() область не указана, будет использоваться GtkCellAreaBox.

Флаги: Чтение / Запись / Только для создания

С версии: 3.0

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

  “column-spacing”           gint

Свойство column-spacing задаёт расстояние между столбцами в представлении иконок.

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

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

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

С версии: 2.6

Свойство “columns”

  “columns”                  gint

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

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

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

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

С версии: 2.6

Свойство “item-orientation”

  “item-orientation”         GtkOrientation

Свойство item-orientation задаёт расположение элементов (т.е. иконки и текста) относительно друг друга.

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

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

С версии: 2.6

Свойство “item-padding”

  “item-padding”             gint

Свойство item-padding задаёт отступы вокруг каждого элемента в представлении иконок.

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

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

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

С версии: 2.18

Свойство “item-width”

  “item-width”               gint

Свойство item-width задаёт ширину каждого элемента. Если оно равно -1, представление иконок автоматически определит подходящий размер элемента.

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

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

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

С версии: 2.6

Свойство “margin”

  “margin”                   gint

Свойство margin задаёт отступы по краям представления иконок.

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

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

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

С версии: 2.6

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

  “markup-column”            gint

Свойство ::markup-column содержит номер столбца модели, содержащего данные разметки для отображения. Столбец разметки должен быть типа G_TYPE_STRING. Если это свойство и свойство :text-column установлены, оно переопределяет столбец текста. Если оба установлены в -1, текст не отображается.

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

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

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

С версии: 2.6

Свойство “model”

  “model”                    GtkTreeModel *

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

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

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

  “pixbuf-column”            gint

Свойство ::pixbuf-column содержит номер столбца модели, содержащего pixbuфы для отображения. Столбец pixbuf должен быть типа GDK_TYPE_PIXBUF. Установка этого свойства в -1 отключает отображение pixbuфов.

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

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

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

С версии: 2.6

Свойство “reorderable”

  “reorderable”              gboolean

Свойство reorderable задаёт возможность переупорядочивания элементов с помощью DND.

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

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

С версии: 2.8

Свойство “row-spacing”

  “row-spacing”              gint

Свойство row-spacing задаёт расстояние между строками в представлении иконок.

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

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

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

С версии: 2.6

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

  “selection-mode”           GtkSelectionMode

Свойство ::selection-mode задаёт режим выбора для представления иконок. Если режим GTK_SELECTION_MULTIPLE, включён резиновый выбор, в остальных режимах возможен только выбор с помощью клавиатуры.

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

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

С версии: 2.6

Свойство “spacing”

  “spacing”                  gint

Свойство spacing задаёт отступ между ячейками (т.е. иконкой и текстом) элемента.

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

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

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

С версии: 2.6

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

  “text-column”              gint

Свойство ::text-column содержит номер столбца модели, содержащего текст для отображения. Столбец текста должен быть типа G_TYPE_STRING. Если это свойство и свойство :markup-column установлены в -1, текст не отображается.

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

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

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

С версии: 2.6

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

  “tooltip-column”           gint

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

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

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

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

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

Свойство стиля “selection-box-alpha”

  “selection-box-alpha”      guchar

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

GtkIconView:selection-box-alpha устарело с версии 3.20 и не должно использоваться в новом коде.

Непрозрачность рамки выделения определяется CSS; значение этого свойства стиля игнорируется.

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

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

Свойство стиля “selection-box-color”

  “selection-box-color”      GdkColor *

Цвет рамки выделения.

GtkIconView:selection-box-color устарело с версии 3.20 и не должно использоваться в новом коде.

Цвет рамки выделения определяется CSS; значение этого свойства стиля игнорируется.

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

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

Сигнал “activate-cursor-item”

gboolean
user_function (GtkIconView *iconview,
               gpointer     user_data)

Сигнал привязки к клавише, который генерируется при активации текущего выделенного элемента.

Приложениям не следует подключаться к этому сигналу, но они могут сгенерировать его с помощью g_signal_emit_by_name(), если им нужно программно управлять активацией.

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

Параметры

iconview

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

user_data

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

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

Сигнал “item-activated”

void
user_function (GtkIconView *iconview,
               GtkTreePath *path,
               gpointer     user_data)

Сигнал ::item-activated генерируется, когда вызывается метод gtk_icon_view_item_activated(), когда пользователь дважды щелкает элемент с установленным свойством «activate-on-single-click» в значение FALSE, или когда пользователь один раз щелкает элемент, если свойство «activate-on-single-click» установлено в значение TRUE. Он также генерируется при выборе нередактируемого элемента и нажатии одной из клавиш: Пробел, Возврат или Ввод.

Параметры

iconview

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

path

GtkTreePath активированного элемента

user_data

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

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

Сигнал “move-cursor”

gboolean
user_function (GtkIconView    *iconview,
               GtkMovementStep step,
               gint            count,
               gpointer        user_data)

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

Приложениям не следует подключаться к этому сигналу, но они могут сгенерировать его с помощью g_signal_emit_by_name(), если им нужно программно управлять курсором.

По умолчанию для этого сигнала назначены:

  • Клавиши со стрелками, перемещающие на один шаг

  • Клавиши Home/End, перемещающие к первому/последнему элементу

  • Клавиши PageUp/PageDown, перемещающие на «страницы». Все эти клавиши будут расширять выбор при одновременном использовании клавиши Shift.

Параметры

iconview

объект, получивший сигнал

step

размер шага перемещения, как GtkMovementStep

count

количество единиц перемещения step

user_data

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

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

Сигнал “select-all”

void
user_function (GtkIconView *iconview,
               gpointer     user_data)

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

Приложениям не следует подключаться к этому сигналу, но они могут сгенерировать его с помощью g_signal_emit_by_name(), если им нужно программно управлять выбором.

По умолчанию для этого сигнала назначена комбинация Ctrl+a.

Параметры

iconview

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

user_data

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

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

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

void
user_function (GtkIconView *iconview,
               gpointer     user_data)

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

Приложениям не следует подключаться к этому сигналу, но они могут сгенерировать его с помощью g_signal_emit_by_name(), если им нужно программно управлять выбором.

Для этого сигнала нет назначений по умолчанию.

Параметры

iconview

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

user_data

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

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

Сигнал “selection-changed”

void
user_function (GtkIconView *iconview,
               gpointer     user_data)

Сигнал ::selection-changed генерируется при изменении выделения (т.е., набора выделенных элементов).

Параметры

iconview

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

user_data

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

Флаги: Выполнить первым

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

void
user_function (GtkIconView *iconview,
               gpointer     user_data)

Сигнал привязки к клавише, который генерируется, когда пользователь переключает выделение текущего выделенного элемента. Точный эффект зависит от режима выбора.

Приложениям не следует подключаться к этому сигналу, но они могут сгенерировать его с помощью g_signal_emit_by_name(), если им нужно программно управлять выбором.

По умолчанию для этого сигнала нет привязки, но Ctrl+Пробел.

Параметры

iconview

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

user_data

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

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

Сигнал “unselect-all”

void
user_function (GtkIconView *iconview,
               gpointer     user_data)

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

Приложениям не следует подключаться к этому сигналу, но они могут сгенерировать его с помощью g_signal_emit_by_name(), если им нужно программно управлять выбором.

По умолчанию для этого сигнала назначена комбинация Ctrl+Shift+a.

Параметры

iconview

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

user_data

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

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

© 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/GtkIconView.html

Spec-Zone.ru

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