Spec-Zone.ru › GTK 4.0

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 ()
int gtk_icon_view_get_text_column ()
void gtk_icon_view_set_markup_column ()
int gtk_icon_view_get-markup-column ()
void gtk_icon_view_set_pixbuf_column ()
int 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_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 ()
int gtk_icon_view_get_columns ()
void gtk_icon_view_set_item_width ()
int gtk_icon_view_get_item_width ()
void gtk_icon_view_set_spacing ()
int gtk_icon_view_get_spacing ()
void gtk_icon_view_set_row_spacing ()
int gtk_icon_view_get_row_spacing ()
void gtk_icon_view_set_column_spacing ()
int gtk_icon_view_get_column_spacing ()
void gtk_icon_view_set_margin ()
int gtk_icon_view_get_margin ()
void gtk_icon_view_set_item_padding ()
int 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 ()
int gtk_icon_view_get_tooltip_column ()
int gtk_icon_view_get_item_row ()
int 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 ()
GdkPaintable * gtk_icon_view_create_drag_icon ()

Свойства

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

Сигналы

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
            ╰── GtkIconView

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

GtkIconView реализует GtkAccessible, GtkBuildable, GtkConstraintTarget, 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

виджет GtkIconView

path

GtkTreePath выделенной строки

data

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

[closure]

gtk_icon_view_new ()

GtkWidget *
gtk_icon_view_new (void);

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

Возвращает

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

gtk_icon_view_new_with_area ()

GtkWidget *
gtk_icon_view_new_with_area (GtkCellArea *area);

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

Параметры

area

используемый GtkCellArea для выравнивания ячеек

Возвращает

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

gtk_icon_view_new_with_model ()

GtkWidget *
gtk_icon_view_new_with_model (GtkTreeModel *model);

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

Параметры

model

Модель.

Возвращает

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

gtk_icon_view_set_model ()

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

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

Параметры

icon_view

виджет GtkIconView.

model

Модель.

[allow-none]

gtk_icon_view_get_model ()

GtkTreeModel *
gtk_icon_view_get_model (GtkIconView *icon_view);

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

Параметры

icon_view

виджет GtkIconView

Возвращает

виджет GtkTreeModel, или NULL если таковой отсутствует.

[nullable][transfer none]

gtk_icon_view_set_text_column ()

void
gtk_icon_view_set_text_column (GtkIconView *icon_view,
                               int column);

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

Параметры

icon_view

виджет GtkIconView.

column

колонка в используемой модели, или -1 для отображения без текста

gtk_icon_view_get_text_column ()

int
gtk_icon_view_get_text_column (GtkIconView *icon_view);

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

Параметры

icon_view

виджет GtkIconView.

Возвращает

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

gtk_icon_view_set_markup_column ()

void
gtk_icon_view_set_markup_column (GtkIconView *icon_view,
                                 int column);

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

Параметры

icon_view

виджет GtkIconView.

column

колонка в используемой модели, или -1 для отображения без текста

gtk_icon_view_get_markup_column ()

int
gtk_icon_view_get_markup_column (GtkIconView *icon_view);

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

Параметры

icon_view

виджет GtkIconView.

Возвращает

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

gtk_icon_view_set_pixbuf_column ()

void
gtk_icon_view_set_pixbuf_column (GtkIconView *icon_view,
                                 int column);

Устанавливает колонку с пикбуфами для icon_view в column. Колонка пикбуфов должна иметь тип GDK_TYPE_PIXBUF

Параметры

icon_view

виджет GtkIconView.

column

колонка в используемой модели, или -1 для отключения

gtk_icon_view_get_pixbuf_column ()

int
gtk_icon_view_get_pixbuf_column (GtkIconView *icon_view);

Возвращает колонку с пикбуфами для icon_view.

Параметры

icon_view

виджет GtkIconView.

Возвращает

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

gtk_icon_view_get_path_at_pos ()

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

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

Параметры

icon_view

A GtkIconView.

x

Позиция x для определения

y

Позиция y для определения

Возвращает

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

[nullable][transfer full]

gtk_icon_view_get_item_at_pos ()

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

Получает путь и ячейку для значка в заданной позиции.

Параметры

icon_view

A GtkIconView.

x

Позиция x для определения

y

Позиция y для определения

path

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

[out][allow-none]

cell

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

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

Возвращает

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

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

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 если курсор установлен.

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

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

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

Режим выбора

gtk_icon_view_get_selection_mode ()

GtkSelectionMode
gtk_icon_view_get_selection_mode (GtkIconView *icon_view);

