Spec-Zone.ru › GTK 3.20

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

Типы и значения

GtkGestureDrag

Иерархия объектов

    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

См. также

GtkGestureSwipe

© 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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API