GtkGestureSingle

说明 [src]

final class Gtk.GestureSingle : Gtk.Gesture
{
  /* No available fields */
}

GtkGestureSingle 是一个针对单点触控和鼠标手势优化的 GtkGestures 子类。

这些手势在交互期间会锁定第一个交互序列,该序列可以通过 gtk_gesture_single_get_current_sequence() 在手势交互期间访问。

默认情况下,手势会对 GDK_BUTTON_PRIMARY 和触控事件做出反应。可以通过 gtk_gesture_single_set_touch_only() 来修改触控行为。调用方还可以通过 gtk_gesture_single_set_button() 指定要交互的不同鼠标按钮编号,或者通过将按钮设定为 0 来对任何鼠标按钮做出反应。在手势处于活动状态时,可以通过 gtk_gesture_single_get_current_button() 来得知当前按下的按钮。

层级结构

hierarchy this GtkGestureSingle ancestor_0 GtkGesture ancestor_0--this ancestor_1 GtkEventController ancestor_1--ancestor_0 ancestor_2 GObject ancestor_2--ancestor_1

实例方法

gtk_gesture_single_get_button

返回手势所“监听”的按钮编号。

gtk_gesture_single_get_current_button

返回与手势当前交互的按钮编号,如果不存在则返回 0。

gtk_gesture_single_get_current_sequence

返回与手势当前交互的事件序列。

gtk_gesture_single_get_exclusive

获取手势是否具有排他性。

gtk_gesture_single_get_touch_only

如果手势仅由触控事件触发,则返回 TRUE

gtk_gesture_single_set_button

设置手势所“监听”的按钮编号。

gtk_gesture_single_set_exclusive

设置手势是否具有排他性。

gtk_gesture_single_set_touch_only

设置是否仅处理触控事件。

GtkGesture(17 个)继承的方法
gtk_gesture_get_bounding_box

如果当前手势正处理触控序列,则返回 TRUE 并用 rect 填充 包含所有活动触控的边界框。

gtk_gesture_get_bounding_box_center

如果当前手势正处理触控序列,则返回 TRUE 并用 xy 填充 包含所有活动触控的边界框的中心。

gtk_gesture_get_device

返回当前在手势 gesture 上进行操作的逻辑 GdkDevice

gtk_gesture_get_group

返回 gesture 所在组中的所有手势。

gtk_gesture_get_last_event

返回 sequence 处理的最后一个事件。

gtk_gesture_get_last_updated_sequence

返回在 gesture 中最后更新的 GdkEventSequence

gtk_gesture_get_point

如果 gesture 正在解释 sequence,则返回 TRUE,并使用该事件序列存储的最后坐标填充 xy

gtk_gesture_get_sequence_state

返回 gesture 看见的 sequence 状态。

gtk_gesture_get_sequences

返回 gesture 当前正在解释的 GdkEventSequences 列表。

gtk_gesture_group

gesture 添加到与 group_gesture 相同的组。

gtk_gesture_handles_sequence

如果 gesture 当前正在处理与 sequence 对应的事件,则返回 TRUE

gtk_gesture_is_active

如果手势当前属于 active,则返回 TRUE

gtk_gesture_is_grouped_with

如果两个手势属于相同的组,则返回 TRUE

gtk_gesture_is_recognized

如果手势当前属于 recognized,则返回 TRUE

gtk_gesture_set_sequence_state

gesture 中设置 sequence 的状态。

废弃: 4.10. 

gtk_gesture_set_state

设置与 gesture 当前正在交互的所有序列的状态。

gtk_gesture_ungroup

gesture 与  group 分离。

GtkEventController (13) 继承的方法
gtk_event_controller_get_current_event

返回控制器当前正在处理的事件。

gtk_event_controller_get_current_event_device

返回控制器当前正在处理的事件的设备。

gtk_event_controller_get_current_event_state

返回控制器当前正在处理的事件的修饰符状态。

gtk_event_controller_get_current_event_time

返回控制器当前正在处理的事件的时间戳。

gtk_event_controller_get_name

获取 controller 的名称。

gtk_event_controller_get_propagation_limit

获取事件控制器的传播限制。

gtk_event_controller_get_propagation_phase

获取 controller 处理 events 的传播阶段。

gtk_event_controller_get_widget

返回 controller 关联的 GtkWidget

gtk_event_controller_reset

controller 重置为 clean 状态。

gtk_event_controller_set_name

设置控制器上的名称,可用于 debug。

gtk_event_controller_set_propagation_limit

设置事件控制器的事件传播限制。

gtk_event_controller_set_propagation_phase

设置控制器处理 events 的传播阶段。

gtk_event_controller_set_static_name

设置控制器上的名称,可用于 debug。

since: 4.8

GObject (43) 继承的方法

请参阅 GObject 了解方法的完整列表。

属性

Gtk.GestureSingle:button

要侦听的鼠标按钮号,或 0 以侦听任何按钮。

Gtk.GestureSingle:exclusive

手势是否属于 exclusive。

Gtk.GestureSingle:touch-only

该手势是否仅处理触摸 events。

GtkGesture (1) 继承的属性
Gtk.Gesture:n-points

触发此 gesture 上的识别的触摸点数量。

GtkEventController (4) 继承的属性
Gtk.EventController:name

此控制器的名称,通常用于 debug 目的。

Gtk.EventController:propagation-limit

此控制器将处理哪些事件的限制。

Gtk.EventController:propagation-phase

此控制器将处理 events 的传播阶段。

Gtk.EventController:widget

小组件接收控制器将处理的GdkEvents

信号

GtkGesture (5) 继承的信号
GtkGesture::begin

当识别到手势时发出。

GtkGesture::cancel

每当序列被取消时发出。

GtkGesture::end

手势停止识别事件序列为待处理内容,或者触摸序列数量高于或低于GtkGesture:n-points 时发出。

GtkGesture::sequence-state-changed

每当序列状态发生变化时发出。

GtkGesture::update

在手势被识别时每当处理事件时发出。

GObject (1) 继承的信号
GObject::notify

当某个属性通过 g_object_set_property()、g_object_set() 等方式设置其值时,会在某个对象上发出 notify 信号。

类结构

struct GtkGestureSingleClass {
  /* no available fields */
}

没有描述。