GtkGestureDrag
GtkGestureDrag — Жест перетаскивания
Функции
| GtkGesture * | gtk_gesture_drag_new () |
| gboolean | gtk_gesture_drag_get_start_point () |
| gboolean | gtk_gesture_drag_get_offset () |
Сигналы
| 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 | ||
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 | ||
x | Смещение по оси X для текущей точки. | [out][nullable] |
y | Смещение по оси Y для текущей точки. | [out][nullable] |
Возвращаемое значение
TRUE если жест активен
С: 3.14
Типы и значения
GtkGestureDrag
typedef struct _GtkGestureDrag GtkGestureDrag;
Подробности сигналов
Сигнал “drag-begin”
void user_function (GtkGestureDrag *gesture, double start_x, double start_y, gpointer user_data)
Этот сигнал отправляется при начале перетаскивания.
Параметры
gesture | объект, получивший сигнал | |
start_x | координата X, относительно размещения виджета | |
start_y | координата Y, относительно размещения виджета | |
user_data | данные пользователя, установленные при подключении обработчика сигнала. |
Флаги: Run Last
С версии: 3.14
Сигнал “drag-end”
void user_function (GtkGestureDrag *gesture, double offset_x, double offset_y, gpointer user_data)
Этот сигнал отправляется при завершении перетаскивания.
Параметры
gesture | объект, получивший сигнал | |
offset_x | смещение по оси X относительно начальной точки | |
offset_y | смещение по оси Y относительно начальной точки | |
user_data | данные пользователя, установленные при подключении обработчика сигнала. |
Флаги: Run Last
С версии: 3.14
Сигнал “drag-update”
void user_function (GtkGestureDrag *gesture, double offset_x, double offset_y, gpointer user_data)
Этот сигнал отправляется всякий раз, когда точка перетаскивания перемещается.
Параметры
gesture | объект, получивший сигнал | |
offset_x | смещение по оси X относительно начальной точки | |
offset_y | смещение по оси Y относительно начальной точки | |
user_data | данные пользователя, установленные при подключении обработчика сигнала. |
Флаги: Run Last
С версии: 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.24/GtkGestureDrag.html