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

GI.Gdk.Objects.Drop

Description

The GdkDrop struct contains only private fields and should not be accessed directly.

Synopsis

Exported types

newtype Drop Source #

Memory-managed wrapper type.

Constructors

Drop (ManagedPtr Drop) 

Instances

Instances details
Eq Drop Source # 
Instance details

Defined in GI.Gdk.Objects.Drop

Methods

(==) :: Drop -> Drop -> Bool #

(/=) :: Drop -> Drop -> Bool #

GObject Drop Source # 
Instance details

Defined in GI.Gdk.Objects.Drop

ManagedPtrNewtype Drop Source # 
Instance details

Defined in GI.Gdk.Objects.Drop

Methods

toManagedPtr :: Drop -> ManagedPtr Drop

TypedObject Drop Source # 
Instance details

Defined in GI.Gdk.Objects.Drop

Methods

glibType :: IO GType

HasParentTypes Drop Source # 
Instance details

Defined in GI.Gdk.Objects.Drop

IsGValue (Maybe Drop) Source #

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

Instance details

Defined in GI.Gdk.Objects.Drop

Methods

gvalueGType_ :: IO GType

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

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

type ParentTypes Drop Source # 
Instance details

Defined in GI.Gdk.Objects.Drop

type ParentTypes Drop = '[Object]

class (GObject o, IsDescendantOf Drop o) => IsDrop o Source #

Type class for types which can be safely cast to Drop, for instance with toDrop.

Instances

Instances details
(GObject o, IsDescendantOf Drop o) => IsDrop o Source # 
Instance details

Defined in GI.Gdk.Objects.Drop

toDrop :: (MonadIO m, IsDrop o) => o -> m Drop Source #

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

Methods

finish

dropFinish Source #

Arguments

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

self: a Drop

-> [DragAction]

action: the action performed by the destination or 0 if the drop failed

-> m () 

Ends the drag operation after a drop.

The action must be a single action selected from the actions available via dropGetActions.

getActions

dropGetActions Source #

Arguments

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

self: a Drop

-> m [DragAction]

Returns: The possible GdkDragActions

Returns the possible actions for this Drop. If this value contains multiple actions - ie dragActionIsUnique returns False for the result - dropFinish must choose the action to use when accepting the drop. This will only happen if you passed DragActionAsk as one of the possible actions in dropStatus. DragActionAsk itself will not be included in the actions returned by this function.

This value may change over the lifetime of the Drop both as a response to source side actions as well as to calls to dropStatus or dropFinish. The source side will not change this value anymore once a drop has started.

getDevice

dropGetDevice Source #

Arguments

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

self: a Drop

-> m Device

Returns: The Device performing the drop.

Returns the Device performing the drop.

getDisplay

dropGetDisplay Source #

Arguments

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

self: a Drop

-> m Display

Returns: a Display

Gets the Display that self was created for.

getDrag

dropGetDrag Source #

Arguments

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

self: a Drop

-> m (Maybe Drag)

Returns: the corresponding Drag

If this is an in-app drag-and-drop operation, returns the Drag that corresponds to this drop.

If it is not, Nothing is returned.

getFormats

dropGetFormats Source #

Arguments

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

self: a Drop

-> m ContentFormats

Returns: The possible ContentFormats

Returns the ContentFormats that the drop offers the data to be read in.

getSurface

dropGetSurface Source #

Arguments

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

self: a Drop

-> m Surface

Returns: The Surface performing the drop.

Returns the Surface performing the drop.

readAsync

dropReadAsync Source #

Arguments

:: (HasCallStack, MonadIO m, IsDrop a, IsCancellable b) 
=> a

self: a Drop

-> [Text]

mimeTypes: pointer to an array of mime types

-> Int32

ioPriority: the io priority for the read operation

-> Maybe b

cancellable: optional Cancellable object, Nothing to ignore

-> Maybe AsyncReadyCallback

callback: a AsyncReadyCallback to call when the request is satisfied

-> m () 

Asynchronously read the dropped data from a Drop in a format that complies with one of the mime types.

readFinish

dropReadFinish Source #

Arguments

