gi-gdk-3.0.26: Gdk bindings
CopyrightWill Thompson and Iñaki García Etxebarria
LicenseLGPL-2.1
MaintainerIñaki García Etxebarria
Safe HaskellSafe-Inferred
LanguageHaskell2010

GI.Gdk.Objects.DragContext

Description

No description available in the introspection data.

Synopsis

Exported types

newtype DragContext Source #

Memory-managed wrapper type.

Constructors

DragContext (ManagedPtr DragContext) 

Instances

Instances details
Eq DragContext Source # 
Instance details

Defined in GI.Gdk.Objects.DragContext

GObject DragContext Source # 
Instance details

Defined in GI.Gdk.Objects.DragContext

ManagedPtrNewtype DragContext Source # 
Instance details

Defined in GI.Gdk.Objects.DragContext

Methods

toManagedPtr :: DragContext -> ManagedPtr DragContext

TypedObject DragContext Source # 
Instance details

Defined in GI.Gdk.Objects.DragContext

Methods

glibType :: IO GType

HasParentTypes DragContext Source # 
Instance details

Defined in GI.Gdk.Objects.DragContext

IsGValue (Maybe DragContext) Source #

Convert DragContext to and from GValue. See toGValue and fromGValue.

Instance details

Defined in GI.Gdk.Objects.DragContext

Methods

gvalueGType_ :: IO GType

gvalueSet_ :: Ptr GValue -> Maybe DragContext -> IO ()

gvalueGet_ :: Ptr GValue -> IO (Maybe DragContext)

type ParentTypes DragContext Source # 
Instance details

Defined in GI.Gdk.Objects.DragContext

type ParentTypes DragContext = '[Object]

class (GObject o, IsDescendantOf DragContext o) => IsDragContext o Source #

Type class for types which can be safely cast to DragContext, for instance with toDragContext.

Instances

Instances details
(GObject o, IsDescendantOf DragContext o) => IsDragContext o Source # 
Instance details

Defined in GI.Gdk.Objects.DragContext

toDragContext :: (MonadIO m, IsDragContext o) => o -> m DragContext Source #

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

Methods

getActions

dragContextGetActions Source #

Arguments

:: (HasCallStack, MonadIO m, IsDragContext a) 
=> a

context: a DragContext

-> m [DragAction]

Returns: the DragAction flags

Determines the bitmask of actions proposed by the source if dragContextGetSuggestedAction returns DragActionAsk.

Since: 2.22

getDestWindow

dragContextGetDestWindow Source #

Arguments

:: (HasCallStack, MonadIO m, IsDragContext a) 
=> a

context: a DragContext

-> m Window

Returns: a Window

Returns the destination window for the DND operation.

Since: 3.0

getDevice

dragContextGetDevice Source #

Arguments

:: (HasCallStack, MonadIO m, IsDragContext a) 
=> a

context: a DragContext

-> m Device

Returns: The Device associated to context.

Returns the Device associated to the drag context.

getDragWindow

dragContextGetDragWindow Source #

Arguments

:: (HasCallStack, MonadIO m, IsDragContext a) 
=> a

context: a DragContext

-> m (Maybe Window)

Returns: the drag window, or Nothing

Returns the window on which the drag icon should be rendered during the drag operation. Note that the window may not be available until the drag operation has begun. GDK will move the window in accordance with the ongoing drag operation. The window is owned by context and will be destroyed when the drag operation is over.

Since: 3.20

getProtocol

dragContextGetProtocol Source #

Arguments

:: (HasCallStack, MonadIO m, IsDragContext a) 
=> a

context: a DragContext

-> m DragProtocol

Returns: the drag protocol

Returns the drag protocol that is used by this context.

Since: 3.0

getSelectedAction

dragContextGetSelectedAction Source #

Arguments

:: (HasCallStack, MonadIO m, IsDragContext a) 
=> a

context: a DragContext

-> m [DragAction]

Returns: a DragAction value

Determines the action chosen by the drag destination.

Since: 2.22

getSourceWindow

dragContextGetSourceWindow Source #

Arguments

:: (HasCallStack, MonadIO m, IsDragContext a) 
=> a

context: a DragContext

-> m Window

Returns: a Window

Returns the Window where the DND operation started.

Since: 2.22

getSuggestedAction

dragContextGetSuggestedAction Source #

Arguments

:: (HasCallStack, MonadIO m, IsDragContext a) 
=> a

context: a DragContext

-> m [DragAction]

Returns: a DragAction value

Determines the suggested drag action of the context.

Since: 2.22

listTargets

dragContextListTargets Source #

Arguments

:: (HasCallStack, MonadIO m, IsDragContext a) 
=> a

context: a DragContext

-> m [Atom]

Returns: a List of targets

Retrieves the list of targets of the context.

