{-# LANGUAGE TypeApplications #-}
#if (MIN_VERSION_haskell_gi_overloading(1,0,0) && !defined(__HADDOCK_VERSION__))
#define ENABLE_OVERLOADING
#endif
module GI.Gtk.Objects.DropTargetAsync
(
DropTargetAsync(..) ,
IsDropTargetAsync ,
toDropTargetAsync ,
#if defined(ENABLE_OVERLOADING)
ResolveDropTargetAsyncMethod ,
#endif
#if defined(ENABLE_OVERLOADING)
DropTargetAsyncGetActionsMethodInfo ,
#endif
dropTargetAsyncGetActions ,
#if defined(ENABLE_OVERLOADING)
DropTargetAsyncGetFormatsMethodInfo ,
#endif
dropTargetAsyncGetFormats ,
dropTargetAsyncNew ,
#if defined(ENABLE_OVERLOADING)
DropTargetAsyncRejectDropMethodInfo ,
#endif
dropTargetAsyncRejectDrop ,
#if defined(ENABLE_OVERLOADING)
DropTargetAsyncSetActionsMethodInfo ,
#endif
dropTargetAsyncSetActions ,
#if defined(ENABLE_OVERLOADING)
DropTargetAsyncSetFormatsMethodInfo ,
#endif
dropTargetAsyncSetFormats ,
#if defined(ENABLE_OVERLOADING)
DropTargetAsyncActionsPropertyInfo ,
#endif
constructDropTargetAsyncActions ,
#if defined(ENABLE_OVERLOADING)
dropTargetAsyncActions ,
#endif
getDropTargetAsyncActions ,
setDropTargetAsyncActions ,
#if defined(ENABLE_OVERLOADING)
DropTargetAsyncFormatsPropertyInfo ,
#endif
clearDropTargetAsyncFormats ,
constructDropTargetAsyncFormats ,
#if defined(ENABLE_OVERLOADING)
dropTargetAsyncFormats ,
#endif
getDropTargetAsyncFormats ,
setDropTargetAsyncFormats ,
C_DropTargetAsyncAcceptCallback ,
DropTargetAsyncAcceptCallback ,
#if defined(ENABLE_OVERLOADING)
DropTargetAsyncAcceptSignalInfo ,
#endif
afterDropTargetAsyncAccept ,
genClosure_DropTargetAsyncAccept ,
mk_DropTargetAsyncAcceptCallback ,
noDropTargetAsyncAcceptCallback ,
onDropTargetAsyncAccept ,
wrap_DropTargetAsyncAcceptCallback ,
C_DropTargetAsyncDragEnterCallback ,
DropTargetAsyncDragEnterCallback ,
#if defined(ENABLE_OVERLOADING)
DropTargetAsyncDragEnterSignalInfo ,
#endif
afterDropTargetAsyncDragEnter ,
genClosure_DropTargetAsyncDragEnter ,
mk_DropTargetAsyncDragEnterCallback ,
noDropTargetAsyncDragEnterCallback ,
onDropTargetAsyncDragEnter ,
wrap_DropTargetAsyncDragEnterCallback ,
C_DropTargetAsyncDragLeaveCallback ,
DropTargetAsyncDragLeaveCallback ,
#if defined(ENABLE_OVERLOADING)
DropTargetAsyncDragLeaveSignalInfo ,
#endif
afterDropTargetAsyncDragLeave ,
genClosure_DropTargetAsyncDragLeave ,
mk_DropTargetAsyncDragLeaveCallback ,
noDropTargetAsyncDragLeaveCallback ,
onDropTargetAsyncDragLeave ,
wrap_DropTargetAsyncDragLeaveCallback ,
C_DropTargetAsyncDragMotionCallback ,
DropTargetAsyncDragMotionCallback ,
#if defined(ENABLE_OVERLOADING)
DropTargetAsyncDragMotionSignalInfo ,
#endif
afterDropTargetAsyncDragMotion ,
genClosure_DropTargetAsyncDragMotion ,
mk_DropTargetAsyncDragMotionCallback ,
noDropTargetAsyncDragMotionCallback ,
onDropTargetAsyncDragMotion ,
wrap_DropTargetAsyncDragMotionCallback ,
C_DropTargetAsyncDropCallback ,
DropTargetAsyncDropCallback ,
#if defined(ENABLE_OVERLOADING)
DropTargetAsyncDropSignalInfo ,
#endif
afterDropTargetAsyncDrop ,
genClosure_DropTargetAsyncDrop ,
mk_DropTargetAsyncDropCallback ,
noDropTargetAsyncDropCallback ,
onDropTargetAsyncDrop ,
wrap_DropTargetAsyncDropCallback ,
) where
import Data.GI.Base.ShortPrelude
import qualified Data.GI.Base.ShortPrelude as SP
import qualified Data.GI.Base.Overloading as O
import qualified Prelude as P
import qualified Data.GI.Base.Attributes as GI.Attributes
import qualified Data.GI.Base.BasicTypes as B.Types
import qualified Data.GI.Base.ManagedPtr as B.ManagedPtr
import qualified Data.GI.Base.GClosure as B.GClosure
import qualified Data.GI.Base.GError as B.GError
import qualified Data.GI.Base.GVariant as B.GVariant
import qualified Data.GI.Base.GValue as B.GValue
import qualified Data.GI.Base.GParamSpec as B.GParamSpec
import qualified Data.GI.Base.CallStack as B.CallStack
import qualified Data.GI.Base.Properties as B.Properties
import qualified Data.GI.Base.Signals as B.Signals
import qualified Control.Monad.IO.Class as MIO
import qualified Data.Text as T
import qualified Data.ByteString.Char8 as B
import qualified Data.Map as Map
import qualified Foreign.Ptr as FP
import qualified GHC.OverloadedLabels as OL
import qualified GI.GObject.Objects.Object as GObject.Object
import qualified GI.Gdk.Flags as Gdk.Flags
import qualified GI.Gdk.Objects.Drop as Gdk.Drop
import qualified GI.Gdk.Structs.ContentFormats as Gdk.ContentFormats
import {-# SOURCE #-} qualified GI.Gtk.Objects.EventController as Gtk.EventController
newtype DropTargetAsync = DropTargetAsync (SP.ManagedPtr DropTargetAsync)
deriving (DropTargetAsync -> DropTargetAsync -> Bool
(DropTargetAsync -> DropTargetAsync -> Bool)
-> (DropTargetAsync -> DropTargetAsync -> Bool)
-> Eq DropTargetAsync
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DropTargetAsync -> DropTargetAsync -> Bool
$c/= :: DropTargetAsync -> DropTargetAsync -> Bool
== :: DropTargetAsync -> DropTargetAsync -> Bool
$c== :: DropTargetAsync -> DropTargetAsync -> Bool
Eq)
instance SP.ManagedPtrNewtype DropTargetAsync where
toManagedPtr :: DropTargetAsync -> ManagedPtr DropTargetAsync
toManagedPtr (DropTargetAsync ManagedPtr DropTargetAsync
p) = ManagedPtr DropTargetAsync
p
foreign import ccall "gtk_drop_target_async_get_type"
c_gtk_drop_target_async_get_type :: IO B.Types.GType
instance B.Types.TypedObject DropTargetAsync where
glibType :: IO GType
glibType = IO GType
c_gtk_drop_target_async_get_type
instance B.Types.GObject DropTargetAsync
instance B.GValue.IsGValue DropTargetAsync where
toGValue :: DropTargetAsync -> IO GValue
toGValue DropTargetAsync
o = do
GType
gtype <- IO GType
c_gtk_drop_target_async_get_type
DropTargetAsync -> (Ptr DropTargetAsync -> IO GValue) -> IO GValue
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
B.ManagedPtr.withManagedPtr DropTargetAsync
o (GType
-> (GValue -> Ptr DropTargetAsync -> IO ())
-> Ptr DropTargetAsync
-> IO GValue
forall a. GType -> (GValue -> a -> IO ()) -> a -> IO GValue
B.GValue.buildGValue GType
gtype GValue -> Ptr DropTargetAsync -> IO ()
forall a. GObject a => GValue -> Ptr a -> IO ()
B.GValue.set_object)
fromGValue :: GValue -> IO DropTargetAsync
fromGValue GValue
gv = do
Ptr DropTargetAsync
ptr <- GValue -> IO (Ptr DropTargetAsync)
forall b. GObject b => GValue -> IO (Ptr b)
B.GValue.get_object GValue
gv :: IO (Ptr DropTargetAsync)
(ManagedPtr DropTargetAsync -> DropTargetAsync)
-> Ptr DropTargetAsync -> IO DropTargetAsync
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
B.ManagedPtr.newObject ManagedPtr DropTargetAsync -> DropTargetAsync
DropTargetAsync Ptr DropTargetAsync
ptr
class (SP.GObject o, O.IsDescendantOf DropTargetAsync o) => IsDropTargetAsync o
instance (SP.GObject o, O.IsDescendantOf DropTargetAsync o) => IsDropTargetAsync o
instance O.HasParentTypes DropTargetAsync
type instance O.ParentTypes DropTargetAsync = '[Gtk.EventController.EventController, GObject.Object.Object]
toDropTargetAsync :: (MonadIO m, IsDropTargetAsync o) => o -> m DropTargetAsync
toDropTargetAsync :: o -> m DropTargetAsync
toDropTargetAsync = IO DropTargetAsync -> m DropTargetAsync
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO DropTargetAsync -> m DropTargetAsync)
-> (o -> IO DropTargetAsync) -> o -> m DropTargetAsync
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (ManagedPtr DropTargetAsync -> DropTargetAsync)
-> o -> IO DropTargetAsync
forall o o'.
(HasCallStack, ManagedPtrNewtype o, TypedObject o,
ManagedPtrNewtype o', TypedObject o') =>
(ManagedPtr o' -> o') -> o -> IO o'
unsafeCastTo ManagedPtr DropTargetAsync -> DropTargetAsync
DropTargetAsync
#if defined(ENABLE_OVERLOADING)
type family ResolveDropTargetAsyncMethod (t :: Symbol) (o :: *) :: * where
ResolveDropTargetAsyncMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
ResolveDropTargetAsyncMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
ResolveDropTargetAsyncMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
ResolveDropTargetAsyncMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
ResolveDropTargetAsyncMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
ResolveDropTargetAsyncMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
ResolveDropTargetAsyncMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
ResolveDropTargetAsyncMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
ResolveDropTargetAsyncMethod "ref" o = GObject.Object.ObjectRefMethodInfo
ResolveDropTargetAsyncMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
ResolveDropTargetAsyncMethod "rejectDrop" o = DropTargetAsyncRejectDropMethodInfo
ResolveDropTargetAsyncMethod "reset" o = Gtk.EventController.EventControllerResetMethodInfo
ResolveDropTargetAsyncMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
ResolveDropTargetAsyncMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
ResolveDropTargetAsyncMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
ResolveDropTargetAsyncMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
ResolveDropTargetAsyncMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
ResolveDropTargetAsyncMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
ResolveDropTargetAsyncMethod "getActions" o = DropTargetAsyncGetActionsMethodInfo
ResolveDropTargetAsyncMethod "getCurrentEvent" o = Gtk.EventController.EventControllerGetCurrentEventMethodInfo
ResolveDropTargetAsyncMethod "getCurrentEventDevice" o = Gtk.EventController.EventControllerGetCurrentEventDeviceMethodInfo
ResolveDropTargetAsyncMethod "getCurrentEventState" o = Gtk.EventController.EventControllerGetCurrentEventStateMethodInfo
ResolveDropTargetAsyncMethod "getCurrentEventTime" o = Gtk.EventController.EventControllerGetCurrentEventTimeMethodInfo
ResolveDropTargetAsyncMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
ResolveDropTargetAsyncMethod "getFormats" o = DropTargetAsyncGetFormatsMethodInfo
ResolveDropTargetAsyncMethod "getName" o = Gtk.EventController.EventControllerGetNameMethodInfo
ResolveDropTargetAsyncMethod "getPropagationLimit" o = Gtk.EventController.EventControllerGetPropagationLimitMethodInfo
ResolveDropTargetAsyncMethod "getPropagationPhase" o = Gtk.EventController.EventControllerGetPropagationPhaseMethodInfo
ResolveDropTargetAsyncMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
ResolveDropTargetAsyncMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
ResolveDropTargetAsyncMethod "getWidget" o = Gtk.EventController.EventControllerGetWidgetMethodInfo
ResolveDropTargetAsyncMethod "setActions" o = DropTargetAsyncSetActionsMethodInfo
ResolveDropTargetAsyncMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
ResolveDropTargetAsyncMethod "setDataFull" o = GObject.Object.ObjectSetDataFullMethodInfo
ResolveDropTargetAsyncMethod "setFormats" o = DropTargetAsyncSetFormatsMethodInfo
ResolveDropTargetAsyncMethod "setName" o = Gtk.EventController.EventControllerSetNameMethodInfo
ResolveDropTargetAsyncMethod "setPropagationLimit" o = Gtk.EventController.EventControllerSetPropagationLimitMethodInfo
ResolveDropTargetAsyncMethod "setPropagationPhase" o = Gtk.EventController.EventControllerSetPropagationPhaseMethodInfo
ResolveDropTargetAsyncMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
ResolveDropTargetAsyncMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveDropTargetAsyncMethod t DropTargetAsync, O.MethodInfo info DropTargetAsync p) => OL.IsLabel t (DropTargetAsync -> p) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.overloadedMethod @info
#else
fromLabel _ = O.overloadedMethod @info
#endif
#endif
type DropTargetAsyncAcceptCallback =
Gdk.Drop.Drop
-> IO Bool
noDropTargetAsyncAcceptCallback :: Maybe DropTargetAsyncAcceptCallback
noDropTargetAsyncAcceptCallback :: Maybe DropTargetAsyncAcceptCallback
noDropTargetAsyncAcceptCallback = Maybe DropTargetAsyncAcceptCallback
forall a. Maybe a
Nothing
type C_DropTargetAsyncAcceptCallback =
Ptr () ->
Ptr Gdk.Drop.Drop ->
Ptr () ->
IO CInt
foreign import ccall "wrapper"
mk_DropTargetAsyncAcceptCallback :: C_DropTargetAsyncAcceptCallback -> IO (FunPtr C_DropTargetAsyncAcceptCallback)
genClosure_DropTargetAsyncAccept :: MonadIO m => DropTargetAsyncAcceptCallback -> m (GClosure C_DropTargetAsyncAcceptCallback)
genClosure_DropTargetAsyncAccept :: DropTargetAsyncAcceptCallback
-> m (GClosure C_DropTargetAsyncAcceptCallback)
genClosure_DropTargetAsyncAccept DropTargetAsyncAcceptCallback
cb = IO (GClosure C_DropTargetAsyncAcceptCallback)
-> m (GClosure C_DropTargetAsyncAcceptCallback)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (GClosure C_DropTargetAsyncAcceptCallback)
-> m (GClosure C_DropTargetAsyncAcceptCallback))
-> IO (GClosure C_DropTargetAsyncAcceptCallback)
-> m (GClosure C_DropTargetAsyncAcceptCallback)
forall a b. (a -> b) -> a -> b
$ do
let cb' :: C_DropTargetAsyncAcceptCallback
cb' = DropTargetAsyncAcceptCallback -> C_DropTargetAsyncAcceptCallback
wrap_DropTargetAsyncAcceptCallback DropTargetAsyncAcceptCallback
cb
C_DropTargetAsyncAcceptCallback
-> IO (FunPtr C_DropTargetAsyncAcceptCallback)
mk_DropTargetAsyncAcceptCallback C_DropTargetAsyncAcceptCallback
cb' IO (FunPtr C_DropTargetAsyncAcceptCallback)
-> (FunPtr C_DropTargetAsyncAcceptCallback
-> IO (GClosure C_DropTargetAsyncAcceptCallback))
-> IO (GClosure C_DropTargetAsyncAcceptCallback)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= FunPtr C_DropTargetAsyncAcceptCallback
-> IO (GClosure C_DropTargetAsyncAcceptCallback)
forall (m :: * -> *) a. MonadIO m => FunPtr a -> m (GClosure a)
B.GClosure.newGClosure
wrap_DropTargetAsyncAcceptCallback ::
DropTargetAsyncAcceptCallback ->
C_DropTargetAsyncAcceptCallback
wrap_DropTargetAsyncAcceptCallback :: DropTargetAsyncAcceptCallback -> C_DropTargetAsyncAcceptCallback
wrap_DropTargetAsyncAcceptCallback DropTargetAsyncAcceptCallback
_cb Ptr ()
_ Ptr Drop
drop Ptr ()
_ = do
Drop
drop' <- ((ManagedPtr Drop -> Drop) -> Ptr Drop -> IO Drop
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr Drop -> Drop
Gdk.Drop.Drop) Ptr Drop
drop
Bool
result <- DropTargetAsyncAcceptCallback
_cb Drop
drop'
let result' :: CInt
result' = (Int -> CInt
forall a b. (Integral a, Num b) => a -> b
fromIntegral (Int -> CInt) -> (Bool -> Int) -> Bool -> CInt
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Bool -> Int
forall a. Enum a => a -> Int
fromEnum) Bool
result
CInt -> IO CInt
forall (m :: * -> *) a. Monad m => a -> m a
return CInt
result'
onDropTargetAsyncAccept :: (IsDropTargetAsync a, MonadIO m) => a -> DropTargetAsyncAcceptCallback -> m SignalHandlerId
onDropTargetAsyncAccept :: a -> DropTargetAsyncAcceptCallback -> m SignalHandlerId
onDropTargetAsyncAccept a
obj DropTargetAsyncAcceptCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let cb' :: C_DropTargetAsyncAcceptCallback
cb' = DropTargetAsyncAcceptCallback -> C_DropTargetAsyncAcceptCallback
wrap_DropTargetAsyncAcceptCallback DropTargetAsyncAcceptCallback
cb
FunPtr C_DropTargetAsyncAcceptCallback
cb'' <- C_DropTargetAsyncAcceptCallback
-> IO (FunPtr C_DropTargetAsyncAcceptCallback)
mk_DropTargetAsyncAcceptCallback C_DropTargetAsyncAcceptCallback
cb'
a
-> Text
-> FunPtr C_DropTargetAsyncAcceptCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"accept" FunPtr C_DropTargetAsyncAcceptCallback
cb'' SignalConnectMode
SignalConnectBefore Maybe Text
forall a. Maybe a
Nothing
afterDropTargetAsyncAccept :: (IsDropTargetAsync a, MonadIO m) => a -> DropTargetAsyncAcceptCallback -> m SignalHandlerId
afterDropTargetAsyncAccept :: a -> DropTargetAsyncAcceptCallback -> m SignalHandlerId
afterDropTargetAsyncAccept a
obj DropTargetAsyncAcceptCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let cb' :: C_DropTargetAsyncAcceptCallback
cb' = DropTargetAsyncAcceptCallback -> C_DropTargetAsyncAcceptCallback
wrap_DropTargetAsyncAcceptCallback DropTargetAsyncAcceptCallback
cb
FunPtr C_DropTargetAsyncAcceptCallback
cb'' <- C_DropTargetAsyncAcceptCallback
-> IO (FunPtr C_DropTargetAsyncAcceptCallback)
mk_DropTargetAsyncAcceptCallback C_DropTargetAsyncAcceptCallback
cb'
a
-> Text
-> FunPtr C_DropTargetAsyncAcceptCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"accept" FunPtr C_DropTargetAsyncAcceptCallback
cb'' SignalConnectMode
SignalConnectAfter Maybe Text
forall a. Maybe a
Nothing
#if defined(ENABLE_OVERLOADING)
data DropTargetAsyncAcceptSignalInfo
instance SignalInfo DropTargetAsyncAcceptSignalInfo where
type HaskellCallbackType DropTargetAsyncAcceptSignalInfo = DropTargetAsyncAcceptCallback
connectSignal obj cb connectMode detail = do
let cb' = wrap_DropTargetAsyncAcceptCallback cb
cb'' <- mk_DropTargetAsyncAcceptCallback cb'
connectSignalFunPtr obj "accept" cb'' connectMode detail
#endif
type DropTargetAsyncDragEnterCallback =
Gdk.Drop.Drop
-> Double
-> Double
-> IO [Gdk.Flags.DragAction]
noDropTargetAsyncDragEnterCallback :: Maybe DropTargetAsyncDragEnterCallback
noDropTargetAsyncDragEnterCallback :: Maybe DropTargetAsyncDragEnterCallback
noDropTargetAsyncDragEnterCallback = Maybe DropTargetAsyncDragEnterCallback
forall a. Maybe a
Nothing
type C_DropTargetAsyncDragEnterCallback =
Ptr () ->
Ptr Gdk.Drop.Drop ->
CDouble ->
CDouble ->
Ptr () ->
IO CUInt
foreign import ccall "wrapper"
mk_DropTargetAsyncDragEnterCallback :: C_DropTargetAsyncDragEnterCallback -> IO (FunPtr C_DropTargetAsyncDragEnterCallback)
genClosure_DropTargetAsyncDragEnter :: MonadIO m => DropTargetAsyncDragEnterCallback -> m (GClosure C_DropTargetAsyncDragEnterCallback)
genClosure_DropTargetAsyncDragEnter :: DropTargetAsyncDragEnterCallback
-> m (GClosure C_DropTargetAsyncDragEnterCallback)
genClosure_DropTargetAsyncDragEnter DropTargetAsyncDragEnterCallback
cb = IO (GClosure C_DropTargetAsyncDragEnterCallback)
-> m (GClosure C_DropTargetAsyncDragEnterCallback)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (GClosure C_DropTargetAsyncDragEnterCallback)
-> m (GClosure C_DropTargetAsyncDragEnterCallback))
-> IO (GClosure C_DropTargetAsyncDragEnterCallback)
-> m (GClosure C_DropTargetAsyncDragEnterCallback)
forall a b. (a -> b) -> a -> b
$ do
let cb' :: C_DropTargetAsyncDragEnterCallback
cb' = DropTargetAsyncDragEnterCallback
-> C_DropTargetAsyncDragEnterCallback
wrap_DropTargetAsyncDragEnterCallback DropTargetAsyncDragEnterCallback
cb
C_DropTargetAsyncDragEnterCallback
-> IO (FunPtr C_DropTargetAsyncDragEnterCallback)
mk_DropTargetAsyncDragEnterCallback C_DropTargetAsyncDragEnterCallback
cb' IO (FunPtr C_DropTargetAsyncDragEnterCallback)
-> (FunPtr C_DropTargetAsyncDragEnterCallback
-> IO (GClosure C_DropTargetAsyncDragEnterCallback))
-> IO (GClosure C_DropTargetAsyncDragEnterCallback)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= FunPtr C_DropTargetAsyncDragEnterCallback
-> IO (GClosure C_DropTargetAsyncDragEnterCallback)
forall (m :: * -> *) a. MonadIO m => FunPtr a -> m (GClosure a)
B.GClosure.newGClosure
wrap_DropTargetAsyncDragEnterCallback ::
DropTargetAsyncDragEnterCallback ->
C_DropTargetAsyncDragEnterCallback
wrap_DropTargetAsyncDragEnterCallback :: DropTargetAsyncDragEnterCallback
-> C_DropTargetAsyncDragEnterCallback
wrap_DropTargetAsyncDragEnterCallback DropTargetAsyncDragEnterCallback
_cb Ptr ()
_ Ptr Drop
drop CDouble
x CDouble
y Ptr ()
_ = do
Drop
drop' <- ((ManagedPtr Drop -> Drop) -> Ptr Drop -> IO Drop
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr Drop -> Drop
Gdk.Drop.Drop) Ptr Drop
drop
let x' :: Double
x' = CDouble -> Double
forall a b. (Real a, Fractional b) => a -> b
realToFrac CDouble
x
let y' :: Double
y' = CDouble -> Double
forall a b. (Real a, Fractional b) => a -> b
realToFrac CDouble
y
[DragAction]
result <- DropTargetAsyncDragEnterCallback
_cb Drop
drop' Double
x' Double
y'
let result' :: CUInt
result' = [DragAction] -> CUInt
forall b a. (Num b, IsGFlag a) => [a] -> b
gflagsToWord [DragAction]
result
CUInt -> IO CUInt
forall (m :: * -> *) a. Monad m => a -> m a
return CUInt
result'
onDropTargetAsyncDragEnter :: (IsDropTargetAsync a, MonadIO m) => a -> DropTargetAsyncDragEnterCallback -> m SignalHandlerId
onDropTargetAsyncDragEnter :: a -> DropTargetAsyncDragEnterCallback -> m SignalHandlerId
onDropTargetAsyncDragEnter a
obj DropTargetAsyncDragEnterCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let cb' :: C_DropTargetAsyncDragEnterCallback
cb' = DropTargetAsyncDragEnterCallback
-> C_DropTargetAsyncDragEnterCallback
wrap_DropTargetAsyncDragEnterCallback DropTargetAsyncDragEnterCallback
cb
FunPtr C_DropTargetAsyncDragEnterCallback
cb'' <- C_DropTargetAsyncDragEnterCallback
-> IO (FunPtr C_DropTargetAsyncDragEnterCallback)
mk_DropTargetAsyncDragEnterCallback C_DropTargetAsyncDragEnterCallback
cb'
a
-> Text
-> FunPtr C_DropTargetAsyncDragEnterCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"drag-enter" FunPtr C_DropTargetAsyncDragEnterCallback
cb'' SignalConnectMode
SignalConnectBefore Maybe Text
forall a. Maybe a
Nothing
afterDropTargetAsyncDragEnter :: (IsDropTargetAsync a, MonadIO m) => a -> DropTargetAsyncDragEnterCallback -> m SignalHandlerId
afterDropTargetAsyncDragEnter :: a -> DropTargetAsyncDragEnterCallback -> m SignalHandlerId
afterDropTargetAsyncDragEnter a
obj DropTargetAsyncDragEnterCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let cb' :: C_DropTargetAsyncDragEnterCallback
cb' = DropTargetAsyncDragEnterCallback
-> C_DropTargetAsyncDragEnterCallback
wrap_DropTargetAsyncDragEnterCallback DropTargetAsyncDragEnterCallback
cb
FunPtr C_DropTargetAsyncDragEnterCallback
cb'' <- C_DropTargetAsyncDragEnterCallback
-> IO (FunPtr C_DropTargetAsyncDragEnterCallback)
mk_DropTargetAsyncDragEnterCallback C_DropTargetAsyncDragEnterCallback
cb'
a
-> Text
-> FunPtr C_DropTargetAsyncDragEnterCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"drag-enter" FunPtr C_DropTargetAsyncDragEnterCallback
cb'' SignalConnectMode
SignalConnectAfter Maybe Text
forall a. Maybe a
Nothing
#if defined(ENABLE_OVERLOADING)
data DropTargetAsyncDragEnterSignalInfo
instance SignalInfo DropTargetAsyncDragEnterSignalInfo where
type HaskellCallbackType DropTargetAsyncDragEnterSignalInfo = DropTargetAsyncDragEnterCallback
connectSignal obj cb connectMode detail = do
let cb' = wrap_DropTargetAsyncDragEnterCallback cb
cb'' <- mk_DropTargetAsyncDragEnterCallback cb'
connectSignalFunPtr obj "drag-enter" cb'' connectMode detail
#endif
type DropTargetAsyncDragLeaveCallback =
Gdk.Drop.Drop
-> IO ()
noDropTargetAsyncDragLeaveCallback :: Maybe DropTargetAsyncDragLeaveCallback
noDropTargetAsyncDragLeaveCallback :: Maybe DropTargetAsyncDragLeaveCallback
noDropTargetAsyncDragLeaveCallback = Maybe DropTargetAsyncDragLeaveCallback
forall a. Maybe a
Nothing
type C_DropTargetAsyncDragLeaveCallback =
Ptr () ->
Ptr Gdk.Drop.Drop ->
Ptr () ->
IO ()
foreign import ccall "wrapper"
mk_DropTargetAsyncDragLeaveCallback :: C_DropTargetAsyncDragLeaveCallback -> IO (FunPtr C_DropTargetAsyncDragLeaveCallback)
genClosure_DropTargetAsyncDragLeave :: MonadIO m => DropTargetAsyncDragLeaveCallback -> m (GClosure C_DropTargetAsyncDragLeaveCallback)
genClosure_DropTargetAsyncDragLeave :: DropTargetAsyncDragLeaveCallback
-> m (GClosure C_DropTargetAsyncDragLeaveCallback)
genClosure_DropTargetAsyncDragLeave DropTargetAsyncDragLeaveCallback
cb = IO (GClosure C_DropTargetAsyncDragLeaveCallback)
-> m (GClosure C_DropTargetAsyncDragLeaveCallback)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (GClosure C_DropTargetAsyncDragLeaveCallback)
-> m (GClosure C_DropTargetAsyncDragLeaveCallback))
-> IO (GClosure C_DropTargetAsyncDragLeaveCallback)
-> m (GClosure C_DropTargetAsyncDragLeaveCallback)
forall a b. (a -> b) -> a -> b
$ do
let cb' :: C_DropTargetAsyncDragLeaveCallback
cb' = DropTargetAsyncDragLeaveCallback
-> C_DropTargetAsyncDragLeaveCallback
wrap_DropTargetAsyncDragLeaveCallback DropTargetAsyncDragLeaveCallback
cb
C_DropTargetAsyncDragLeaveCallback
-> IO (FunPtr C_DropTargetAsyncDragLeaveCallback)
mk_DropTargetAsyncDragLeaveCallback C_DropTargetAsyncDragLeaveCallback
cb' IO (FunPtr C_DropTargetAsyncDragLeaveCallback)
-> (FunPtr C_DropTargetAsyncDragLeaveCallback
-> IO (GClosure C_DropTargetAsyncDragLeaveCallback))
-> IO (GClosure C_DropTargetAsyncDragLeaveCallback)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= FunPtr C_DropTargetAsyncDragLeaveCallback
-> IO (GClosure C_DropTargetAsyncDragLeaveCallback)
forall (m :: * -> *) a. MonadIO m => FunPtr a -> m (GClosure a)
B.GClosure.newGClosure
wrap_DropTargetAsyncDragLeaveCallback ::
DropTargetAsyncDragLeaveCallback ->
C_DropTargetAsyncDragLeaveCallback
wrap_DropTargetAsyncDragLeaveCallback :: DropTargetAsyncDragLeaveCallback
-> C_DropTargetAsyncDragLeaveCallback
wrap_DropTargetAsyncDragLeaveCallback DropTargetAsyncDragLeaveCallback
_cb Ptr ()
_ Ptr Drop
drop Ptr ()
_ = do
Drop
drop' <- ((ManagedPtr Drop -> Drop) -> Ptr Drop -> IO Drop
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr Drop -> Drop
Gdk.Drop.Drop) Ptr Drop
drop
DropTargetAsyncDragLeaveCallback
_cb Drop
drop'
onDropTargetAsyncDragLeave :: (IsDropTargetAsync a, MonadIO m) => a -> DropTargetAsyncDragLeaveCallback -> m SignalHandlerId
onDropTargetAsyncDragLeave :: a -> DropTargetAsyncDragLeaveCallback -> m SignalHandlerId
onDropTargetAsyncDragLeave a
obj DropTargetAsyncDragLeaveCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let cb' :: C_DropTargetAsyncDragLeaveCallback
cb' = DropTargetAsyncDragLeaveCallback
-> C_DropTargetAsyncDragLeaveCallback
wrap_DropTargetAsyncDragLeaveCallback DropTargetAsyncDragLeaveCallback
cb
FunPtr C_DropTargetAsyncDragLeaveCallback
cb'' <- C_DropTargetAsyncDragLeaveCallback
-> IO (FunPtr C_DropTargetAsyncDragLeaveCallback)
mk_DropTargetAsyncDragLeaveCallback C_DropTargetAsyncDragLeaveCallback
cb'
a
-> Text
-> FunPtr C_DropTargetAsyncDragLeaveCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"drag-leave" FunPtr C_DropTargetAsyncDragLeaveCallback
cb'' SignalConnectMode
SignalConnectBefore Maybe Text
forall a. Maybe a
Nothing
afterDropTargetAsyncDragLeave :: (IsDropTargetAsync a, MonadIO m) => a -> DropTargetAsyncDragLeaveCallback -> m SignalHandlerId
afterDropTargetAsyncDragLeave :: a -> DropTargetAsyncDragLeaveCallback -> m SignalHandlerId
afterDropTargetAsyncDragLeave a
obj DropTargetAsyncDragLeaveCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let cb' :: C_DropTargetAsyncDragLeaveCallback
cb' = DropTargetAsyncDragLeaveCallback
-> C_DropTargetAsyncDragLeaveCallback
wrap_DropTargetAsyncDragLeaveCallback DropTargetAsyncDragLeaveCallback
cb
FunPtr C_DropTargetAsyncDragLeaveCallback
cb'' <- C_DropTargetAsyncDragLeaveCallback
-> IO (FunPtr C_DropTargetAsyncDragLeaveCallback)
mk_DropTargetAsyncDragLeaveCallback C_DropTargetAsyncDragLeaveCallback
cb'
a
-> Text
-> FunPtr C_DropTargetAsyncDragLeaveCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"drag-leave" FunPtr C_DropTargetAsyncDragLeaveCallback
cb'' SignalConnectMode
SignalConnectAfter Maybe Text
forall a. Maybe a
Nothing
#if defined(ENABLE_OVERLOADING)
data DropTargetAsyncDragLeaveSignalInfo
instance SignalInfo DropTargetAsyncDragLeaveSignalInfo where
type HaskellCallbackType DropTargetAsyncDragLeaveSignalInfo = DropTargetAsyncDragLeaveCallback
connectSignal obj cb connectMode detail = do
let cb' = wrap_DropTargetAsyncDragLeaveCallback cb
cb'' <- mk_DropTargetAsyncDragLeaveCallback cb'
connectSignalFunPtr obj "drag-leave" cb'' connectMode detail
#endif
type DropTargetAsyncDragMotionCallback =
Gdk.Drop.Drop
-> Double
-> Double
-> IO [Gdk.Flags.DragAction]
noDropTargetAsyncDragMotionCallback :: Maybe DropTargetAsyncDragMotionCallback
noDropTargetAsyncDragMotionCallback :: Maybe DropTargetAsyncDragEnterCallback
noDropTargetAsyncDragMotionCallback = Maybe DropTargetAsyncDragEnterCallback
forall a. Maybe a
Nothing
type C_DropTargetAsyncDragMotionCallback =
Ptr () ->
Ptr Gdk.Drop.Drop ->
CDouble ->
CDouble ->
Ptr () ->
IO CUInt
foreign import ccall "wrapper"
mk_DropTargetAsyncDragMotionCallback :: C_DropTargetAsyncDragMotionCallback -> IO (FunPtr C_DropTargetAsyncDragMotionCallback)
genClosure_DropTargetAsyncDragMotion :: MonadIO m => DropTargetAsyncDragMotionCallback -> m (GClosure C_DropTargetAsyncDragMotionCallback)
genClosure_DropTargetAsyncDragMotion :: DropTargetAsyncDragEnterCallback
-> m (GClosure C_DropTargetAsyncDragEnterCallback)
genClosure_DropTargetAsyncDragMotion DropTargetAsyncDragEnterCallback
cb = IO (GClosure C_DropTargetAsyncDragEnterCallback)
-> m (GClosure C_DropTargetAsyncDragEnterCallback)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (GClosure C_DropTargetAsyncDragEnterCallback)
-> m (GClosure C_DropTargetAsyncDragEnterCallback))
-> IO (GClosure C_DropTargetAsyncDragEnterCallback)
-> m (GClosure C_DropTargetAsyncDragEnterCallback)
forall a b. (a -> b) -> a -> b
$ do
let cb' :: C_DropTargetAsyncDragEnterCallback
cb' = DropTargetAsyncDragEnterCallback
-> C_DropTargetAsyncDragEnterCallback
wrap_DropTargetAsyncDragMotionCallback DropTargetAsyncDragEnterCallback
cb
C_DropTargetAsyncDragEnterCallback
-> IO (FunPtr C_DropTargetAsyncDragEnterCallback)
mk_DropTargetAsyncDragMotionCallback C_DropTargetAsyncDragEnterCallback
cb' IO (FunPtr C_DropTargetAsyncDragEnterCallback)
-> (FunPtr C_DropTargetAsyncDragEnterCallback
-> IO (GClosure C_DropTargetAsyncDragEnterCallback))
-> IO (GClosure C_DropTargetAsyncDragEnterCallback)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= FunPtr C_DropTargetAsyncDragEnterCallback
-> IO (GClosure C_DropTargetAsyncDragEnterCallback)
forall (m :: * -> *) a. MonadIO m => FunPtr a -> m (GClosure a)
B.GClosure.newGClosure
wrap_DropTargetAsyncDragMotionCallback ::
DropTargetAsyncDragMotionCallback ->
C_DropTargetAsyncDragMotionCallback
wrap_DropTargetAsyncDragMotionCallback :: DropTargetAsyncDragEnterCallback
-> C_DropTargetAsyncDragEnterCallback
wrap_DropTargetAsyncDragMotionCallback DropTargetAsyncDragEnterCallback
_cb Ptr ()
_ Ptr Drop
drop CDouble
x CDouble
y Ptr ()
_ = do
Drop
drop' <- ((ManagedPtr Drop -> Drop) -> Ptr Drop -> IO Drop
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr Drop -> Drop
Gdk.Drop.Drop) Ptr Drop
drop
let x' :: Double
x' = CDouble -> Double
forall a b. (Real a, Fractional b) => a -> b
realToFrac CDouble
x
let y' :: Double
y' = CDouble -> Double
forall a b. (Real a, Fractional b) => a -> b
realToFrac CDouble
y
[DragAction]
result <- DropTargetAsyncDragEnterCallback
_cb Drop
drop' Double
x' Double
y'
let result' :: CUInt
result' = [DragAction] -> CUInt
forall b a. (Num b, IsGFlag a) => [a] -> b
gflagsToWord [DragAction]
result
CUInt -> IO CUInt
forall (m :: * -> *) a. Monad m => a -> m a
return CUInt
result'
onDropTargetAsyncDragMotion :: (IsDropTargetAsync a, MonadIO m) => a -> DropTargetAsyncDragMotionCallback -> m SignalHandlerId
onDropTargetAsyncDragMotion :: a -> DropTargetAsyncDragEnterCallback -> m SignalHandlerId
onDropTargetAsyncDragMotion a
obj DropTargetAsyncDragEnterCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let cb' :: C_DropTargetAsyncDragEnterCallback
cb' = DropTargetAsyncDragEnterCallback
-> C_DropTargetAsyncDragEnterCallback
wrap_DropTargetAsyncDragMotionCallback DropTargetAsyncDragEnterCallback
cb
FunPtr C_DropTargetAsyncDragEnterCallback
cb'' <- C_DropTargetAsyncDragEnterCallback
-> IO (FunPtr C_DropTargetAsyncDragEnterCallback)
mk_DropTargetAsyncDragMotionCallback C_DropTargetAsyncDragEnterCallback
cb'
a
-> Text
-> FunPtr C_DropTargetAsyncDragEnterCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"drag-motion" FunPtr C_DropTargetAsyncDragEnterCallback
cb'' SignalConnectMode
SignalConnectBefore Maybe Text
forall a. Maybe a
Nothing
afterDropTargetAsyncDragMotion :: (IsDropTargetAsync a, MonadIO m) => a -> DropTargetAsyncDragMotionCallback -> m SignalHandlerId
afterDropTargetAsyncDragMotion :: a -> DropTargetAsyncDragEnterCallback -> m SignalHandlerId
afterDropTargetAsyncDragMotion a
obj DropTargetAsyncDragEnterCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let cb' :: C_DropTargetAsyncDragEnterCallback
cb' = DropTargetAsyncDragEnterCallback
-> C_DropTargetAsyncDragEnterCallback
wrap_DropTargetAsyncDragMotionCallback DropTargetAsyncDragEnterCallback
cb
FunPtr C_DropTargetAsyncDragEnterCallback
cb'' <- C_DropTargetAsyncDragEnterCallback
-> IO (FunPtr C_DropTargetAsyncDragEnterCallback)
mk_DropTargetAsyncDragMotionCallback C_DropTargetAsyncDragEnterCallback
cb'
a
-> Text
-> FunPtr C_DropTargetAsyncDragEnterCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"drag-motion" FunPtr C_DropTargetAsyncDragEnterCallback
cb'' SignalConnectMode
SignalConnectAfter Maybe Text
forall a. Maybe a
Nothing
#if defined(ENABLE_OVERLOADING)
data DropTargetAsyncDragMotionSignalInfo
instance SignalInfo DropTargetAsyncDragMotionSignalInfo where
type HaskellCallbackType DropTargetAsyncDragMotionSignalInfo = DropTargetAsyncDragMotionCallback
connectSignal obj cb connectMode detail = do
let cb' = wrap_DropTargetAsyncDragMotionCallback cb
cb'' <- mk_DropTargetAsyncDragMotionCallback cb'
connectSignalFunPtr obj "drag-motion" cb'' connectMode detail
#endif
type DropTargetAsyncDropCallback =
Gdk.Drop.Drop
-> Double
-> Double
-> IO Bool
noDropTargetAsyncDropCallback :: Maybe DropTargetAsyncDropCallback
noDropTargetAsyncDropCallback :: Maybe DropTargetAsyncDropCallback
noDropTargetAsyncDropCallback = Maybe DropTargetAsyncDropCallback
forall a. Maybe a
Nothing
type C_DropTargetAsyncDropCallback =
Ptr () ->
Ptr Gdk.Drop.Drop ->
CDouble ->
CDouble ->
Ptr () ->
IO CInt
foreign import ccall "wrapper"
mk_DropTargetAsyncDropCallback :: C_DropTargetAsyncDropCallback -> IO (FunPtr C_DropTargetAsyncDropCallback)
genClosure_DropTargetAsyncDrop :: MonadIO m => DropTargetAsyncDropCallback -> m (GClosure C_DropTargetAsyncDropCallback)
genClosure_DropTargetAsyncDrop :: DropTargetAsyncDropCallback
-> m (GClosure C_DropTargetAsyncDropCallback)
genClosure_DropTargetAsyncDrop DropTargetAsyncDropCallback
cb = IO (GClosure C_DropTargetAsyncDropCallback)
-> m (GClosure C_DropTargetAsyncDropCallback)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (GClosure C_DropTargetAsyncDropCallback)
-> m (GClosure C_DropTargetAsyncDropCallback))
-> IO (GClosure C_DropTargetAsyncDropCallback)
-> m (GClosure C_DropTargetAsyncDropCallback)
forall a b. (a -> b) -> a -> b
$ do
let cb' :: C_DropTargetAsyncDropCallback
cb' = DropTargetAsyncDropCallback -> C_DropTargetAsyncDropCallback
wrap_DropTargetAsyncDropCallback DropTargetAsyncDropCallback
cb
C_DropTargetAsyncDropCallback
-> IO (FunPtr C_DropTargetAsyncDropCallback)
mk_DropTargetAsyncDropCallback C_DropTargetAsyncDropCallback
cb' IO (FunPtr C_DropTargetAsyncDropCallback)
-> (FunPtr C_DropTargetAsyncDropCallback
-> IO (GClosure C_DropTargetAsyncDropCallback))
-> IO (GClosure C_DropTargetAsyncDropCallback)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= FunPtr C_DropTargetAsyncDropCallback
-> IO (GClosure C_DropTargetAsyncDropCallback)
forall (m :: * -> *) a. MonadIO m => FunPtr a -> m (GClosure a)
B.GClosure.newGClosure
wrap_DropTargetAsyncDropCallback ::
DropTargetAsyncDropCallback ->
C_DropTargetAsyncDropCallback
wrap_DropTargetAsyncDropCallback :: DropTargetAsyncDropCallback -> C_DropTargetAsyncDropCallback
wrap_DropTargetAsyncDropCallback DropTargetAsyncDropCallback
_cb Ptr ()
_ Ptr Drop
drop CDouble
x CDouble
y Ptr ()
_ = do
Drop
drop' <- ((ManagedPtr Drop -> Drop) -> Ptr Drop -> IO Drop
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr Drop -> Drop
Gdk.Drop.Drop) Ptr Drop
drop
let x' :: Double
x' = CDouble -> Double
forall a b. (Real a, Fractional b) => a -> b
realToFrac CDouble
x
let y' :: Double
y' = CDouble -> Double
forall a b. (Real a, Fractional b) => a -> b
realToFrac CDouble
y
Bool
result <- DropTargetAsyncDropCallback
_cb Drop
drop' Double
x' Double
y'
let result' :: CInt
result' = (Int -> CInt
forall a b. (Integral a, Num b) => a -> b
fromIntegral (Int -> CInt) -> (Bool -> Int) -> Bool -> CInt
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Bool -> Int
forall a. Enum a => a -> Int
fromEnum) Bool
result
CInt -> IO CInt
forall (m :: * -> *) a. Monad m => a -> m a
return CInt
result'
onDropTargetAsyncDrop :: (IsDropTargetAsync a, MonadIO m) => a -> DropTargetAsyncDropCallback -> m SignalHandlerId
onDropTargetAsyncDrop :: a -> DropTargetAsyncDropCallback -> m SignalHandlerId
onDropTargetAsyncDrop a
obj DropTargetAsyncDropCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let cb' :: C_DropTargetAsyncDropCallback
cb' = DropTargetAsyncDropCallback -> C_DropTargetAsyncDropCallback
wrap_DropTargetAsyncDropCallback DropTargetAsyncDropCallback
cb
FunPtr C_DropTargetAsyncDropCallback
cb'' <- C_DropTargetAsyncDropCallback
-> IO (FunPtr C_DropTargetAsyncDropCallback)
mk_DropTargetAsyncDropCallback C_DropTargetAsyncDropCallback
cb'
a
-> Text
-> FunPtr C_DropTargetAsyncDropCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"drop" FunPtr C_DropTargetAsyncDropCallback
cb'' SignalConnectMode
SignalConnectBefore Maybe Text
forall a. Maybe a
Nothing
afterDropTargetAsyncDrop :: (IsDropTargetAsync a, MonadIO m) => a -> DropTargetAsyncDropCallback -> m SignalHandlerId
afterDropTargetAsyncDrop :: a -> DropTargetAsyncDropCallback -> m SignalHandlerId
afterDropTargetAsyncDrop a
obj DropTargetAsyncDropCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let cb' :: C_DropTargetAsyncDropCallback
cb' = DropTargetAsyncDropCallback -> C_DropTargetAsyncDropCallback
wrap_DropTargetAsyncDropCallback DropTargetAsyncDropCallback
cb
FunPtr C_DropTargetAsyncDropCallback
cb'' <- C_DropTargetAsyncDropCallback
-> IO (FunPtr C_DropTargetAsyncDropCallback)
mk_DropTargetAsyncDropCallback C_DropTargetAsyncDropCallback
cb'
a
-> Text
-> FunPtr C_DropTargetAsyncDropCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"drop" FunPtr C_DropTargetAsyncDropCallback
cb'' SignalConnectMode
SignalConnectAfter Maybe Text
forall a. Maybe a
Nothing
#if defined(ENABLE_OVERLOADING)
data DropTargetAsyncDropSignalInfo
instance SignalInfo DropTargetAsyncDropSignalInfo where
type HaskellCallbackType DropTargetAsyncDropSignalInfo = DropTargetAsyncDropCallback
connectSignal obj cb connectMode detail = do
let cb' = wrap_DropTargetAsyncDropCallback cb
cb'' <- mk_DropTargetAsyncDropCallback cb'
connectSignalFunPtr obj "drop" cb'' connectMode detail
#endif
getDropTargetAsyncActions :: (MonadIO m, IsDropTargetAsync o) => o -> m [Gdk.Flags.DragAction]
getDropTargetAsyncActions :: o -> m [DragAction]
getDropTargetAsyncActions o
obj = IO [DragAction] -> m [DragAction]
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO [DragAction] -> m [DragAction])
-> IO [DragAction] -> m [DragAction]
forall a b. (a -> b) -> a -> b
$ o -> String -> IO [DragAction]
forall a b.
(GObject a, IsGFlag b, BoxedFlags b) =>
a -> String -> IO [b]
B.Properties.getObjectPropertyFlags o
obj String
"actions"
setDropTargetAsyncActions :: (MonadIO m, IsDropTargetAsync o) => o -> [Gdk.Flags.DragAction] -> m ()
setDropTargetAsyncActions :: o -> [DragAction] -> m ()
setDropTargetAsyncActions o
obj [DragAction]
val = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ o -> String -> [DragAction] -> IO ()
forall a b.
(IsGFlag b, BoxedFlags b, GObject a) =>
a -> String -> [b] -> IO ()
B.Properties.setObjectPropertyFlags o
obj String
"actions" [DragAction]
val
constructDropTargetAsyncActions :: (IsDropTargetAsync o, MIO.MonadIO m) => [Gdk.Flags.DragAction] -> m (GValueConstruct o)
constructDropTargetAsyncActions :: [DragAction] -> m (GValueConstruct o)
constructDropTargetAsyncActions [DragAction]
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> [DragAction] -> IO (GValueConstruct o)
forall a o.
(IsGFlag a, BoxedFlags a) =>
String -> [a] -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyFlags String
"actions" [DragAction]
val
#if defined(ENABLE_OVERLOADING)
data DropTargetAsyncActionsPropertyInfo
instance AttrInfo DropTargetAsyncActionsPropertyInfo where
type AttrAllowedOps DropTargetAsyncActionsPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
type AttrBaseTypeConstraint DropTargetAsyncActionsPropertyInfo = IsDropTargetAsync
type AttrSetTypeConstraint DropTargetAsyncActionsPropertyInfo = (~) [Gdk.Flags.DragAction]
type AttrTransferTypeConstraint DropTargetAsyncActionsPropertyInfo = (~) [Gdk.Flags.DragAction]
type AttrTransferType DropTargetAsyncActionsPropertyInfo = [Gdk.Flags.DragAction]
type AttrGetType DropTargetAsyncActionsPropertyInfo = [Gdk.Flags.DragAction]
type AttrLabel DropTargetAsyncActionsPropertyInfo = "actions"
type AttrOrigin DropTargetAsyncActionsPropertyInfo = DropTargetAsync
attrGet = getDropTargetAsyncActions
attrSet = setDropTargetAsyncActions
attrTransfer _ v = do
return v
attrConstruct = constructDropTargetAsyncActions
attrClear = undefined
#endif
getDropTargetAsyncFormats :: (MonadIO m, IsDropTargetAsync o) => o -> m (Maybe Gdk.ContentFormats.ContentFormats)
getDropTargetAsyncFormats :: o -> m (Maybe ContentFormats)
getDropTargetAsyncFormats o
obj = IO (Maybe ContentFormats) -> m (Maybe ContentFormats)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (Maybe ContentFormats) -> m (Maybe ContentFormats))
-> IO (Maybe ContentFormats) -> m (Maybe ContentFormats)
forall a b. (a -> b) -> a -> b
$ o
-> String
-> (ManagedPtr ContentFormats -> ContentFormats)
-> IO (Maybe ContentFormats)
forall a b.
(GObject a, GBoxed b) =>
a -> String -> (ManagedPtr b -> b) -> IO (Maybe b)
B.Properties.getObjectPropertyBoxed o
obj String
"formats" ManagedPtr ContentFormats -> ContentFormats
Gdk.ContentFormats.ContentFormats
setDropTargetAsyncFormats :: (MonadIO m, IsDropTargetAsync o) => o -> Gdk.ContentFormats.ContentFormats -> m ()
setDropTargetAsyncFormats :: o -> ContentFormats -> m ()
setDropTargetAsyncFormats o
obj ContentFormats
val = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ o -> String -> Maybe ContentFormats -> IO ()
forall a b.
(GObject a, GBoxed b) =>
a -> String -> Maybe b -> IO ()
B.Properties.setObjectPropertyBoxed o
obj String
"formats" (ContentFormats -> Maybe ContentFormats
forall a. a -> Maybe a
Just ContentFormats
val)
constructDropTargetAsyncFormats :: (IsDropTargetAsync o, MIO.MonadIO m) => Gdk.ContentFormats.ContentFormats -> m (GValueConstruct o)
constructDropTargetAsyncFormats :: ContentFormats -> m (GValueConstruct o)
constructDropTargetAsyncFormats ContentFormats
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Maybe ContentFormats -> IO (GValueConstruct o)
forall a o. GBoxed a => String -> Maybe a -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyBoxed String
"formats" (ContentFormats -> Maybe ContentFormats
forall a. a -> Maybe a
P.Just ContentFormats
val)
clearDropTargetAsyncFormats :: (MonadIO m, IsDropTargetAsync o) => o -> m ()
clearDropTargetAsyncFormats :: o -> m ()
clearDropTargetAsyncFormats o
obj = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ o -> String -> Maybe ContentFormats -> IO ()
forall a b.
(GObject a, GBoxed b) =>
a -> String -> Maybe b -> IO ()
B.Properties.setObjectPropertyBoxed o
obj String
"formats" (Maybe ContentFormats
forall a. Maybe a
Nothing :: Maybe Gdk.ContentFormats.ContentFormats)
#if defined(ENABLE_OVERLOADING)
data DropTargetAsyncFormatsPropertyInfo
instance AttrInfo DropTargetAsyncFormatsPropertyInfo where
type AttrAllowedOps DropTargetAsyncFormatsPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet, 'AttrClear]
type AttrBaseTypeConstraint DropTargetAsyncFormatsPropertyInfo = IsDropTargetAsync
type AttrSetTypeConstraint DropTargetAsyncFormatsPropertyInfo = (~) Gdk.ContentFormats.ContentFormats
type AttrTransferTypeConstraint DropTargetAsyncFormatsPropertyInfo = (~) Gdk.ContentFormats.ContentFormats
type AttrTransferType DropTargetAsyncFormatsPropertyInfo = Gdk.ContentFormats.ContentFormats
type AttrGetType DropTargetAsyncFormatsPropertyInfo = (Maybe Gdk.ContentFormats.ContentFormats)
type AttrLabel DropTargetAsyncFormatsPropertyInfo = "formats"
type AttrOrigin DropTargetAsyncFormatsPropertyInfo = DropTargetAsync
attrGet = getDropTargetAsyncFormats
attrSet = setDropTargetAsyncFormats
attrTransfer _ v = do
return v
attrConstruct = constructDropTargetAsyncFormats
attrClear = clearDropTargetAsyncFormats
#endif
#if defined(ENABLE_OVERLOADING)
instance O.HasAttributeList DropTargetAsync
type instance O.AttributeList DropTargetAsync = DropTargetAsyncAttributeList
type DropTargetAsyncAttributeList = ('[ '("actions", DropTargetAsyncActionsPropertyInfo), '("formats", DropTargetAsyncFormatsPropertyInfo), '("name", Gtk.EventController.EventControllerNamePropertyInfo), '("propagationLimit", Gtk.EventController.EventControllerPropagationLimitPropertyInfo), '("propagationPhase", Gtk.EventController.EventControllerPropagationPhasePropertyInfo), '("widget", Gtk.EventController.EventControllerWidgetPropertyInfo)] :: [(Symbol, *)])
#endif
#if defined(ENABLE_OVERLOADING)
dropTargetAsyncActions :: AttrLabelProxy "actions"
dropTargetAsyncActions = AttrLabelProxy
dropTargetAsyncFormats :: AttrLabelProxy "formats"
dropTargetAsyncFormats = AttrLabelProxy
#endif
#if defined(ENABLE_OVERLOADING)
type instance O.SignalList DropTargetAsync = DropTargetAsyncSignalList
type DropTargetAsyncSignalList = ('[ '("accept", DropTargetAsyncAcceptSignalInfo), '("dragEnter", DropTargetAsyncDragEnterSignalInfo), '("dragLeave", DropTargetAsyncDragLeaveSignalInfo), '("dragMotion", DropTargetAsyncDragMotionSignalInfo), '("drop", DropTargetAsyncDropSignalInfo), '("notify", GObject.Object.ObjectNotifySignalInfo)] :: [(Symbol, *)])
#endif
foreign import ccall "gtk_drop_target_async_new" gtk_drop_target_async_new ::
Ptr Gdk.ContentFormats.ContentFormats ->
CUInt ->
IO (Ptr DropTargetAsync)
dropTargetAsyncNew ::
(B.CallStack.HasCallStack, MonadIO m) =>
Maybe (Gdk.ContentFormats.ContentFormats)
-> [Gdk.Flags.DragAction]
-> m DropTargetAsync
dropTargetAsyncNew :: Maybe ContentFormats -> [DragAction] -> m DropTargetAsync
dropTargetAsyncNew Maybe ContentFormats
formats [DragAction]
actions = IO DropTargetAsync -> m DropTargetAsync
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO DropTargetAsync -> m DropTargetAsync)
-> IO DropTargetAsync -> m DropTargetAsync
forall a b. (a -> b) -> a -> b
$ do
Ptr ContentFormats
maybeFormats <- case Maybe ContentFormats
formats of
Maybe ContentFormats
Nothing -> Ptr ContentFormats -> IO (Ptr ContentFormats)
forall (m :: * -> *) a. Monad m => a -> m a
return Ptr ContentFormats
forall a. Ptr a
nullPtr
Just ContentFormats
jFormats -> do
Ptr ContentFormats
jFormats' <- ContentFormats -> IO (Ptr ContentFormats)
forall a. (HasCallStack, GBoxed a) => a -> IO (Ptr a)
B.ManagedPtr.disownBoxed ContentFormats
jFormats
Ptr ContentFormats -> IO (Ptr ContentFormats)
forall (m :: * -> *) a. Monad m => a -> m a
return Ptr ContentFormats
jFormats'
let actions' :: CUInt
actions' = [DragAction] -> CUInt
forall b a. (Num b, IsGFlag a) => [a] -> b
gflagsToWord [DragAction]
actions
Ptr DropTargetAsync
result <- Ptr ContentFormats -> CUInt -> IO (Ptr DropTargetAsync)
gtk_drop_target_async_new Ptr ContentFormats
maybeFormats CUInt
actions'
Text -> Ptr DropTargetAsync -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"dropTargetAsyncNew" Ptr DropTargetAsync
result
DropTargetAsync
result' <- ((ManagedPtr DropTargetAsync -> DropTargetAsync)
-> Ptr DropTargetAsync -> IO DropTargetAsync
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
wrapObject ManagedPtr DropTargetAsync -> DropTargetAsync
DropTargetAsync) Ptr DropTargetAsync
result
Maybe ContentFormats -> (ContentFormats -> IO ()) -> IO ()
forall (m :: * -> *) a. Monad m => Maybe a -> (a -> m ()) -> m ()
whenJust Maybe ContentFormats
formats ContentFormats -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr
DropTargetAsync -> IO DropTargetAsync
forall (m :: * -> *) a. Monad m => a -> m a
return DropTargetAsync
result'
#if defined(ENABLE_OVERLOADING)
#endif
foreign import ccall "gtk_drop_target_async_get_actions" gtk_drop_target_async_get_actions ::
Ptr DropTargetAsync ->
IO CUInt
dropTargetAsyncGetActions ::
(B.CallStack.HasCallStack, MonadIO m, IsDropTargetAsync a) =>
a
-> m [Gdk.Flags.DragAction]
dropTargetAsyncGetActions :: a -> m [DragAction]
dropTargetAsyncGetActions a
self = IO [DragAction] -> m [DragAction]
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO [DragAction] -> m [DragAction])
-> IO [DragAction] -> m [DragAction]
forall a b. (a -> b) -> a -> b
$ do
Ptr DropTargetAsync
self' <- a -> IO (Ptr DropTargetAsync)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
CUInt
result <- Ptr DropTargetAsync -> IO CUInt
gtk_drop_target_async_get_actions Ptr DropTargetAsync
self'
let result' :: [DragAction]
result' = CUInt -> [DragAction]
forall a b. (Storable a, Integral a, Bits a, IsGFlag b) => a -> [b]
wordToGFlags CUInt
result
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
[DragAction] -> IO [DragAction]
forall (m :: * -> *) a. Monad m => a -> m a
return [DragAction]
result'
#if defined(ENABLE_OVERLOADING)
data DropTargetAsyncGetActionsMethodInfo
instance (signature ~ (m [Gdk.Flags.DragAction]), MonadIO m, IsDropTargetAsync a) => O.MethodInfo DropTargetAsyncGetActionsMethodInfo a signature where
overloadedMethod = dropTargetAsyncGetActions
#endif
foreign import ccall "gtk_drop_target_async_get_formats" gtk_drop_target_async_get_formats ::
Ptr DropTargetAsync ->
IO (Ptr Gdk.ContentFormats.ContentFormats)
dropTargetAsyncGetFormats ::
(B.CallStack.HasCallStack, MonadIO m, IsDropTargetAsync a) =>
a
-> m (Maybe Gdk.ContentFormats.ContentFormats)
dropTargetAsyncGetFormats :: a -> m (Maybe ContentFormats)
dropTargetAsyncGetFormats a
self = IO (Maybe ContentFormats) -> m (Maybe ContentFormats)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (Maybe ContentFormats) -> m (Maybe ContentFormats))
-> IO (Maybe ContentFormats) -> m (Maybe ContentFormats)
forall a b. (a -> b) -> a -> b
$ do
Ptr DropTargetAsync
self' <- a -> IO (Ptr DropTargetAsync)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
Ptr ContentFormats
result <- Ptr DropTargetAsync -> IO (Ptr ContentFormats)
gtk_drop_target_async_get_formats Ptr DropTargetAsync
self'
Maybe ContentFormats
maybeResult <- Ptr ContentFormats
-> (Ptr ContentFormats -> IO ContentFormats)
-> IO (Maybe ContentFormats)
forall a b. Ptr a -> (Ptr a -> IO b) -> IO (Maybe b)
convertIfNonNull Ptr ContentFormats
result ((Ptr ContentFormats -> IO ContentFormats)
-> IO (Maybe ContentFormats))
-> (Ptr ContentFormats -> IO ContentFormats)
-> IO (Maybe ContentFormats)
forall a b. (a -> b) -> a -> b
$ \Ptr ContentFormats
result' -> do
ContentFormats
result'' <- ((ManagedPtr ContentFormats -> ContentFormats)
-> Ptr ContentFormats -> IO ContentFormats
forall a.
(HasCallStack, GBoxed a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr ContentFormats -> ContentFormats
Gdk.ContentFormats.ContentFormats) Ptr ContentFormats
result'
ContentFormats -> IO ContentFormats
forall (m :: * -> *) a. Monad m => a -> m a
return ContentFormats
result''
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
Maybe ContentFormats -> IO (Maybe ContentFormats)
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe ContentFormats
maybeResult
#if defined(ENABLE_OVERLOADING)
data DropTargetAsyncGetFormatsMethodInfo
instance (signature ~ (m (Maybe Gdk.ContentFormats.ContentFormats)), MonadIO m, IsDropTargetAsync a) => O.MethodInfo DropTargetAsyncGetFormatsMethodInfo a signature where
overloadedMethod = dropTargetAsyncGetFormats
#endif
foreign import ccall "gtk_drop_target_async_reject_drop" gtk_drop_target_async_reject_drop ::
Ptr DropTargetAsync ->
Ptr Gdk.Drop.Drop ->
IO ()
dropTargetAsyncRejectDrop ::
(B.CallStack.HasCallStack, MonadIO m, IsDropTargetAsync a, Gdk.Drop.IsDrop b) =>
a
-> b
-> m ()
dropTargetAsyncRejectDrop :: a -> b -> m ()
dropTargetAsyncRejectDrop a
self b
drop = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
Ptr DropTargetAsync
self' <- a -> IO (Ptr DropTargetAsync)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
Ptr Drop
drop' <- b -> IO (Ptr Drop)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr b
drop
Ptr DropTargetAsync -> Ptr Drop -> IO ()
gtk_drop_target_async_reject_drop Ptr DropTargetAsync
self' Ptr Drop
drop'
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
b -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr b
drop
() -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data DropTargetAsyncRejectDropMethodInfo
instance (signature ~ (b -> m ()), MonadIO m, IsDropTargetAsync a, Gdk.Drop.IsDrop b) => O.MethodInfo DropTargetAsyncRejectDropMethodInfo a signature where
overloadedMethod = dropTargetAsyncRejectDrop
#endif
foreign import ccall "gtk_drop_target_async_set_actions" gtk_drop_target_async_set_actions ::
Ptr DropTargetAsync ->
CUInt ->
IO ()
dropTargetAsyncSetActions ::
(B.CallStack.HasCallStack, MonadIO m, IsDropTargetAsync a) =>
a
-> [Gdk.Flags.DragAction]
-> m ()
dropTargetAsyncSetActions :: a -> [DragAction] -> m ()
dropTargetAsyncSetActions a
self [DragAction]
actions = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
Ptr DropTargetAsync
self' <- a -> IO (Ptr DropTargetAsync)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
let actions' :: CUInt
actions' = [DragAction] -> CUInt
forall b a. (Num b, IsGFlag a) => [a] -> b
gflagsToWord [DragAction]
actions
Ptr DropTargetAsync -> CUInt -> IO ()
gtk_drop_target_async_set_actions Ptr DropTargetAsync
self' CUInt
actions'
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
() -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data DropTargetAsyncSetActionsMethodInfo
instance (signature ~ ([Gdk.Flags.DragAction] -> m ()), MonadIO m, IsDropTargetAsync a) => O.MethodInfo DropTargetAsyncSetActionsMethodInfo a signature where
overloadedMethod = dropTargetAsyncSetActions
#endif
foreign import ccall "gtk_drop_target_async_set_formats" gtk_drop_target_async_set_formats ::
Ptr DropTargetAsync ->
Ptr Gdk.ContentFormats.ContentFormats ->
IO ()
dropTargetAsyncSetFormats ::
(B.CallStack.HasCallStack, MonadIO m, IsDropTargetAsync a) =>
a
-> Maybe (Gdk.ContentFormats.ContentFormats)
-> m ()
dropTargetAsyncSetFormats :: a -> Maybe ContentFormats -> m ()
dropTargetAsyncSetFormats a
self Maybe ContentFormats
formats = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
Ptr DropTargetAsync
self' <- a -> IO (Ptr DropTargetAsync)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
Ptr ContentFormats
maybeFormats <- case Maybe ContentFormats
formats of
Maybe ContentFormats
Nothing -> Ptr ContentFormats -> IO (Ptr ContentFormats)
forall (m :: * -> *) a. Monad m => a -> m a
return Ptr ContentFormats
forall a. Ptr a
nullPtr
Just ContentFormats
jFormats -> do
Ptr ContentFormats
jFormats' <- ContentFormats -> IO (Ptr ContentFormats)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr ContentFormats
jFormats
Ptr ContentFormats -> IO (Ptr ContentFormats)
forall (m :: * -> *) a. Monad m => a -> m a
return Ptr ContentFormats
jFormats'
Ptr DropTargetAsync -> Ptr ContentFormats -> IO ()
gtk_drop_target_async_set_formats Ptr DropTargetAsync
self' Ptr ContentFormats
maybeFormats
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
Maybe ContentFormats -> (ContentFormats -> IO ()) -> IO ()
forall (m :: * -> *) a. Monad m => Maybe a -> (a -> m ()) -> m ()
whenJust Maybe ContentFormats
formats ContentFormats -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr
() -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data DropTargetAsyncSetFormatsMethodInfo
instance (signature ~ (Maybe (Gdk.ContentFormats.ContentFormats) -> m ()), MonadIO m, IsDropTargetAsync a) => O.MethodInfo DropTargetAsyncSetFormatsMethodInfo a signature where
overloadedMethod = dropTargetAsyncSetFormats
#endif