Получает режим выбора icon_view .

Параметры

icon_view

A GtkIconView.

Возвращает

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

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

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

gtk_icon_view_get_item_orientation ()

GtkOrientation
gtk_icon_view_get_item_orientation (GtkIconView *icon_view);

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

Параметры

icon_view

a GtkIconView

Возвращает

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

gtk_icon_view_set_columns ()

void
gtk_icon_view_set_columns (GtkIconView *icon_view,
                           int columns);

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

Параметры

icon_view

a GtkIconView

columns

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

gtk_icon_view_get_columns ()

int
gtk_icon_view_get_columns (GtkIconView *icon_view);

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

Параметры

icon_view

a GtkIconView

Возвращает

число столбцов или -1

gtk_icon_view_set_item_width ()

void
gtk_icon_view_set_item_width (GtkIconView *icon_view,
                              int item_width);

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

Параметры

icon_view

a GtkIconView

item_width

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

gtk_icon_view_get_item_width ()

int
gtk_icon_view_get_item_width (GtkIconView *icon_view);

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

Параметры

icon_view

a GtkIconView

Возвращает

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

gtk_icon_view_set_spacing ()

void
gtk_icon_view_set_spacing (GtkIconView *icon_view,
                           int spacing);

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

Параметры

icon_view

a GtkIconView

spacing

промежуток

gtk_icon_view_get_spacing ()

int
gtk_icon_view_get_spacing (GtkIconView *icon_view);

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

Параметры

icon_view

a GtkIconView

Возвращает

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

gtk_icon_view_set_row_spacing ()

void
gtk_icon_view_set_row_spacing (GtkIconView *icon_view,
                               int row_spacing);

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

Параметры

icon_view

a GtkIconView

row_spacing

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

gtk_icon_view_get_row_spacing ()

int
gtk_icon_view_get_row_spacing (GtkIconView *icon_view);

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

Параметры

icon_view

a GtkIconView

Возвращает

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

gtk_icon_view_set_column_spacing ()

void
gtk_icon_view_set_column_spacing (GtkIconView *icon_view,
                                  int column_spacing);

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

Параметры

icon_view

a GtkIconView

column_spacing

промежуток между столбцами

gtk_icon_view_get_column_spacing ()

int
gtk_icon_view_get_column_spacing (GtkIconView *icon_view);

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

Параметры

icon_view

a GtkIconView

Возвращает

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

gtk_icon_view_set_margin ()

void
gtk_icon_view_set_margin (GtkIconView *icon_view,
                          int margin);

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

Параметры

icon_view

a GtkIconView

margin

отступ

gtk_icon_view_get_margin ()

int
gtk_icon_view_get_margin (GtkIconView *icon_view);

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

Параметры

icon_view

a GtkIconView

Возвращает

пространство по краям

gtk_icon_view_set_item_padding ()

void
gtk_icon_view_set_item_padding (GtkIconView *icon_view,
                                int item_padding);

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

Параметры

icon_view

a GtkIconView

item_padding

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

gtk_icon_view_get_item_padding ()

int
gtk_icon_view_get_item_padding (GtkIconView *icon_view);

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

Параметры

icon_view

a GtkIconView

Возвращает

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

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 при одиночном щелчке

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

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

gtk_icon_view_select_path ()

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

Выделяет строку по path .

Параметры

icon_view

A GtkIconView.

path

Выделяемый GtkTreePath.

gtk_icon_view_unselect-path ()

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

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

Параметры

icon_view

A GtkIconView.

path

Удаляемый GtkTreePath.

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 выделен.

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]

gtk_icon_view_select_all ()

void
gtk_icon_view_select_all (GtkIconView *icon_view);

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

Параметры

icon_view

A GtkIconView.

gtk_icon_view_unselect-all ()

void
gtk_icon_view_unselect_all (GtkIconView *icon_view);

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

Параметры

icon_view

A GtkIconView.

gtk_icon_view_item_activated ()

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

Активирует элемент, определённый path.

Параметры

icon_view

A GtkIconView

path

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

gtk_icon_view_scroll-to-path ()

void
gtk_icon_view_scroll_to_path (GtkIconView *icon_view,
                              GtkTreePath *path,
                              gboolean use_align,
                              float row_align,
                              float 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.

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 были помещены допустимые пути.

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

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]

gtk_icon_view_get_tooltip_context ()

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

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

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

Параметры

icon_view

an GtkIconView

x

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

y

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

keyboard_tip

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

model

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

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

path

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

[out][allow-none]

iter

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

[out][allow-none]

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

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