:: (HasCallStack, MonadIO m, IsDrop a, IsAsyncResult b) 
=> a

self: a Drop

-> b

result: a AsyncResult

-> m (Maybe InputStream, Text)

Returns: the InputStream, or Nothing (Can throw GError)

Finishes an async drop read operation, see dropReadAsync.

readValueAsync

dropReadValueAsync Source #

Arguments

:: (HasCallStack, MonadIO m, IsDrop a, IsCancellable b) 
=> a

self: a Drop

-> GType

type: a GType to read

-> Int32

ioPriority: the [I/O priority][io-priority] of the request.

-> Maybe b

cancellable: optional Cancellable object, Nothing to ignore.

-> Maybe AsyncReadyCallback

callback: callback to call when the request is satisfied

-> m () 

Asynchronously request the drag operation's contents converted to the given type. When the operation is finished callback will be called. You can then call dropReadValueFinish to get the resulting Value.

For local drag'n'drop operations that are available in the given GType, the value will be copied directly. Otherwise, GDK will try to use contentDeserializeAsync to convert the data.

readValueFinish

dropReadValueFinish Source #

Arguments

:: (HasCallStack, MonadIO m, IsDrop a, IsAsyncResult b) 
=> a

self: a Drop

-> b

result: a AsyncResult

-> m GValue

Returns: a Value containing the result. (Can throw GError)

Finishes an async drop read started with dropReadValueAsync.

status

dropStatus Source #

Arguments

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

self: a Drop

-> [DragAction]

actions: Supported actions of the destination, or 0 to indicate that a drop will not be accepted

-> [DragAction]

preferred: A unique action that's a member of actions indicating the preferred action.

-> m () 

Selects all actions that are potentially supported by the destination.

When calling this function, do not restrict the passed in actions to the ones provided by dropGetActions. Those actions may change in the future, even depending on the actions you provide here.

The preferred action is a hint to the drag'n'drop mechanism about which action to use when multiple actions are possible.

This function should be called by drag destinations in response to EventTypeDragEnter or EventTypeDragMotion events. If the destination does not yet know the exact actions it supports, it should set any possible actions first and then later call this function again.

Properties

actions

The possible actions for this drop

constructDropActions :: (IsDrop o, MonadIO m) => [DragAction] -> m (GValueConstruct o) Source #

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

getDropActions :: (MonadIO m, IsDrop o) => o -> m [DragAction] Source #

Get the value of the “actions” property. When overloading is enabled, this is equivalent to

get drop #actions

device

The Device performing the drop

constructDropDevice :: (IsDrop o, MonadIO m, IsDevice a) => a -> m (GValueConstruct o) Source #

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

getDropDevice :: (MonadIO m, IsDrop o) => o -> m Device Source #

Get the value of the “device” property. When overloading is enabled, this is equivalent to

get drop #device

display

The Display that the drop belongs to.

getDropDisplay :: (MonadIO m, IsDrop o) => o -> m Display Source #

Get the value of the “display” property. When overloading is enabled, this is equivalent to

get drop #display

drag

The Drag that initiated this drop

constructDropDrag :: (IsDrop o, MonadIO m, IsDrag a) => a -> m (GValueConstruct o) Source #

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

getDropDrag :: (MonadIO m, IsDrop o) => o -> m (Maybe Drag) Source #

Get the value of the “drag” property. When overloading is enabled, this is equivalent to

get drop #drag

formats

The possible formats that the drop can provide its data in.

constructDropFormats :: (IsDrop o, MonadIO m) => ContentFormats -> m (GValueConstruct o) Source #

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

getDropFormats :: (MonadIO m, IsDrop o) => o -> m ContentFormats Source #

Get the value of the “formats” property. When overloading is enabled, this is equivalent to

get drop #formats

surface

The Surface the drop happens on

constructDropSurface :: (IsDrop o, MonadIO m, IsSurface a) => a -> m (GValueConstruct o) Source #

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

getDropSurface :: (MonadIO m, IsDrop o) => o -> m Surface Source #

Get the value of the “surface” property. When overloading is enabled, this is equivalent to

get drop #surface