Spec-Zone.ru › GTK 3.24

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,
               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

См. также

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.24/GtkGestureDrag.html

Spec-Zone.ru

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