GtkGestureDrag
GtkGestureDrag — Жест перетаскивания
Функции
Сигналы
| void | drag-begin | Run Last |
| void | drag-end | Run Last |
| void | drag-update | Run Last |
Типы и значения
Иерархия объектов
GObject ╰── GtkEventController ╰── GtkGesture ╰── GtkGestureSingle ╰── GtkGestureDrag ╰── GtkGesturePan
Файлы заголовков
#include <gtk/gtk.h>
Описание
GtkGestureDrag — реализация GtkGesture, распознающая операции перетаскивания. Саму операцию перетаскивания можно отслеживать через сигналы “drag-begin”, “drag-update” и “drag-end”, или извлечь соответствующие координаты с помощью функций gtk_gesture_drag_get_offset() и gtk_gesture_drag_get_start_point().
Функции
gtk_gesture_drag_new ()
GtkGesture *
gtk_gesture_drag_new (GtkWidget *widget); Возвращает новый созданный GtkGesture, распознающий операции перетаскивания.
Параметры
widget | элемент GtkWidget |
Возвращает
новый созданный GtkGestureDrag
С: 3.14
gtk_gesture_drag_get_start_point ()
gboolean gtk_gesture_drag_get_start_point (GtkGestureDrag *gesture,gdouble *x,gdouble *y);
Если gesture активен, эта функция возвращает TRUE и заполняет x и y координатами начала перетаскивания, в координатах, относительных к окну.
Параметры
gesture | элемент GtkGesture | |
x | Координата X для точки начала перетаскивания. | [out][nullable] |
y | Координата Y для точки начала перетаскивания. | [out][nullable] |
Возвращает
TRUE, если жест активен
С: 3.14
gtk_gesture_drag_get_offset ()
gboolean gtk_gesture_drag_get_offset (GtkGestureDrag *gesture,gdouble *x,gdouble *y);
Если gesture активен, эта функция возвращает TRUE и заполняет x и y координатами текущей точки, как смещение к начальной точке перетаскивания.
Параметры
gesture | элемент GtkGesture | |
x | Смещение X для текущей точки. | [out][nullable] |
y | Смещение Y для текущей точки. | [out][nullable] |
Возвращает
TRUE, если жест активен
С: 3.14
Типы и значения
GtkGestureDrag
typedef struct _GtkGestureDrag GtkGestureDrag;
Подробности сигналов
Сигнал “drag-begin”
void user_function (GtkGestureDrag *gesture, gdouble start_x, gdouble start_y, gpointer user_data)
Этот сигнал генерируется при начале перетаскивания.
Параметры
gesture | объект, получивший сигнал | |
start_x | координата X, относительно размещения виджета | |
start_y | координата Y, относительно размещения виджета | |
user_data | данные пользователя, установленные при подключении обработчика сигнала. |
Флаги: Выполнить последним
С: 3.14
Сигнал “drag-end”
void user_function (GtkGestureDrag *gesture, gdouble offset_x, gdouble offset_y, gpointer user_data)
Этот сигнал генерируется при завершении перетаскивания.
Параметры
gesture | объект, получивший сигнал | |
offset_x | смещение X, относительно начальной точки | |
offset_y | смещение Y, относительно начальной точки | |
user_data | данные пользователя, установленные при подключении обработчика сигнала. |
Флаги: Выполнить последним
С: 3.14
Сигнал “drag-update”
void user_function (GtkGestureDrag *gesture, gdouble offset_x, gdouble offset_y, gpointer user_data)
Этот сигнал генерируется при перемещении точки перетаскивания.
Параметры
gesture | объект, получивший сигнал | |
offset_x | смещение X, относительно начальной точки | |
offset_y | смещение Y, относительно начальной точки | |
user_data | данные пользователя, установленные при подключении обработчика сигнала. |
Флаги: Выполнить последним
С: 3.14
См. также
© 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/GtkGestureDrag.html