gi-gtk4-4.0.12: Gtk 4.x bindings

Copyright | Will Thompson and Iñaki García Etxebarria
License | LGPL-2.1
Maintainer | Iñaki García Etxebarria
Safe Haskell | None
Language | Haskell2010

GI.Gtk.Objects.ShortcutTrigger

Contents

- Exported types
- Methods
  - compare
  - equal
  - hash
  - parseString
  - print
  - printLabel
  - toLabel
  - toString
  - trigger

Description

Tracks how a `GtkShortcut` can be activated.

To find out if a `GtkShortcutTrigger` triggers, you can call `shortcutTriggerTrigger` on a `GdkEvent`.

`GtkShortcutTriggers` contain functions that allow easy presentation to end users as well as being printed for debugging.

All `GtkShortcutTriggers` 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.

Synopsis

- newtype ShortcutTrigger = ShortcutTrigger (ManagedPtr ShortcutTrigger)
- class (GObject o, IsDescendantOf ShortcutTrigger o) => IsShortcutTrigger o
- toShortcutTrigger :: (MonadIO m, IsShortcutTrigger o) => o -> m ShortcutTrigger
- shortcutTriggerCompare :: (HasCallStack, MonadIO m, IsShortcutTrigger a, IsShortcutTrigger b) => a -> b -> m Int32
- shortcutTriggerEqual :: (HasCallStack, MonadIO m, IsShortcutTrigger a, IsShortcutTrigger b) => a -> b -> m Bool
- shortcutTriggerHash :: (HasCallStack, MonadIO m, IsShortcutTrigger a) => a -> m Word32
- shortcutTriggerParseString :: (HasCallStack, MonadIO m) => Text -> m (Maybe ShortcutTrigger)
- shortcutTriggerPrint :: (HasCallStack, MonadIO m, IsShortcutTrigger a) => a -> String -> m ()
- shortcutTriggerPrintLabel :: (HasCallStack, MonadIO m, IsShortcutTrigger a, IsDisplay b) => a -> b -> String -> m Bool
- shortcutTriggerToLabel :: (HasCallStack, MonadIO m, IsShortcutTrigger a, IsDisplay b) => a -> b -> m Text
- shortcutTriggerToString :: (HasCallStack, MonadIO m, IsShortcutTrigger a) => a -> m Text
- shortcutTriggerTrigger :: (HasCallStack, MonadIO m, IsShortcutTrigger a, IsEvent b) => a -> b -> Bool -> m KeyMatch

# Exported types

newtype ShortcutTrigger Source #

Memory-managed wrapper type.

Constructors

ShortcutTrigger (ManagedPtr ShortcutTrigger) |

#### Instances

Instances details

Eq ShortcutTrigger Source # |
Instance details Defined in GI.Gtk.Objects.ShortcutTrigger Methods (==) :: ShortcutTrigger -> ShortcutTrigger -> Bool Source # (/=) :: ShortcutTrigger -> ShortcutTrigger -> Bool Source #
GObject ShortcutTrigger Source # |
Instance details Defined in GI.Gtk.Objects.ShortcutTrigger
ManagedPtrNewtype ShortcutTrigger Source # |
Instance details Defined in GI.Gtk.Objects.ShortcutTrigger Methods toManagedPtr :: ShortcutTrigger -> ManagedPtr ShortcutTrigger Source #
TypedObject ShortcutTrigger Source # |
Instance details Defined in GI.Gtk.Objects.ShortcutTrigger Methods glibType :: IO GType Source #
HasParentTypes ShortcutTrigger Source # |
Instance details Defined in GI.Gtk.Objects.ShortcutTrigger
IsGValue (Maybe ShortcutTrigger) Source # | Convert `ShortcutTrigger` to and from `GValue`. See `toGValue` and `fromGValue`.
Instance details Defined in GI.Gtk.Objects.ShortcutTrigger Methods gvalueGType_ :: IO GType Source # gvalueSet_ :: Ptr GValue -> Maybe ShortcutTrigger -> IO () Source # gvalueGet_ :: Ptr GValue -> IO (Maybe ShortcutTrigger) Source #
type ParentTypes ShortcutTrigger Source # |
Instance details Defined in GI.Gtk.Objects.ShortcutTrigger type ParentTypes ShortcutTrigger = '[Object]

class (GObject o, IsDescendantOf ShortcutTrigger o) => IsShortcutTrigger o Source #

Type class for types which can be safely cast to `ShortcutTrigger`, for instance with `toShortcutTrigger`.

#### Instances

Instances details

(GObject o, IsDescendantOf ShortcutTrigger o) => IsShortcutTrigger o Source # |
Instance details Defined in GI.Gtk.Objects.ShortcutTrigger

