class Gtk::ShortcutTrigger

Overview

Gtk::ShortcutTrigger tracks how a Gtk::Shortcut should be activated.

To find out if a Gtk::ShortcutTrigger triggers, you can call Gtk::ShortcutTrigger#trigger on a Gdk::Event.

Gtk::ShortcutTriggers contain functions that allow easy presentation to end users as well as being printed for debugging.

All Gtk::ShortcutTriggers are immutable, you can only specify their properties during construction. If you want to change a trigger, you have to replace it with a new one.

Direct Known Subclasses

Defined in:

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

Constructors

Class Method Summary

Instance Method Summary

Instance methods inherited from class GObject::Object

==(other : self) ==, 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) | Nil data, finalize finalize, freeze_notify : Nil freeze_notify, getv(names : Enumerable(String), values : Enumerable(_)) : Nil getv, hash(hasher) hash, 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) | Nil qdata, ref_count : UInt32 ref_count, run_dispose : Nil run_dispose, set_data(key : String, data : Pointer(Void) | Nil) : Nil set_data, set_property(property_name : String, value : _) : Nil set_property, steal_data(key : String) : Pointer(Void) | Nil steal_data, steal_qdata(quark : UInt32) : Pointer(Void) | Nil 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, 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

cast?(obj : GObject::Object) : self | Nil cast?, compat_control(what : UInt64, data : Pointer(Void) | Nil) : 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 #

Initialize a new ShortcutTrigger.


[View source]

Class Method Detail

def self.g_type : UInt64 #

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


[View source]
def self.parse_string(string : String) : self | Nil #

Tries to parse the given string into a trigger.

On success, the parsed trigger is returned. When parsing failed, nil is returned.

The accepted strings are:

Note that you will have to escape the < and > characters when specifying triggers in XML files, such as Gtk::Builder ui files. Use &lt; instead of < and &gt; instead of >.


[View source]

Instance Method Detail

def ==(other : self) #
Description copied from class Reference

Returns true if this reference is the same as other. Invokes same?.


def compare(trigger2 : Gtk::ShortcutTrigger) : Int32 #

The types of trigger1 and trigger2 are gconstpointer only to allow use of this function as a GCompareFunc.

They must each be a Gtk::ShortcutTrigger.


[View source]
def equal(trigger2 : Gtk::ShortcutTrigger) : Bool #

Checks if trigger1 and trigger2 trigger under the same conditions.

The types of one and two are gconstpointer only to allow use of this function with GHashTable. They must each be a Gtk::ShortcutTrigger.


[View source]
def hash(hasher) #
Description copied from class Reference

See Object#hash(hasher)


def hash : UInt32 #

Generates a hash value for a Gtk::ShortcutTrigger.

The output of this function is guaranteed to be the same for a given value only per-process. It may change between different processor architectures or even different versions of GTK. Do not use this function as a basis for building protocols or file formats.

The types of trigger is gconstpointer only to allow use of this function with GHashTable. They must each be a Gtk::ShortcutTrigger.


[View source]
def print(string : GLib::String) : Nil #

Prints the given trigger into a string for the developer. This is meant for debugging and logging.

The form of the representation may change at any time and is not guaranteed to stay identical.


[View source]
def print_label(display : Gdk::Display, string : GLib::String) : Bool #

Prints the given trigger into a string.

This function is returning a translated string for presentation to end users for example in menu items or in help texts.

The display in use may influence the resulting string in various forms, such as resolving hardware keycodes or by causing display-specific modifier names.

The form of the representation may change at any time and is not guaranteed to stay identical.


[View source]
def to_label(display : Gdk::Display) : String #

Gets textual representation for the given trigger.

This function is returning a translated string for presentation to end users for example in menu items or in help texts.

The display in use may influence the resulting string in various forms, such as resolving hardware keycodes or by causing display-specific modifier names.

The form of the representation may change at any time and is not guaranteed to stay identical.


[View source]
def to_string : String #

Prints the given trigger into a human-readable string.

This is a small wrapper around Gtk::ShortcutTrigger#print to help when debugging.


[View source]
def trigger(event : Gdk::Event, enable_mnemonics : Bool) : Gdk::KeyMatch #

Checks if the given event triggers self.


[View source]