Since: 2.22

manageDnd

dragContextManageDnd Source #

Arguments

:: (HasCallStack, MonadIO m, IsDragContext a, IsWindow b) 
=> a

context: a DragContext

-> b

ipcWindow: Window to use for IPC messaging/events

-> [DragAction]

actions: the actions supported by the drag source

-> m Bool

Returns: TRUE if the drag and drop operation is managed.

Requests the drag and drop operation to be managed by context. When a drag and drop operation becomes managed, the DragContext will internally handle all input and source-side EventDND events as required by the windowing system.

Once the drag and drop operation is managed, the drag context will emit the following signals:

  • The DragContext::actionChanged signal whenever the final action to be performed by the drag and drop operation changes.
  • The DragContext::dropPerformed signal after the user performs the drag and drop gesture (typically by releasing the mouse button).
  • The DragContext::dndFinished signal after the drag and drop operation concludes (after all GdkSelection transfers happen).
  • The DragContext::cancel signal if the drag and drop operation is finished but doesn't happen over an accepting destination, or is cancelled through other means.

Since: 3.20

setDevice

dragContextSetDevice Source #

Arguments

:: (HasCallStack, MonadIO m, IsDragContext a, IsDevice b) 
=> a

context: a DragContext

-> b

device: a Device

-> m () 

Associates a Device to context, so all Drag and Drop events for context are emitted as if they came from this device.

setHotspot

dragContextSetHotspot Source #

Arguments

:: (HasCallStack, MonadIO m, IsDragContext a) 
=> a

context: a DragContext

-> Int32

hotX: x coordinate of the drag window hotspot

-> Int32

hotY: y coordinate of the drag window hotspot

-> m () 

Sets the position of the drag window that will be kept under the cursor hotspot. Initially, the hotspot is at the top left corner of the drag window.

Since: 3.20

Signals

actionChanged

type DragContextActionChangedCallback Source #

Arguments

 = [DragAction]

action: The action currently chosen

-> IO () 

A new action is being chosen for the drag and drop operation.

This signal will only be emitted if the DragContext manages the drag and drop operation. See dragContextManageDnd for more information.

Since: 3.20

afterDragContextActionChanged :: (IsDragContext a, MonadIO m) => a -> ((?self :: a) => DragContextActionChangedCallback) -> m SignalHandlerId Source #

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

after dragContext #actionChanged 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.

onDragContextActionChanged :: (IsDragContext a, MonadIO m) => a -> ((?self :: a) => DragContextActionChangedCallback) -> m SignalHandlerId Source #

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

on dragContext #actionChanged callback

cancel

type DragContextCancelCallback Source #

Arguments

 = DragCancelReason

reason: The reason the context was cancelled

-> IO () 

The drag and drop operation was cancelled.

This signal will only be emitted if the DragContext manages the drag and drop operation. See dragContextManageDnd for more information.

Since: 3.20

afterDragContextCancel :: (IsDragContext a, MonadIO m) => a -> ((?self :: a) => DragContextCancelCallback) -> m SignalHandlerId Source #

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

after dragContext #cancel 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.

onDragContextCancel :: (IsDragContext a, MonadIO m) => a -> ((?self :: a) => DragContextCancelCallback) -> m SignalHandlerId Source #

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

on dragContext #cancel callback

dndFinished

type DragContextDndFinishedCallback = IO () Source #

The drag and drop operation was finished, the drag destination finished reading all data. The drag source can now free all miscellaneous data.

This signal will only be emitted if the DragContext manages the drag and drop operation. See dragContextManageDnd for more information.

Since: 3.20

afterDragContextDndFinished :: (IsDragContext a, MonadIO m) => a -> ((?self :: a) => DragContextDndFinishedCallback) -> m SignalHandlerId Source #

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

after dragContext #dndFinished 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.

onDragContextDndFinished :: (IsDragContext a, MonadIO m) => a -> ((?self :: a) => DragContextDndFinishedCallback) -> m SignalHandlerId Source #

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

on dragContext #dndFinished callback

dropPerformed

type DragContextDropPerformedCallback Source #

Arguments

 = Int32

time: the time at which the drop happened.

-> IO () 

The drag and drop operation was performed on an accepting client.

This signal will only be emitted if the DragContext manages the drag and drop operation. See dragContextManageDnd for more information.

Since: 3.20

afterDragContextDropPerformed :: (IsDragContext a, MonadIO m) => a -> ((?self :: a) => DragContextDropPerformedCallback) -> m SignalHandlerId Source #

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

after dragContext #dropPerformed 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.

onDragContextDropPerformed :: (IsDragContext a, MonadIO m) => a -> ((?self :: a) => DragContextDropPerformedCallback) -> m SignalHandlerId Source #

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

on dragContext #dropPerformed callback