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.GestureLongPress

Contents

- Exported types
- Methods
  - getDelayFactor
  - new
  - setDelayFactor
- Properties
  - delayFactor
- Signals
  - cancelled
  - pressed

Description

Recognizes long press gestures.

This gesture is also known as “Press and Hold”.

When the timeout is exceeded, the gesture is triggering the GestureLongPress::pressed signal.

If the touchpoint is lifted before the timeout passes, or if it drifts too far of the initial press point, the GestureLongPress::cancelled signal will be emitted.

How long the timeout is before the pressed signal gets emitted is determined by the Settings:gtkLongPressTime setting. It can be modified by the GestureLongPress:delayFactor property.

Synopsis

- newtype GestureLongPress = GestureLongPress (ManagedPtr GestureLongPress)
- class (GObject o, IsDescendantOf GestureLongPress o) => IsGestureLongPress o
- toGestureLongPress :: (MonadIO m, IsGestureLongPress o) => o -> m GestureLongPress
- gestureLongPressGetDelayFactor :: (HasCallStack, MonadIO m, IsGestureLongPress a) => a -> m Double
- gestureLongPressNew :: (HasCallStack, MonadIO m) => m GestureLongPress
- gestureLongPressSetDelayFactor :: (HasCallStack, MonadIO m, IsGestureLongPress a) => a -> Double -> m ()
- constructGestureLongPressDelayFactor :: (IsGestureLongPress o, MonadIO m) => Double -> m (GValueConstruct o)
- getGestureLongPressDelayFactor :: (MonadIO m, IsGestureLongPress o) => o -> m Double
- setGestureLongPressDelayFactor :: (MonadIO m, IsGestureLongPress o) => o -> Double -> m ()
- type GestureLongPressCancelledCallback = IO ()
- afterGestureLongPressCancelled :: (IsGestureLongPress a, MonadIO m) => a -> ((?self :: a) => GestureLongPressCancelledCallback) -> m SignalHandlerId
- onGestureLongPressCancelled :: (IsGestureLongPress a, MonadIO m) => a -> ((?self :: a) => GestureLongPressCancelledCallback) -> m SignalHandlerId
- type GestureLongPressPressedCallback = Double -> Double -> IO ()
- afterGestureLongPressPressed :: (IsGestureLongPress a, MonadIO m) => a -> ((?self :: a) => GestureLongPressPressedCallback) -> m SignalHandlerId
- onGestureLongPressPressed :: (IsGestureLongPress a, MonadIO m) => a -> ((?self :: a) => GestureLongPressPressedCallback) -> m SignalHandlerId

# Exported types

newtype GestureLongPress Source #

Memory-managed wrapper type.

Constructors

GestureLongPress (ManagedPtr GestureLongPress) |

#### Instances

Instances details

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

class (GObject o, IsDescendantOf GestureLongPress o) => IsGestureLongPress o Source #

Type class for types which can be safely cast to `GestureLongPress`, for instance with `toGestureLongPress`.

#### Instances

Instances details

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

toGestureLongPress :: (MonadIO m, IsGestureLongPress o) => o -> m GestureLongPress Source #

Cast to `GestureLongPress`, 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, forceFloating, freezeNotify, getv, group, handlesSequence, isActive, isFloating, isGroupedWith, isRecognized, notify, notifyByPspec, ref, refSink, reset, runDispose, stealData, stealQdata, thawNotify, ungroup, unref, watchClosure.

#### Getters

getBoundingBox, getBoundingBoxCenter, getButton, getCurrentButton, getCurrentEvent, getCurrentEventDevice, getCurrentEventState, getCurrentEventTime, getCurrentSequence, getData, getDelayFactor, getDevice, getExclusive, getGroup, getLastEvent, getLastUpdatedSequence, getName, getPoint, getPropagationLimit, getPropagationPhase, getProperty, getQdata, getSequenceState, getSequences, getTouchOnly, getWidget.

#### Setters

setButton, setData, setDataFull, setDelayFactor, setExclusive, setName, setPropagationLimit, setPropagationPhase, setProperty, setSequenceState, setState, setStaticName, setTouchOnly.

