краткое описание#include <gtk/gtk.h> gtkiconview; void (*gtkiconviewforeachfunc) (gtkiconview *icon_view, gtktreepath *path, gpointer data); gtkwidget* gtk_icon_view_new (void); gtkwidget* gtk_icon_view_new_with_model (gtktreemodel *model); void gtk_icon_view_set_model (gtkiconview *icon_view, gtktreemodel *model); gtktreemodel* gtk_icon_view_get_model (gtkiconview *icon_view); void gtk_icon_view_set_text_column (gtkiconview *icon_view, gint column); gint gtk_icon_view_get_text_column (gtkiconview *icon_view); void gtk_icon_view_set_markup_column (gtkiconview *icon_view, gint column); gint gtk_icon_view_get_markup_column (gtkiconview *icon_view); void gtk_icon_view_set_pixbuf_column (gtkiconview *icon_view, gint column); gint gtk_icon_view_get_pixbuf_column (gtkiconview *icon_view); gtktreepath* gtk_icon_view_get_path_at_pos (gtkiconview *icon_view, gint x, gint y); gboolean gtk_icon_view_get_item_at_pos (gtkiconview *icon_view, gint x, gint y, gtktreepath **path, gtkcellrenderer **cell); void gtk_icon_view_set_cursor (gtkiconview *icon_view, gtktreepath *path, gtkcellrenderer *cell, gboolean start_editing); gboolean gtk_icon_view_get_cursor (gtkiconview *icon_view, gtktreepath **path, gtkcellrenderer **cell); void gtk_icon_view_selected_foreach (gtkiconview *icon_view, gtkiconviewforeachfunc func, gpointer data); void gtk_icon_view_set_selection_mode (gtkiconview *icon_view, gtkselectionmode mode); gtkselectionmode gtk_icon_view_get_selection_mode (gtkiconview *icon_view); void gtk_icon_view_set_orientation (gtkiconview *icon_view, gtkorientation orientation); gtkorientation gtk_icon_view_get_orientation (gtkiconview *icon_view); void gtk_icon_view_set_columns (gtkiconview *icon_view, gint columns); gint gtk_icon_view_get_columns (gtkiconview *icon_view); void gtk_icon_view_set_item_width (gtkiconview *icon_view, gint item_width); gint gtk_icon_view_get_item_width (gtkiconview *icon_view); void gtk_icon_view_set_spacing (gtkiconview *icon_view, gint spacing); gint gtk_icon_view_get_spacing (gtkiconview *icon_view); void gtk_icon_view_set_row_spacing (gtkiconview *icon_view, gint row_spacing); gint gtk_icon_view_get_row_spacing (gtkiconview *icon_view); void gtk_icon_view_set_column_spacing (gtkiconview *icon_view, gint column_spacing); gint gtk_icon_view_get_column_spacing (gtkiconview *icon_view); void gtk_icon_view_set_margin (gtkiconview *icon_view, gint margin); gint gtk_icon_view_get_margin (gtkiconview *icon_view); void gtk_icon_view_select_path (gtkiconview *icon_view, gtktreepath *path); void gtk_icon_view_unselect_path (gtkiconview *icon_view, gtktreepath *path); gboolean gtk_icon_view_path_is_selected (gtkiconview *icon_view, gtktreepath *path); glist* gtk_icon_view_get_selected_items (gtkiconview *icon_view); void gtk_icon_view_select_all (gtkiconview *icon_view); void gtk_icon_view_unselect_all (gtkiconview *icon_view); void gtk_icon_view_item_activated (gtkiconview *icon_view, gtktreepath *path); void gtk_icon_view_scroll_to_path (gtkiconview *icon_view, gtktreepath *path, gboolean use_align, gfloat row_align, gfloat col_align); gboolean gtk_icon_view_get_visible_range (gtkiconview *icon_view, gtktreepath **start_path, gtktreepath **end_path); enum gtkiconviewdropposition; void gtk_icon_view_enable_model_drag_source (gtkiconview *icon_view, gdkmodifiertype start_button_mask, const gtktargetentry *targets, gint n_targets, gdkdragaction actions); void gtk_icon_view_enable_model_drag_dest (gtkiconview *icon_view, const gtktargetentry *targets, gint n_targets, gdkdragaction actions); void gtk_icon_view_unset_model_drag_source (gtkiconview *icon_view); void gtk_icon_view_unset_model_drag_dest (gtkiconview *icon_view); void gtk_icon_view_set_reorderable (gtkiconview *icon_view, gboolean reorderable); gboolean gtk_icon_view_get_reorderable (gtkiconview *icon_view); void gtk_icon_view_set_drag_dest_item (gtkiconview *icon_view, gtktreepath *path, gtkiconviewdropposition pos); void gtk_icon_view_get_drag_dest_item (gtkiconview *icon_view, gtktreepath **path, gtkiconviewdropposition *pos); gboolean gtk_icon_view_get_dest_item_at_pos (gtkiconview *icon_view, gint drag_x, gint drag_y, gtktreepath **path, gtkiconviewdropposition *pos); gdkpixmap* gtk_icon_view_create_drag_icon (gtkiconview *icon_view, gtktreepath *path); иерархия объектовgobject +----ginitiallyunowned +----gtkobject +----gtkwidget +----gtkcontainer +----gtkiconview осуществляемые интерфейсыgtkiconview осуществляет atkimplementoriface и gtkcelllayout. свойства"column-spacing" gint : read / write "columns" gint : read / write "item-width" gint : read / write "margin" gint : read / write "markup-column" gint : read / write "model" gtktreemodel : read / write "orientation" gtkorientation : read / write "pixbuf-column" gint : read / write "reorderable" gboolean : read / write "row-spacing" gint : read / write "selection-mode" gtkselectionmode : read / write "spacing" gint : read / write "text-column" gint : read / write свойства стиля"selection-box-alpha" guchar : read "selection-box-color" gdkcolor : read сигналы"activate-cursor-item" gboolean user_function (gtkiconview *iconview, gpointer user_data) : run last / action "item-activated" void user_function (gtkiconview *iconview, gtktreepath *arg1, gpointer user_data) : run last "move-cursor" gboolean user_function (gtkiconview *iconview, gtkmovementstep *arg1, gint arg2, gpointer user_data) : run last / action "select-all" void user_function (gtkiconview *iconview, gpointer user_data) : run last / action "select-cursor-item" void user_function (gtkiconview *iconview, gpointer user_data) : run last / action "selection-changed" void user_function (gtkiconview *iconview, gpointer user_data) : run first "set-scroll-adjustments" void user_function (gtkiconview *iconview, gtkadjustment *arg1, gtkadjustment *arg2, gpointer user_data) : run last "toggle-cursor-item" void user_function (gtkiconview *iconview, gpointer user_data) : run last / action "unselect-all" void user_function (gtkiconview *iconview, gpointer user_data) : run last / action описаниеgtkiconview обеспечивает альтернативный
просмотр относительно модели списка.
он отображает модель как сетку значков
с ярлыками. как и gtktreeview,
он позволяет выбирать один или несколько
пунктов (зависит от режима выбора,
смотрите деталиgtkiconviewtypedef struct _gtkiconview gtkiconview; структура gtkiconview содержит только закрытые данные без непосредственного доступа. gtkiconviewforeachfunc ()void (*gtkiconviewforeachfunc) (gtkiconview *icon_view, gtktreepath *path, gpointer data);
функция используемая
gtk_icon_view_new ()gtkwidget* gtk_icon_view_new (void); создаёт новый gtkiconview виджет
начиная с версии 2.6 gtk_icon_view_new_with_model ()gtkwidget* gtk_icon_view_new_with_model (gtktreemodel *model);
создаёт новый виджет gtkiconview с
моделью
начиная с версии 2.6 gtk_icon_view_set_model ()void gtk_icon_view_set_model (gtkiconview *icon_view, gtktreemodel *model);
устанавливает модель для gtkiconview.
если
начиная с версии 2.6 gtk_icon_view_get_model ()gtktreemodel* gtk_icon_view_get_model (gtkiconview *icon_view);
возвращает модель на которой основан
gtkiconview. возвращает
начиная с версии 2.6 gtk_icon_view_set_text_column ()void gtk_icon_view_set_text_column (gtkiconview *icon_view, gint column);
устанавливает столбец с текстом для
начиная с версии 2.6 gtk_icon_view_get_text_column ()gint gtk_icon_view_get_text_column (gtkiconview *icon_view);
возвращает текст столбца для
начиная с версии 2.6 gtk_icon_view_set_markup_column ()void gtk_icon_view_set_markup_column (gtkiconview *icon_view, gint column);
устанавливает столбец с информацией
разметки для
начиная с версии 2.6 gtk_icon_view_get_markup_column ()gint gtk_icon_view_get_markup_column (gtkiconview *icon_view);
возвращает столбец с размеченным текстом
для
начиная с версии 2.6 gtk_icon_view_set_pixbuf_column ()void gtk_icon_view_set_pixbuf_column (gtkiconview *icon_view, gint column);
устанавливает столбец с изображением
для
начиная с версии 2.6 gtk_icon_view_get_pixbuf_column ()gint gtk_icon_view_get_pixbuf_column (gtkiconview *icon_view);
возвращает столбец с изображением для
начиная с версии 2.6 gtk_icon_view_get_path_at_pos ()gtktreepath* gtk_icon_view_get_path_at_pos (gtkiconview *icon_view, gint x, gint y);
находит путь указанный точками (
начиная с версии 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), относительно координат виджета.
в отличии от
начиная с версии 2.8 gtk_icon_view_set_cursor ()void gtk_icon_view_set_cursor (gtkiconview *icon_view, gtktreepath *path, gtkcellrenderer *cell, gboolean start_editing);
устанавливает текущий клавиатурный
фокус в позицию эта функция часто сопровождается
начиная с версии 2.8 gtk_icon_view_get_cursor ()gboolean gtk_icon_view_get_cursor (gtkiconview *icon_view, gtktreepath **path, gtkcellrenderer **cell);
заполняет возвращаемый gtktreepath
должен освобождаться с помощью
начиная с версии 2.8 gtk_icon_view_selected_foreach ()void gtk_icon_view_selected_foreach (gtkiconview *icon_view, gtkiconviewforeachfunc func, gpointer data); вызывает функцию для каждого вызванного значка. помните что модель или выделение не должны изменяться внутри этой функции.
начиная с версии 2.6 gtk_icon_view_set_selection_mode ()void gtk_icon_view_set_selection_mode (gtkiconview *icon_view, gtkselectionmode mode);
устанавливает режим выделения
начиная с версии 2.6 gtk_icon_view_get_selection_mode ()gtkselectionmode gtk_icon_view_get_selection_mode (gtkiconview *icon_view);
выдаёт режим выделения
начиная с версии 2.6 gtk_icon_view_set_orientation ()void gtk_icon_view_set_orientation (gtkiconview *icon_view, gtkorientation orientation); устанавливает свойство ::orientation которое определяет отображаются ли ярлыки рядом со значками или под ними.
начиная с версии 2.6 gtk_icon_view_get_orientation ()gtkorientation gtk_icon_view_get_orientation (gtkiconview *icon_view); возвращает значение свойства ::orientation которое определяет отображаются ли ярлыки рядом со значками или под ними.
начиная с версии 2.6 gtk_icon_view_set_columns ()void gtk_icon_view_set_columns (gtkiconview *icon_view, gint columns);
устанавливает свойство ::columns которое
определяет в каком количестве столбцов
распределяются значки. если
начиная с версии 2.6 gtk_icon_view_get_columns ()gint gtk_icon_view_get_columns (gtkiconview *icon_view); возвращает значение свойства ::columns.
начиная с версии 2.6 gtk_icon_view_set_item_width ()void gtk_icon_view_set_item_width (gtkiconview *icon_view, gint item_width); устанавливает свойство ::item-width которое определяет ширину используемую для каждого элемента. если оно установлено равным -1, просмотр значков автоматически определит подходящий размер элементов.
начиная с версии 2.6 gtk_icon_view_get_item_width ()gint gtk_icon_view_get_item_width (gtkiconview *icon_view); возвращает значение свойства ::item-width.
начиная с версии 2.6 gtk_icon_view_set_spacing ()void gtk_icon_view_set_spacing (gtkiconview *icon_view, gint spacing); устанавливает свойство ::spacing которое определяет интервал между ячейками (то есть значок и текст) элементов.
начиная с версии 2.6 gtk_icon_view_get_spacing ()gint gtk_icon_view_get_spacing (gtkiconview *icon_view); возвращает значение свойства ::spacing.
начиная с версии 2.6 gtk_icon_view_set_row_spacing ()void gtk_icon_view_set_row_spacing (gtkiconview *icon_view, gint row_spacing); устанавливает свойство ::row-spacing которое определяет интервал между строками просмотра значков.
начиная с версии 2.6 gtk_icon_view_get_row_spacing ()gint gtk_icon_view_get_row_spacing (gtkiconview *icon_view); возвращает значение свойства ::row-spacing.
начиная с версии 2.6 gtk_icon_view_set_column_spacing ()void gtk_icon_view_set_column_spacing (gtkiconview *icon_view, gint column_spacing); устанавливает свойство ::column-spacing которое определяет интервал между столбцами в просмотре значков.
начиная с версии 2.6 gtk_icon_view_get_column_spacing ()gint gtk_icon_view_get_column_spacing (gtkiconview *icon_view); возвращает значение свойства ::column-spacing.
начиная с версии 2.6 gtk_icon_view_set_margin ()void gtk_icon_view_set_margin (gtkiconview *icon_view, gint margin); устанавливает свойство ::margin которое определяет интервал сверху, снизу, справа и слева просмотра значков.
начиная с версии 2.6 gtk_icon_view_get_margin ()gint gtk_icon_view_get_margin (gtkiconview *icon_view); возвращает значение свойства ::margin.
начиная с версии 2.6 gtk_icon_view_select_path ()void gtk_icon_view_select_path (gtkiconview *icon_view, gtktreepath *path);
выбирает строку в
начиная с версии 2.6 gtk_icon_view_unselect_path ()void gtk_icon_view_unselect_path (gtkiconview *icon_view, gtktreepath *path);
снимает выделение строки
начиная с версии 2.6 gtk_icon_view_path_is_selected ()gboolean gtk_icon_view_path_is_selected (gtkiconview *icon_view, gtktreepath *path);
возвращает
начиная с версии 2.6 gtk_icon_view_get_selected_items ()glist* gtk_icon_view_get_selected_items (gtkiconview *icon_view);
создаёт список путей всех выделенных
элементов. дополнительно, если вы
планируете модифицировать модель после
вызова этой функции, вы можете
конвертировать возвращаемый список в
список gtktreerowreferences.
для этого вы можете использовать
для освобождения возвращённых значений используйте: g_list_foreach (list, gtk_tree_path_free, null);
g_list_free (list);
начиная с версии 2.6 gtk_icon_view_select_all ()void gtk_icon_view_select_all (gtkiconview *icon_view);
выделяет все значки.
начиная с версии 2.6 gtk_icon_view_unselect_all ()void gtk_icon_view_unselect_all (gtkiconview *icon_view); снимает выделение всех значков.
начиная с версии 2.6 gtk_icon_view_item_activated ()void gtk_icon_view_item_activated (gtkiconview *icon_view, gtktreepath *path);
активизирует элементы определенные
параметром
начиная с версии 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);
перемещает выравнивание если эта функция работает только если
установлена модель и
начиная с версии 2.8 gtk_icon_view_get_visible_range ()gboolean gtk_icon_view_get_visible_range (gtkiconview *icon_view, gtktreepath **start_path, gtktreepath **end_path);
устанавливает пути должны освобождаться с помощью
начиная с версии 2.8 enum gtkiconviewdroppositiontypedef enum { 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 } gtkiconviewdropposition; перечисление для определения куда направляется перемещаемый элемент.
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);
интерпретирует
начиная с версии 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);
интерпретирует
начиная с версии 2.8 gtk_icon_view_unset_model_drag_source ()void gtk_icon_view_unset_model_drag_source (gtkiconview *icon_view);
отменяет действие функции
начиная с версии 2.8 gtk_icon_view_unset_model_drag_dest ()void gtk_icon_view_unset_model_drag_dest (gtkiconview *icon_view);
отменяет действие функции
начиная с версии 2.8 gtk_icon_view_set_reorderable ()void gtk_icon_view_set_reorderable (gtkiconview *icon_view, gboolean reorderable);
это удобная функция для переупорядочивания
моделей поддерживающих gtktreedragsourceiface
и gtktreedragdestiface.
и gtktreestore и gtkliststore
поддерживают их. если эта функция не даёт вам никакого контроля над порядком – любое переупорядочивание допустимо. если вам нужно больше контроля, вы должны обрабатывать drag and drop самостоятельно.
начиная с версии 2.8 gtk_icon_view_get_reorderable ()gboolean gtk_icon_view_get_reorderable (gtkiconview *icon_view);
определяет может ли пользователь
пере-упорядочивать список через
drag-and-drop. смотрите
начиная с версии 2.8 gtk_icon_view_set_drag_dest_item ()void gtk_icon_view_set_drag_dest_item (gtkiconview *icon_view, gtktreepath *path, gtkiconviewdropposition 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); получает информацию об элементе который подсвечивается для обратной связи.
начиная с версии 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); определяет элемент адресата для данной позиции.
начиная с версии 2.8 gtk_icon_view_create_drag_icon ()gdkpixmap* gtk_icon_view_create_drag_icon (gtkiconview *icon_view, gtktreepath *path);
создаёт gdkpixmap
представляющий элемент в
начиная с версии 2.8 детали свойствсвойство "
|
|
объект получающий сигнал. |
|
пользовательские данные помещаемые при подключении обработчика сигнала. |
возвращает : |
void user_function (gtkiconview *iconview, gtktreepath *arg1, gpointer user_data) : run last
|
объект получающий сигнал. |
|
|
|
пользовательские данные помещаемые при подключении обработчика сигнала. |
gboolean user_function (gtkiconview *iconview, gtkmovementstep *arg1, gint arg2, gpointer user_data) : run last / action
|
объект получающий сигнал. |
|
|
|
|
|
пользовательские данные помещаемые при подключении обработчика сигнала. |
возвращает : |
void user_function (gtkiconview *iconview, gpointer user_data) : run last / action
|
объект получающий сигнал. |
|
пользовательские данные помещаемые при подключении обработчика сигнала. |
void user_function (gtkiconview *iconview, gpointer user_data) : run last / action
|
объект получающий сигнал. |
|
пользовательские данные помещаемые при подключении обработчика сигнала. |
void user_function (gtkiconview *iconview, gpointer user_data) : run first
|
объект получающий сигнал. |
|
пользовательские данные помещаемые при подключении обработчика сигнала. |
void user_function (gtkiconview *iconview, gtkadjustment *arg1, gtkadjustment *arg2, gpointer user_data) : run last
|
объект получающий сигнал. |
|
|
|
|
|
пользовательские данные помещаемые при подключении обработчика сигнала. |
void user_function (gtkiconview *iconview, gpointer user_data) : run last / action
|
объект получающий сигнал. |
|
пользовательские данные помещаемые при подключении обработчика сигнала. |
void user_function (gtkiconview *iconview, gpointer user_data) : run last / action
|
объект получающий сигнал. |
|
пользовательские данные помещаемые при подключении обработчика сигнала. |