GtkDragIcon
GtkDragIcon — Верхний уровень для использования в качестве иконки перетаскивания
Функции
Типы и значения
Иерархия объектов
GObject
╰── GInitiallyUnowned
╰── GtkWidget
╰── GtkDragIcon
Реализованные интерфейсы
GtkDragIcon реализует GtkAccessible, GtkBuildable, GtkConstraintTarget, GtkNative и GtkRoot.
Файлы заголовков
#include <gtk/gtk.h>
Описание
GtkDragIcon — это реализация GtkRoot с единственной целью — служить иконкой перетаскивания во время операций перетаскивания и перестановки. Иконка перетаскивания перемещается вместе с указателем во время операции перетаскивания и удаляется по окончании перетаскивания.
Для настройки иконки перетаскивания и её привязки к текущей операции перетаскивания используйте gtk_drag_icon_get_for_drag() для получения иконки перетаскивания. Затем вы можете использовать её как любой другой виджет и использовать gtk_drag_icon_set_child() для установки любого виджета, который следует использовать в качестве иконки перетаскивания.
Обратите внимание, что иконки перетаскивания не допускают пользовательского ввода.
Функции
gtk_drag_icon_get_for_drag ()
GtkWidget *
gtk_drag_icon_get_for_drag (GdkDrag *drag); Получает используемую GtkDragIcon с drag.
Если иконка перетаскивания ещё не существует, она будет создана и отображена.
Параметры
drag | a GdkDrag |
gtk_drag_icon_set_child ()
void gtk_drag_icon_set_child (GtkDragIcon *self,GtkWidget *child);
Устанавливает виджет для отображения в качестве иконки перетаскивания.
Параметры
self | ||
child | a GtkWidget или | [nullable] |
gtk_drag_icon_get_child ()
GtkWidget *
gtk_drag_icon_get_child (GtkDragIcon *self); Получает виджет, текущий используемый как иконка перетаскивания.
Параметры
self |
Возвращаемое значение
Иконка перетаскивания или NULL если отсутствует.
[nullable][transfer none]
gtk_drag_icon_set_from_paintable ()
void gtk_drag_icon_set_from_paintable (GdkDrag *drag,GdkPaintable *paintable,int hot_x,int hot_y);
Создаёт GtkDragIcon, отображающий paintable, и связывает его с операцией перетаскивания. Позиция точки пересечения на paintable выравнивается с точкой пересечения курсора.
Параметры
drag | a GdkDrag | |
paintable | a GdkPaintable для отображения | |
hot_x | Координата X точки пересечения | |
hot_y | Координата Y точки пересечения |
gtk_drag_icon_create_widget_for_value ()
GtkWidget *
gtk_drag_icon_create_widget_for_value (const GValue *value); Создаёт виджет, который можно использовать как иконку перетаскивания для данного value.
Поддерживаемые типы включают строки, GdkRGBA и GtkTextBuffer. Если GTK не знает, как создать виджет для заданного значения, он вернёт NULL.
Этот метод используется для установки значений иконки перетаскивания по умолчанию при операциях перетаскивания и перестановки, начатых GtkDragSource, поэтому вам не нужно устанавливать иконку перетаскивания с помощью этой функции там.
Параметры
value | a GValue |
Возвращаемое значение
Новый GtkWidget для отображения value в качестве иконки перетаскивания.
[nullable][transfer full]
Типы и значения
GtkDragIcon
typedef struct _GtkDragIcon GtkDragIcon;
Подробности свойств
Свойство “child”
“child” GtkWidget *
Виджет для отображения в качестве иконки перетаскивания.
Владелец: GtkDragIcon
Флаги: Чтение / Запись
© 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/GtkDragIcon.html