Spec-Zone.ru › GTK 3.20

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 Действие

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

struct GtkIconView
enum 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

виджет GtkIconView

path

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

используемый 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

Объект GtkIconView.

model

Модель.

[allow-none]

С версии: 2.6

gtk_icon_view_get_model ()

GtkTreeModel *
gtk_icon_view_get_model (GtkIconView *icon_view);

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

Параметры

icon_view

виджет 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

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

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

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

Объект GtkIconView.

Возвращает

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

С версии: 2.6

gtk_icon_view_set_pixbuf_column ()

void
gtk_icon_view_set_pixbuf_column (GtkIconView *icon_view,
                                 gint column);

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

Параметры

icon_view

Объект GtkIconView.

column

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

С версии: 2.6

gtk_icon_view_get_pixbuf_column ()

gint
gtk_icon_view_get_pixbuf_column (GtkIconView *icon_view);

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

Параметры

icon_view

Объект GtkIconView.

Возвращает

Номер столбца с пикбуферами или -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, если курсор установлен.

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

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

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

Режим выбора

С: 2.6

gtk_icon_view_get_selection_mode ()

GtkSelectionMode
gtk_icon_view_get_selection_mode (GtkIconView *icon_view);

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

Параметры

icon_view

A GtkIconView.

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

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

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

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

С: 2.6

gtk_icon_view_get_item_orientation ()

GtkOrientation
gtk_icon_view_get_item_orientation (GtkIconView *icon_view);

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

Параметры

icon_view

a GtkIconView

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

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

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

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

С: 2.6

gtk_icon_view_get_columns ()

gint
gtk_icon_view_get_columns (GtkIconView *icon_view);

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

Параметры

icon_view

a GtkIconView

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

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

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

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

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

С: 2.6

gtk_icon_view_set_spacing ()

void
gtk_icon_view_set_spacing (GtkIconView *icon_view,
                           gint spacing);

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

Параметры

icon_view

a GtkIconView

spacing

расстояние

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

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

Значение возврата указывает, есть ли элемент виджета в заданных координатах (TRUE) или нет (FALSE) для подсказок при наведении мышью. Для подсказок при нажатии клавиш возвращаемый элемент будет текущим элементом курсора. Если значение TRUE, то значения model, path и iter будут установлены, чтобы указывать на эту строку и соответствующую модель. x и y всегда будут преобразованы относительно bin_window icon_view, если 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

С: 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, если функция отключена.

С: 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 в качестве источника и приемника перетаскивания. Поэтому перетаскивание не может использоваться в переупорядочиваемом представлении для других целей.

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

Параметры

icon_view

A GtkIconView.

reorderable

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

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

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

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

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

С: 2.8

gtk_icon_view_create_drag_icon ()

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

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

Параметры

icon_view

a GtkIconView

path

a GtkTreePath в icon_view

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

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

[передача full]

С: 2.8

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

struct GtkIconView

struct GtkIconView;

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

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

Значение по умолчанию: 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.20/GtkIconView.html

Spec-Zone.ru

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