class Gtk::GestureDrag

Overview

GtkGestureDrag is a GtkGesture implementation for drags.

The drag operation itself can be tracked throughout the [signal@Gtk.GestureDrag::drag-begin], [signal@Gtk.GestureDrag::drag-update] and [signal@Gtk.GestureDrag::drag-end] signals, and the relevant coordinates can be extracted through Gtk::GestureDrag#offset and Gtk::GestureDrag#start_point.

Direct Known Subclasses

Defined in:

lib/gi-crystal/src/auto/gtk-4.0/gesture_drag.cr

Constructors

Class Method Summary

Instance Method Summary

Instance methods inherited from class Gtk::GestureSingle

button : UInt32 button, button=(button : UInt32) : Nil button=, current_button : UInt32 current_button, current_sequence : Gdk::EventSequence? current_sequence, exclusive : Bool exclusive, exclusive=(exclusive : Bool) : Nil exclusive=, exclusive? : Bool exclusive?, touch_only : Bool touch_only, touch_only=(touch_only : Bool) : Nil touch_only=, touch_only? : Bool touch_only?

Constructor methods inherited from class Gtk::GestureSingle

new
new(*, button : UInt32? = nil, exclusive : Bool? = nil, n_points : UInt32? = nil, name : String? = nil, propagation_limit : Gtk::PropagationLimit? = nil, propagation_phase : Gtk::PropagationPhase? = nil, touch_only : Bool? = nil, widget : Gtk::Widget? = nil)
new

Class methods inherited from class Gtk::GestureSingle

g_type : UInt64 g_type

Instance methods inherited from class Gtk::Gesture

begin_signal begin_signal, bounding_box : Gdk::Rectangle bounding_box, bounding_box_center(x : Float64, y : Float64) : Bool bounding_box_center, cancel_signal cancel_signal, device : Gdk::Device? device, end_signal end_signal, group(gesture : Gtk::Gesture) : Nil
group : GLib::List
group
, handles_sequence(sequence : Gdk::EventSequence?) : Bool handles_sequence, is_active : Bool is_active, is_grouped_with(other : Gtk::Gesture) : Bool is_grouped_with, is_recognized : Bool is_recognized, last_event(sequence : Gdk::EventSequence?) : Gdk::Event? last_event, last_updated_sequence : Gdk::EventSequence? last_updated_sequence, n_points : UInt32 n_points, n_points=(value : UInt32) : UInt32 n_points=, point(sequence : Gdk::EventSequence?) : Bool point, sequence_state(sequence : Gdk::EventSequence) : Gtk::EventSequenceState sequence_state, sequence_state_changed_signal sequence_state_changed_signal, sequences : GLib::List sequences, set_sequence_state(sequence : Gdk::EventSequence, state : Gtk::EventSequenceState) : Bool set_sequence_state, state=(state : Gtk::EventSequenceState) : Bool state=, ungroup : Nil ungroup, update_signal update_signal

Constructor methods inherited from class Gtk::Gesture

new
new(*, n_points : UInt32? = nil, name : String? = nil, propagation_limit : Gtk::PropagationLimit? = nil, propagation_phase : Gtk::PropagationPhase? = nil, widget : Gtk::Widget? = nil)
new

Class methods inherited from class Gtk::Gesture

g_type : UInt64 g_type

Instance methods inherited from class Gtk::EventController

current_event : Gdk::Event? current_event, current_event_device : Gdk::Device? current_event_device, current_event_state : Gdk::ModifierType current_event_state, current_event_time : UInt32 current_event_time, name : String? name, name=(value : String) : String
name=(name : String?) : Nil
name=
, propagation_limit : Gtk::PropagationLimit propagation_limit, propagation_limit=(limit : Gtk::PropagationLimit) : Nil propagation_limit=, propagation_phase : Gtk::PropagationPhase propagation_phase, propagation_phase=(phase : Gtk::PropagationPhase) : Nil propagation_phase=, reset : Nil reset, widget : Gtk::Widget widget

Constructor methods inherited from class Gtk::EventController

new
new(*, name : String? = nil, propagation_limit : Gtk::PropagationLimit? = nil, propagation_phase : Gtk::PropagationPhase? = nil, widget : Gtk::Widget? = nil)
new

Class methods inherited from class Gtk::EventController

g_type : UInt64 g_type

Instance methods inherited from class GObject::Object

bind_property(source_property : String, target : GObject::Object, target_property : String, flags : GObject::BindingFlags) : GObject::Binding bind_property, bind_property_full(source_property : String, target : GObject::Object, target_property : String, flags : GObject::BindingFlags, transform_to : GObject::Closure, transform_from : GObject::Closure) : GObject::Binding bind_property_full, data(key : String) : Pointer(Void)? data, finalize finalize, freeze_notify : Nil freeze_notify, getv(names : Enumerable(String), values : Enumerable(_)) : Nil getv, notify(property_name : String) : Nil notify, notify_by_pspec(pspec : GObject::ParamSpec) : Nil notify_by_pspec, notify_signal notify_signal, property(property_name : String, value : _) : Nil property, qdata(quark : UInt32) : Pointer(Void)? qdata, ref_count : UInt32 ref_count, run_dispose : Nil run_dispose, set_data(key : String, data : Pointer(Void)?) : Nil set_data, set_property(property_name : String, value : _) : Nil set_property, steal_data(key : String) : Pointer(Void)? steal_data, steal_qdata(quark : UInt32) : Pointer(Void)? steal_qdata, thaw_notify : Nil thaw_notify, to_unsafe : Pointer(Void) to_unsafe, watch_closure(closure : GObject::Closure) : Nil watch_closure

Constructor methods inherited from class GObject::Object

cast(obj : GObject::Object) : self cast, cast?(obj : GObject::Object) : self? cast?, new(pointer : Pointer(Void), transfer : GICrystal::Transfer)
new
new
, newv(object_type : UInt64, parameters : Enumerable(GObject::Parameter)) : self newv

Class methods inherited from class GObject::Object

compat_control(what : UInt64, data : Pointer(Void)?) : UInt64 compat_control, g_type : UInt64 g_type, interface_find_property(g_iface : GObject::TypeInterface, property_name : String) : GObject::ParamSpec interface_find_property, interface_list_properties(g_iface : GObject::TypeInterface) : Enumerable(GObject::ParamSpec) interface_list_properties

Constructor Detail

def self.new : self #

Returns a newly created GtkGesture that recognizes drags.


def self.new(*, button : UInt32? = nil, exclusive : Bool? = nil, n_points : UInt32? = nil, name : String? = nil, propagation_limit : Gtk::PropagationLimit? = nil, propagation_phase : Gtk::PropagationPhase? = nil, touch_only : Bool? = nil, widget : Gtk::Widget? = nil) #

Class Method Detail

def self.g_type : UInt64 #

Returns the type id (GType) registered in GLib type system.


Instance Method Detail

def drag_begin_signal #

def drag_end_signal #

def drag_update_signal #

def offset(x : Float64?, y : Float64?) : Bool #

Gets the offset from the start point.

If the @gesture is active, this function returns %TRUE and fills in @x and @y with the coordinates of the current point, as an offset to the starting drag point.


def start_point(x : Float64?, y : Float64?) : Bool #

Gets the point where the drag started.

If the @gesture is active, this function returns %TRUE and fills in @x and @y with the drag start coordinates, in surface-relative coordinates.