gtkmm 4.16.0
|
Gesture for stylus input. More...
#include <gtkmm/gesturestylus.h>
Public Member Functions | |
GestureStylus (GestureStylus &&src) noexcept | |
GestureStylus & | operator= (GestureStylus &&src) noexcept |
~GestureStylus () noexcept override | |
GtkGestureStylus * | gobj () |
Provides access to the underlying C GObject. | |
const GtkGestureStylus * | gobj () const |
Provides access to the underlying C GObject. | |
GtkGestureStylus * | gobj_copy () |
Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs. | |
bool | get_stylus_only () const |
Checks whether the gesture is for styluses only. | |
void | set_stylus_only (bool stylus_only=true) |
Sets the state of stylus-only. | |
std::optional< double > | get_axis (Gdk::AxisUse axis) const |
Returns the current value for the requested axis. | |
std::vector< double > | get_axes (const std::vector< Gdk::AxisUse > &axes) const |
Returns the current values for the requested axes. | |
std::vector< Gdk::TimeCoord > | get_backlog () const |
By default, GTK+ will limit rate of input events. | |
Glib::RefPtr< Gdk::DeviceTool > | get_device_tool () |
Returns the Gdk::DeviceTool currently driving input through this gesture. | |
Glib::RefPtr< const Gdk::DeviceTool > | get_device_tool () const |
Returns the Gdk::DeviceTool currently driving input through this gesture. | |
Glib::SignalProxy< void(double, double)> | signal_proximity () |
Glib::SignalProxy< void(double, double)> | signal_down () |
Glib::SignalProxy< void(double, double)> | signal_motion () |
Glib::SignalProxy< void(double, double)> | signal_up () |
Glib::PropertyProxy< bool > | property_stylus_only () |
If this gesture should exclusively react to stylus input devices. | |
Glib::PropertyProxy_ReadOnly< bool > | property_stylus_only () const |
If this gesture should exclusively react to stylus input devices. | |
![]() | |
GestureSingle (GestureSingle &&src) noexcept | |
GestureSingle & | operator= (GestureSingle &&src) noexcept |
~GestureSingle () noexcept override | |
GtkGestureSingle * | gobj () |
Provides access to the underlying C GObject. | |
const GtkGestureSingle * | gobj () const |
Provides access to the underlying C GObject. | |
GtkGestureSingle * | gobj_copy () |
Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs. | |
bool | get_touch_only () const |
Returns true if the gesture is only triggered by touch events. | |
void | set_touch_only (bool touch_only=true) |
Sets whether to handle only touch events. | |
bool | get_exclusive () const |
Gets whether a gesture is exclusive. | |
void | set_exclusive (bool exclusive=true) const |
Sets whether gesture is exclusive. | |
unsigned int | get_button () const |
Returns the button number gesture listens for. | |
void | set_button (unsigned int button=0) |
Sets the button number gesture listens to. | |
unsigned int | get_current_button () const |
Returns the button number currently interacting with gesture, or 0 if there is none. | |
Gdk::EventSequence * | get_current_sequence () |
Returns the event sequence currently interacting with gesture. | |
const Gdk::EventSequence * | get_current_sequence () const |
Returns the event sequence currently interacting with gesture. | |
Glib::PropertyProxy< bool > | property_touch_only () |
Whether the gesture handles only touch events. | |
Glib::PropertyProxy_ReadOnly< bool > | property_touch_only () const |
Whether the gesture handles only touch events. | |
Glib::PropertyProxy< bool > | property_exclusive () |
Whether the gesture is exclusive. | |
Glib::PropertyProxy_ReadOnly< bool > | property_exclusive () const |
Whether the gesture is exclusive. | |
Glib::PropertyProxy< unsigned int > | property_button () |
Mouse button number to listen to, or 0 to listen for any button. | |
Glib::PropertyProxy_ReadOnly< unsigned int > | property_button () const |
Mouse button number to listen to, or 0 to listen for any button. | |
![]() | |
Gesture (Gesture &&src) noexcept | |
Gesture & | operator= (Gesture &&src) noexcept |
~Gesture () noexcept override | |
GtkGesture * | gobj () |
Provides access to the underlying C GObject. | |
const GtkGesture * | gobj () const |
Provides access to the underlying C GObject. | |
GtkGesture * | gobj_copy () |
Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs. | |
Glib::RefPtr< Gdk::Device > | get_device () |
Returns the logical Gdk::Device that is currently operating on gesture. | |
Glib::RefPtr< const Gdk::Device > | get_device () const |
Returns the logical Gdk::Device that is currently operating on gesture. | |
bool | set_state (EventSequenceState state) |
Sets the state of all sequences that gesture is currently interacting with. | |
EventSequenceState | get_sequence_state (Gdk::EventSequence *sequence) const |
Returns the sequence state, as seen by gesture. | |
bool | set_sequence_state (Gdk::EventSequence *sequence, EventSequenceState state) |
Sets the state of sequence in gesture. | |
std::vector< const Gdk::EventSequence * > | get_sequences () const |
Returns the list of Gdk::EventSequences currently being interpreted. | |
Gdk::EventSequence * | get_last_updated_sequence () |
Returns the Gdk::EventSequence that was last updated on gesture. | |
const Gdk::EventSequence * | get_last_updated_sequence () const |
Returns the Gdk::EventSequence that was last updated on gesture. | |
bool | handles_sequence (Gdk::EventSequence *sequence) const |
Returns true if gesture is currently handling events corresponding to sequence. | |
Glib::RefPtr< Gdk::Event > | get_last_event (Gdk::EventSequence *sequence) |
Returns the last event that was processed for sequence. | |
Glib::RefPtr< const Gdk::Event > | get_last_event (Gdk::EventSequence *sequence) const |
Returns the last event that was processed for sequence. | |
bool | get_point (Gdk::EventSequence *sequence, double &x, double &y) const |
If sequence is currently being interpreted by gesture, returns true and fills in x and y with the last coordinates stored for that event sequence. | |
bool | get_bounding_box (Gdk::Rectangle &rect) const |
If there are touch sequences being currently handled by gesture, returns true and fills in rect with the bounding box containing all active touches. | |
bool | get_bounding_box_center (double &x, double &y) const |
If there are touch sequences being currently handled by gesture, returns true and fills in x and y with the center of the bounding box containing all active touches. | |
bool | is_active () const |
Returns true if the gesture is currently active. | |
bool | is_recognized () const |
Returns true if the gesture is currently recognized. | |
void | group (const Glib::RefPtr< Gesture > &group_gesture) |
Adds gesture to the same group than group_gesture. | |
void | ungroup () |
Separates gesture into an isolated group. | |
std::vector< Glib::RefPtr< Gesture > > | get_group () |
Returns all gestures in the group of gesture. | |
std::vector< Glib::RefPtr< const Gesture > > | get_group () const |
Returns all gestures in the group of gesture. | |
bool | is_grouped_with (const Glib::RefPtr< Gesture > &other) const |
Returns true if both gestures pertain to the same group. | |
Glib::SignalProxy< void(Gdk::EventSequence *)> | signal_begin () |
Glib::SignalProxy< void(Gdk::EventSequence *)> | signal_end () |
Glib::SignalProxy< void(Gdk::EventSequence *)> | signal_update () |
Glib::SignalProxy< void(Gdk::EventSequence *)> | signal_cancel () |
Glib::SignalProxy< void(Gdk::EventSequence *, EventSequenceState)> | signal_sequence_state_changed () |
Glib::PropertyProxy_ReadOnly< unsigned int > | property_n_points () const |
The number of touch points that trigger recognition on this gesture. | |
![]() | |
EventController (EventController &&src) noexcept | |
EventController & | operator= (EventController &&src) noexcept |
~EventController () noexcept override | |
GtkEventController * | gobj () |
Provides access to the underlying C GObject. | |
const GtkEventController * | gobj () const |
Provides access to the underlying C GObject. | |
GtkEventController * | gobj_copy () |
Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs. | |
Widget * | get_widget () |
Returns the Gtk::Widget this controller relates to. | |
const Widget * | get_widget () const |
Returns the Gtk::Widget this controller relates to. | |
void | reset () |
Resets the controller to a clean state. | |
PropagationPhase | get_propagation_phase () const |
Gets the propagation phase at which controller handles events. | |
void | set_propagation_phase (PropagationPhase phase) |
Sets the propagation phase at which a controller handles events. | |
PropagationLimit | get_propagation_limit () const |
Gets the propagation limit of the event controller. | |
void | set_propagation_limit (PropagationLimit limit) |
Sets the event propagation limit on the event controller. | |
Glib::ustring | get_name () const |
Gets the name of controller. | |
void | set_name (const Glib::ustring & name) |
Sets a name on the controller that can be used for debugging. | |
Glib::RefPtr< const Gdk::Event > | get_current_event () const |
Returns the event that is currently being handled by the controller. | |
guint32 | get_current_event_time () const |
Returns the timestamp of the event that is currently being handled by the controller. | |
Glib::RefPtr< Gdk::Device > | get_current_event_device () |
Returns the device of the event that is currently being handled by the controller. | |
Glib::RefPtr< const Gdk::Device > | get_current_event_device () const |
Returns the event that is currently being handled by the controller. | |
Gdk::ModifierType | get_current_event_state () const |
Returns the modifier state of the event that is currently being handled by the controller. | |
Glib::PropertyProxy_ReadOnly< Widget * > | property_widget () const |
The widget receiving the Gdk::Events that the controller will handle. | |
Glib::PropertyProxy< PropagationPhase > | property_propagation_phase () |
The propagation phase at which this controller will handle events. | |
Glib::PropertyProxy_ReadOnly< PropagationPhase > | property_propagation_phase () const |
The propagation phase at which this controller will handle events. | |
Glib::PropertyProxy< PropagationLimit > | property_propagation_limit () |
The limit for which events this controller will handle. | |
Glib::PropertyProxy_ReadOnly< PropagationLimit > | property_propagation_limit () const |
The limit for which events this controller will handle. | |
Glib::PropertyProxy< Glib::ustring > | property_name () |
The name for this controller, typically used for debugging purposes. | |
Glib::PropertyProxy_ReadOnly< Glib::ustring > | property_name () const |
The name for this controller, typically used for debugging purposes. | |
Static Public Member Functions | |
static GType | get_type () |
Get the GType for this class, for use with the underlying GObject type system. | |
static Glib::RefPtr< GestureStylus > | create () |
Creates a GestureStylus. | |
![]() | |
static GType | get_type () |
Get the GType for this class, for use with the underlying GObject type system. | |
![]() | |
static GType | get_type () |
Get the GType for this class, for use with the underlying GObject type system. | |
![]() | |
static GType | get_type () |
Get the GType for this class, for use with the underlying GObject type system. | |
Protected Member Functions | |
GestureStylus () | |
Constructs a GestureStylus. | |
![]() | |
GestureSingle () | |
There is no create() method that corresponds to this constructor, because only derived classes shall be created. | |
![]() | |
Gesture () | |
There is no create() method that corresponds to this constructor, because only derived classes shall be created. | |
![]() | |
EventController () | |
There is no create() method that corresponds to this constructor, because only derived classes shall be created. | |
Related Symbols | |
(Note that these are not member symbols.) | |
Glib::RefPtr< Gtk::GestureStylus > | wrap (GtkGestureStylus *object, bool take_copy=false) |
A Glib::wrap() method for this object. | |
![]() | |
Glib::RefPtr< Gtk::GestureSingle > | wrap (GtkGestureSingle *object, bool take_copy=false) |
A Glib::wrap() method for this object. | |
![]() | |
Glib::RefPtr< Gtk::Gesture > | wrap (GtkGesture *object, bool take_copy=false) |
A Glib::wrap() method for this object. | |
![]() | |
Glib::RefPtr< Gtk::EventController > | wrap (GtkEventController *object, bool take_copy=false) |
A Glib::wrap() method for this object. | |
Gesture for stylus input.
Gtk::GestureStylus is a Gtk::Gesture implementation specific to stylus input. The provided signals just provide the basic information.
|
noexcept |
|
overridenoexcept |
|
protected |
Constructs a GestureStylus.
|
static |
Creates a GestureStylus.
std::vector< double > Gtk::GestureStylus::get_axes | ( | const std::vector< Gdk::AxisUse > & | axes | ) | const |
Returns the current values for the requested axes.
This function must be called from either the signal_down(), signal_motion(), signal_up() or signal_proximity() signal handlers.
axes | Vector of requested axes. Don't include Gdk::AxisUse::IGNORE in the vector. The underlying GTK+ function would interpret it as an end-of-array mark. |
std::optional< double > Gtk::GestureStylus::get_axis | ( | Gdk::AxisUse | axis | ) | const |
Returns the current value for the requested axis.
This function must be called from either the signal_down(), signal_motion(), signal_up() or signal_proximity() signal handlers.
axis | Requested device axis. |
std::vector< Gdk::TimeCoord > Gtk::GestureStylus::get_backlog | ( | ) | const |
By default, GTK+ will limit rate of input events.
On stylus input where accuracy of strokes is paramount, this function returns the accumulated coordinate/timing state before the emission of the current signal_motion() signal.
This function may only be called within a signal_motion() signal handler, the state given in this signal and obtainable through get_axis() call expresses the latest (most up-to-date) state in motion history.
Glib::RefPtr< Gdk::DeviceTool > Gtk::GestureStylus::get_device_tool | ( | ) |
Returns the Gdk::DeviceTool currently driving input through this gesture.
This function must be called from either the signal_down(), signal_motion(), signal_up() or signal_proximity() signal handlers.
Glib::RefPtr< const Gdk::DeviceTool > Gtk::GestureStylus::get_device_tool | ( | ) | const |
Returns the Gdk::DeviceTool currently driving input through this gesture.
This function must be called from either the signal_down(), signal_motion(), signal_up() or signal_proximity() signal handlers.
bool Gtk::GestureStylus::get_stylus_only | ( | ) | const |
Checks whether the gesture is for styluses only.
Stylus-only gestures will signal events exclusively from stylus input devices.
true
if the gesture is only for stylus events.
|
static |
Get the GType for this class, for use with the underlying GObject type system.
|
inline |
Provides access to the underlying C GObject.
|
inline |
Provides access to the underlying C GObject.
GtkGestureStylus * Gtk::GestureStylus::gobj_copy | ( | ) |
Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs.
|
noexcept |
Glib::PropertyProxy< bool > Gtk::GestureStylus::property_stylus_only | ( | ) |
If this gesture should exclusively react to stylus input devices.
Default value: true
Glib::PropertyProxy_ReadOnly< bool > Gtk::GestureStylus::property_stylus_only | ( | ) | const |
If this gesture should exclusively react to stylus input devices.
Default value: true
Sets the state of stylus-only.
If true, the gesture will exclusively handle events from stylus input devices, otherwise it'll handle events from any pointing device.
stylus_only | Whether the gesture is used exclusively for stylus events. |
void on_my_down(double x, double y)
Flags: Run Last
Emitted when the stylus touches the device.
x | The X coordinate of the stylus event. |
y | The Y coordinate of the stylus event. |
void on_my_motion(double x, double y)
Flags: Run Last
Emitted when the stylus moves while touching the device.
x | The X coordinate of the stylus event. |
y | The Y coordinate of the stylus event. |
void on_my_proximity(double x, double y)
Flags: Run Last
Emitted when the stylus is in proximity of the device.
x | The X coordinate of the stylus event. |
y | The Y coordinate of the stylus event. |
void on_my_up(double x, double y)
Flags: Run Last
Emitted when the stylus no longer touches the device.
x | The X coordinate of the stylus event. |
y | The Y coordinate of the stylus event. |
|
related |
A Glib::wrap() method for this object.
object | The C instance. |
take_copy | False if the result should take ownership of the C instance. True if it should take a new copy or ref. |