gtk_icon_view_set_tooltip_column ()

void
gtk_icon_view_set_tooltip_column (GtkIconView *icon_view,
                                  int column);

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

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

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

Параметры

icon_view

a GtkIconView

column

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

gtk_icon_view_get_tooltip_column ()

int
gtk_icon_view_get_tooltip_column (GtkIconView *icon_view);

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

Параметры

icon_view

a GtkIconView

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

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

gtk_icon_view_get_item_row ()

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

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

Параметры

icon_view

a GtkIconView

path

the GtkTreePath элемента

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

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

gtk_icon_view_get_item_column ()

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

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

Параметры

icon_view

a GtkIconView

path

the GtkTreePath элемента

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

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

gtk_icon_view_enable_model_drag_source ()

void
gtk_icon_view_enable_model_drag_source
                               (GtkIconView *icon_view,
                                GdkModifierType start_button_mask,
                                GdkContentFormats *formats,
                                GdkDragAction actions);

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

Параметры

icon_view

a GtkIconView

start_button_mask

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

formats

форматы, которые будет поддерживать перетаскивание

actions

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

gtk_icon_view_enable_model_drag_dest ()

void
gtk_icon_view_enable_model_drag_dest (GtkIconView *icon_view,
                                      GdkContentFormats *formats,
                                      GdkDragAction actions);

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

Параметры

icon_view

a GtkIconView

formats

форматы, которые будет поддерживать перетаскивание

actions

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

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

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

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

gtk_icon_view_get_reorderable ()

gboolean
gtk_icon_view_get_reorderable (GtkIconView *icon_view);

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

Параметры

icon_view

a GtkIconView

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

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

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

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

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]

gtk_icon_view_get_dest_item_at_pos ()

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

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

Параметры

icon_view

a GtkIconView

drag_x

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

drag_y

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

path

Место назначения для пути элемента или NULL.

[out][allow-none]

pos

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

[out][allow-none]

Возвращает

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

gtk_icon_view_create_drag_icon ()

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

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

Параметры

icon_view

a GtkIconView

path

a GtkTreePath в icon_view

Возвращает

новую иконку перетаскивания.

[transfer full]

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

GtkIconView

typedef struct _GtkIconView 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" после одного клика.

Владелец: GtkIconView

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

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

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

  “cell-area”                GtkCellArea *

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

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

Владелец: GtkIconView

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

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

  “column-spacing”           int

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

Владелец: GtkIconView

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

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

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

Свойство “columns”

  “columns”                  int

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

Владелец: GtkIconView

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

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

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

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

  “item-orientation”         GtkOrientation

Свойство item-orientation определяет, как элементы (т.е. иконка и текст) элемента размещаются относительно друг друга.

Владелец: GtkIconView

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

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

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

  “item-padding”             int

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

Владелец: GtkIconView

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

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

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

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

  “item-width”               int

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

Владелец: GtkIconView

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

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

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

Свойство “margin”

  “margin”                   int

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

Владелец: GtkIconView

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

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

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

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

  “markup-column”            int

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

Владелец: GtkIconView

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

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

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

Свойство “model”

  “model”                    GtkTreeModel *

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

Владелец: GtkIconView

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

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

  “pixbuf-column”            int

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

Владелец: GtkIconView

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

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

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

Свойство “reorderable”

  “reorderable”              gboolean

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

Владелец: GtkIconView

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

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

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

  “row-spacing”              int

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

Владелец: GtkIconView

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

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

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

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

  “selection-mode”           GtkSelectionMode

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

Владелец: GtkIconView

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

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

Свойство “spacing”

  “spacing”                  int

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

Владелец: GtkIconView

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

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

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

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

  “text-column”              int

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

Владелец: GtkIconView

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

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

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

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

  “tooltip-column”           int

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

Владелец: GtkIconView

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

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

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

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

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

gboolean
user_function (GtkIconView *iconview,
               gpointer     user_data)

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

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

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

Параметры

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. Также он генерируется, когда нередактируемый элемент выбран и нажата одна из клавиш: Пробел, Возврат или Enter.

Параметры

iconview

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

path

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

user_data

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

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

Сигнал “move-cursor”

gboolean
user_function (GtkIconView    *iconview,
               GtkMovementStep step,
               int             count,
               gboolean        extend,
               gboolean        modify,
               gpointer        user_data)

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

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

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

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

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

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

Параметры

iconview

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

step

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

count

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

extend

расширять ли выбор

modify

изменять ли выбор

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-old.gnome.org/gtk4/4.0/GtkIconView.html

Spec-Zone.ru

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