GtkIconView
GtkIconView — Виджет, отображающий список значков в сетке
Функции
| 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 |
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 | Место для возврата пути или | [out][allow-none] |
cell | Место для возврата обработчика отрисовки ячейки в позиции ( | [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 | ||
path | ||
cell | Один из обработчиков отрисовки ячейки | [allow-none] |
start_editing |
|
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 | ||
path | Место для возврата текущего пути курсора или | [out][allow-none][transfer full] |
cell | Место для возврата текущей ячейки фокуса или | [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 | ||
orientation | относительное расположение текста и значков |
gtk_icon_view_get_item_orientation ()
GtkOrientation
gtk_icon_view_get_item_orientation (GtkIconView *icon_view); Возвращает значение свойства ::item-orientation, которое определяет, отображаются ли метки рядом с значками или под ними.
Параметры
icon_view |
Возвращает
относительное положение текстов и значков
gtk_icon_view_set_columns ()
void gtk_icon_view_set_columns (GtkIconView *icon_view,int columns);
Устанавливает свойство ::columns, которое определяет, в скольких столбцах расположены значки. Если columns равно -1, количество столбцов будет выбрано автоматически для заполнения доступной области.
Параметры
icon_view | ||
columns | число столбцов |
gtk_icon_view_get_columns ()
int
gtk_icon_view_get_columns (GtkIconView *icon_view); Возвращает значение свойства ::columns.
Параметры
icon_view |
Возвращает
число столбцов или -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 | ||
item_width | ширина каждого элемента |
gtk_icon_view_get_item_width ()
int
gtk_icon_view_get_item_width (GtkIconView *icon_view); Возвращает значение свойства ::item-width.
Параметры
icon_view |
Возвращает
ширина одного элемента или -1
gtk_icon_view_set_spacing ()
void gtk_icon_view_set_spacing (GtkIconView *icon_view,int spacing);
Устанавливает свойство ::spacing, которое задаёт пространство, вставляемое между ячейками (т.е. значком и текстом) элемента.
Параметры
icon_view | ||
spacing | промежуток |
gtk_icon_view_get_spacing ()
int
gtk_icon_view_get_spacing (GtkIconView *icon_view); Возвращает значение свойства ::spacing.
Параметры
icon_view |
Возвращает
пространство между ячейками
gtk_icon_view_set_row_spacing ()
void gtk_icon_view_set_row_spacing (GtkIconView *icon_view,int row_spacing);
Устанавливает свойство ::row-spacing, которое задаёт пространство, вставляемое между строками представления значков.
Параметры
icon_view | ||
row_spacing | промежуток между строками |
gtk_icon_view_get_row_spacing ()
int
gtk_icon_view_get_row_spacing (GtkIconView *icon_view); Возвращает значение свойства ::row-spacing.
Параметры
icon_view |
Возвращает
пространство между строками
gtk_icon_view_set_column_spacing ()
void gtk_icon_view_set_column_spacing (GtkIconView *icon_view,int column_spacing);
Устанавливает свойство ::column-spacing, которое задаёт пространство, вставляемое между столбцами представления значков.
Параметры
icon_view | ||
column_spacing | промежуток между столбцами |
gtk_icon_view_get_column_spacing ()
int
gtk_icon_view_get_column_spacing (GtkIconView *icon_view); Возвращает значение свойства ::column-spacing.
Параметры
icon_view |
Возвращает
пространство между столбцами
gtk_icon_view_set_margin ()
void gtk_icon_view_set_margin (GtkIconView *icon_view,int margin);
Устанавливает свойство ::margin, которое задаёт пространство, вставляемое сверху, снизу, слева и справа от представления значков.
Параметры
icon_view | ||
margin | отступ |
gtk_icon_view_get_margin ()
int
gtk_icon_view_get_margin (GtkIconView *icon_view); Возвращает значение свойства ::margin.
Параметры
icon_view |
Возвращает
пространство по краям
gtk_icon_view_set_item_padding ()
void gtk_icon_view_set_item_padding (GtkIconView *icon_view,int item_padding);
Устанавливает свойство “item-padding”, которое задаёт отступ вокруг каждого элемента представления значков.
Параметры
icon_view | ||
item_padding | отступ элемента |
gtk_icon_view_get_item_padding ()
int
gtk_icon_view_get_item_padding (GtkIconView *icon_view); Возвращает значение свойства ::item-padding.
Параметры
icon_view |
Возвращает
отступ вокруг элементов
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 | ||
single |
|
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 |
Возвращаемое значение
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 | ||
path | ||
cell | a GtkCellRenderer или | [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 | ||
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 | использовать ли параметры выравнивания или | |
row_align | Вертикальное выравнивание элемента, указанного | |
col_align | Горизонтальное выравнивание элемента, указанного |
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 | ||
start_path | Место возврата для начала области, или | [out][allow-none] |
end_path | Место возврата для конца области, или | [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 | ||
tooltip | ||
path |
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 | ||
tooltip | ||
path | ||
cell | a GtkCellRenderer или | [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 или | [out][allow-none][transfer none] |
path | указатель для получения GtkTreePath или | [out][allow-none] |
iter | указатель для получения GtkTreeIter или | [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 | ||
column | целое число, являющееся допустимым номером столбца для модели |
gtk_icon_view_get_tooltip_column ()
int
gtk_icon_view_get_tooltip_column (GtkIconView *icon_view); Возвращает столбец модели icon_view, который используется для отображения всплывающих подсказок в строках icon_view.
Параметры
icon_view |
Возвращаемое значение
индекс столбца подсказки, который в настоящее время используется, или -1, если функция отключена.
gtk_icon_view_get_item_row ()
int gtk_icon_view_get_item_row (GtkIconView *icon_view,GtkTreePath *path);
Возвращает строку, в которой в данный момент отображается элемент path. Номера строк начинаются с 0.
Параметры
icon_view | ||
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 | ||
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 | ||
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 | ||
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 |
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 |
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 |
|
gtk_icon_view_get_reorderable ()
gboolean
gtk_icon_view_get_reorderable (GtkIconView *icon_view); Возвращает, может ли пользователь переупорядочить список с помощью перетаскивания. См. gtk_icon_view_set_reorderable().
Параметры
icon_view |
Возвращаемое значение
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 | ||
path | Путь к элементу для выделения, или | [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 | ||
path | Место назначения для пути выделенного элемента, или | [out][allow-none] |
pos | Место назначения для позиции размещения, или | [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 | ||
drag_x | позиция для определения целевого элемента | |
drag_y | позиция для определения целевого элемента | |
path | Место назначения для пути элемента или | [out][allow-none] |
pos | Место назначения для позиции разгрузки или | [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 | ||
path | a GtkTreePath в |
Возвращает
новую иконку перетаскивания.
[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 | количество единиц | |
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