toShortcutTrigger :: (MonadIO m, IsShortcutTrigger o) => o -> m ShortcutTrigger Source #

Cast to `ShortcutTrigger`, for types for which this is known to be safe. For general casts, use `castTo`.

# Methods

### Click to display all available methods, including inherited ones

Expand

#### Methods

bindProperty, bindPropertyFull, compare, equal, forceFloating, freezeNotify, getv, hash, isFloating, notify, notifyByPspec, print, printLabel, ref, refSink, runDispose, stealData, stealQdata, thawNotify, toLabel, toString, trigger, unref, watchClosure.

#### Getters

getData, getProperty, getQdata.

#### Setters

setData, setDataFull, setProperty.

## compare

shortcutTriggerCompare Source #

Arguments

:: (HasCallStack, MonadIO m, IsShortcutTrigger a, IsShortcutTrigger b) |
=> a | `trigger1`: a `GtkShortcutTrigger`
-> b | `trigger2`: a `GtkShortcutTrigger`
-> m Int32 | Returns: An integer less than, equal to, or greater than zero if `trigger1` is found, respectively, to be less than, to match, or be greater than `trigger2`.

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

They must each be a `GtkShortcutTrigger`.

## equal

shortcutTriggerEqual Source #

Arguments

:: (HasCallStack, MonadIO m, IsShortcutTrigger a, IsShortcutTrigger b) |
=> a | `trigger1`: a `GtkShortcutTrigger`
-> b | `trigger2`: a `GtkShortcutTrigger`
-> m Bool | Returns: `True` if `trigger1` and `trigger2` are equal

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 `GtkShortcutTrigger`.

## hash

shortcutTriggerHash Source #

Arguments

:: (HasCallStack, MonadIO m, IsShortcutTrigger a) |
=> a | `trigger`: a `GtkShortcutTrigger`
-> m Word32 | Returns: a hash value corresponding to `trigger`

Generates a hash value for a `GtkShortcutTrigger`.

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 `GtkShortcutTrigger`.

## parseString

shortcutTriggerParseString Source #

Arguments

:: (HasCallStack, MonadIO m) |
=> Text | `string`: the string to parse
-> m (Maybe ShortcutTrigger) | Returns: a new `GtkShortcutTrigger`

Tries to parse the given string into a trigger.

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

The accepted strings are:

- `never`, for `GtkNeverTrigger`
- a string parsed by `acceleratorParse`, for a `GtkKeyvalTrigger`, e.g. `<Control>C`
- underscore, followed by a single character, for `GtkMnemonicTrigger`, e.g. `_l`
- two valid trigger strings, separated by a `|` character, for a `GtkAlternativeTrigger`: `<Control>q|<Control>w`

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

## print

shortcutTriggerPrint Source #

Arguments

:: (HasCallStack, MonadIO m, IsShortcutTrigger a) |
=> a | `self`: a `GtkShortcutTrigger`
-> String | `string`: a `GString` to print into
-> m () |

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.

## printLabel

shortcutTriggerPrintLabel Source #

Arguments

:: (HasCallStack, MonadIO m, IsShortcutTrigger a, IsDisplay b) |
=> a | `self`: a `GtkShortcutTrigger`
-> b | `display`: `GdkDisplay` to print for
-> String | `string`: a `GString` to print into
-> m Bool | Returns: `True` if something was printed or `False` if the trigger did not have a textual representation suitable for end users.

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.

## toLabel

shortcutTriggerToLabel Source #

Arguments

:: (HasCallStack, MonadIO m, IsShortcutTrigger a, IsDisplay b) |
=> a | `self`: a `GtkShortcutTrigger`
-> b | `display`: `GdkDisplay` to print for
-> m Text | Returns: a new 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.

## toString

shortcutTriggerToString Source #

Arguments

:: (HasCallStack, MonadIO m, IsShortcutTrigger a) |
=> a | `self`: a `GtkShortcutTrigger`
-> m Text | Returns: a new string

Prints the given trigger into a human-readable string.

This is a small wrapper around `shortcutTriggerPrint` to help when debugging.

## trigger

shortcutTriggerTrigger Source #

Arguments

:: (HasCallStack, MonadIO m, IsShortcutTrigger a, IsEvent b) |
=> a | `self`: a `GtkShortcutTrigger`
-> b | `event`: the event to check
-> Bool | `enableMnemonics`: `True` if mnemonics should trigger. Usually the value of this property is determined by checking that the passed in `event` is a Key event and has the right modifiers set.
-> m KeyMatch | Returns: Whether the event triggered the shortcut

Checks if the given `event` triggers `self`.