## getDelayFactor

gestureLongPressGetDelayFactor Source #

Arguments

:: (HasCallStack, MonadIO m, IsGestureLongPress a) |
=> a | `gesture`: A `GtkGestureLongPress`
-> m Double | Returns: the delay factor

Returns the delay factor.

## new

gestureLongPressNew Source #

Arguments

:: (HasCallStack, MonadIO m) |
=> m GestureLongPress | Returns: a newly created `GtkGestureLongPress`.

Returns a newly created `GtkGesture` that recognizes long presses.

## setDelayFactor

gestureLongPressSetDelayFactor Source #

Arguments

:: (HasCallStack, MonadIO m, IsGestureLongPress a) |
=> a | `gesture`: A `GtkGestureLongPress`
-> Double | `delayFactor`: The delay factor to apply
-> m () |

Applies the given delay factor.

The default long press time will be multiplied by this value. Valid values are in the range [0.5..2.0].

# Properties

## delayFactor

Factor by which to modify the default timeout.

constructGestureLongPressDelayFactor :: (IsGestureLongPress o, MonadIO m) => Double -> m (GValueConstruct o) Source #

Construct a `GValueConstruct` with valid value for the “`delay-factor`” property. This is rarely needed directly, but it is used by `new`.

getGestureLongPressDelayFactor :: (MonadIO m, IsGestureLongPress o) => o -> m Double Source #

Get the value of the “`delay-factor`” property. When overloading is enabled, this is equivalent to

    get gestureLongPress #delayFactor

setGestureLongPressDelayFactor :: (MonadIO m, IsGestureLongPress o) => o -> Double -> m () Source #

Set the value of the “`delay-factor`” property. When overloading is enabled, this is equivalent to

    set gestureLongPress [ #delayFactor := value ]

# Signals

## cancelled

type GestureLongPressCancelledCallback = IO () Source #

Emitted whenever a press moved too far, or was released before GestureLongPress::pressed happened.

afterGestureLongPressCancelled :: (IsGestureLongPress a, MonadIO m) => a -> ((?self :: a) => GestureLongPressCancelledCallback) -> m SignalHandlerId Source #

Connect a signal handler for the cancelled signal, to be run after the default handler. When overloading is enabled, this is equivalent to

    after gestureLongPress #cancelled callback

By default the object invoking the signal is not passed to the callback. If you need to access it, you can use the implit `?self` parameter. Note that this requires activating the `ImplicitParams` GHC extension.

onGestureLongPressCancelled :: (IsGestureLongPress a, MonadIO m) => a -> ((?self :: a) => GestureLongPressCancelledCallback) -> m SignalHandlerId Source #

Connect a signal handler for the cancelled signal, to be run before the default handler. When overloading is enabled, this is equivalent to

    on gestureLongPress #cancelled callback

## pressed

type GestureLongPressPressedCallback Source #

Arguments

= Double | `x`: the X coordinate where the press happened, relative to the widget allocation
-> Double | `y`: the Y coordinate where the press happened, relative to the widget allocation
-> IO () |

Emitted whenever a press goes unmoved/unreleased longer than what the GTK defaults tell.

afterGestureLongPressPressed :: (IsGestureLongPress a, MonadIO m) => a -> ((?self :: a) => GestureLongPressPressedCallback) -> m SignalHandlerId Source #

Connect a signal handler for the pressed signal, to be run after the default handler. When overloading is enabled, this is equivalent to

    after gestureLongPress #pressed callback

By default the object invoking the signal is not passed to the callback. If you need to access it, you can use the implit `?self` parameter. Note that this requires activating the `ImplicitParams` GHC extension.

onGestureLongPressPressed :: (IsGestureLongPress a, MonadIO m) => a -> ((?self :: a) => GestureLongPressPressedCallback) -> m SignalHandlerId Source #

Connect a signal handler for the pressed signal, to be run before the default handler. When overloading is enabled, this is equivalent to

    on gestureLongPress #pressed callback