{- | Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte License : LGPL-2.1 Maintainer : Iñaki García Etxebarria (garetxe@gmail.com) -} module GI.Gio.Interfaces.Mount ( -- * Exported types Mount(..) , noMount , MountK , toMount , -- * Methods -- ** mountCanEject mountCanEject , -- ** mountCanUnmount mountCanUnmount , -- ** mountEject mountEject , -- ** mountEjectFinish mountEjectFinish , -- ** mountEjectWithOperation mountEjectWithOperation , -- ** mountEjectWithOperationFinish mountEjectWithOperationFinish , -- ** mountGetDefaultLocation mountGetDefaultLocation , -- ** mountGetDrive mountGetDrive , -- ** mountGetIcon mountGetIcon , -- ** mountGetName mountGetName , -- ** mountGetRoot mountGetRoot , -- ** mountGetSortKey mountGetSortKey , -- ** mountGetSymbolicIcon mountGetSymbolicIcon , -- ** mountGetUuid mountGetUuid , -- ** mountGetVolume mountGetVolume , -- ** mountGuessContentType mountGuessContentType , -- ** mountGuessContentTypeFinish mountGuessContentTypeFinish , -- ** mountGuessContentTypeSync mountGuessContentTypeSync , -- ** mountIsShadowed mountIsShadowed , -- ** mountRemount mountRemount , -- ** mountRemountFinish mountRemountFinish , -- ** mountShadow mountShadow , -- ** mountUnmount mountUnmount , -- ** mountUnmountFinish mountUnmountFinish , -- ** mountUnmountWithOperation mountUnmountWithOperation , -- ** mountUnmountWithOperationFinish mountUnmountWithOperationFinish , -- ** mountUnshadow mountUnshadow , -- * Signals -- ** Changed MountChangedCallback , MountChangedCallbackC , MountChangedSignalInfo , afterMountChanged , mkMountChangedCallback , mountChangedCallbackWrapper , mountChangedClosure , noMountChangedCallback , onMountChanged , -- ** PreUnmount MountPreUnmountCallback , MountPreUnmountCallbackC , MountPreUnmountSignalInfo , afterMountPreUnmount , mkMountPreUnmountCallback , mountPreUnmountCallbackWrapper , mountPreUnmountClosure , noMountPreUnmountCallback , onMountPreUnmount , -- ** Unmounted MountUnmountedCallback , MountUnmountedCallbackC , MountUnmountedSignalInfo , afterMountUnmounted , mkMountUnmountedCallback , mountUnmountedCallbackWrapper , mountUnmountedClosure , noMountUnmountedCallback , onMountUnmounted , ) where import Prelude () import Data.GI.Base.ShortPrelude import qualified Data.Text as T import qualified Data.ByteString.Char8 as B import qualified Data.Map as Map import GI.Gio.Types import GI.Gio.Callbacks import qualified GI.GObject as GObject -- interface Mount newtype Mount = Mount (ForeignPtr Mount) noMount :: Maybe Mount noMount = Nothing -- signal Mount::changed type MountChangedCallback = IO () noMountChangedCallback :: Maybe MountChangedCallback noMountChangedCallback = Nothing type MountChangedCallbackC = Ptr () -> -- object Ptr () -> -- user_data IO () foreign import ccall "wrapper" mkMountChangedCallback :: MountChangedCallbackC -> IO (FunPtr MountChangedCallbackC) mountChangedClosure :: MountChangedCallback -> IO Closure mountChangedClosure cb = newCClosure =<< mkMountChangedCallback wrapped where wrapped = mountChangedCallbackWrapper cb mountChangedCallbackWrapper :: MountChangedCallback -> Ptr () -> Ptr () -> IO () mountChangedCallbackWrapper _cb _ _ = do _cb onMountChanged :: (GObject a, MonadIO m) => a -> MountChangedCallback -> m SignalHandlerId onMountChanged obj cb = liftIO $ connectMountChanged obj cb SignalConnectBefore afterMountChanged :: (GObject a, MonadIO m) => a -> MountChangedCallback -> m SignalHandlerId afterMountChanged obj cb = connectMountChanged obj cb SignalConnectAfter connectMountChanged :: (GObject a, MonadIO m) => a -> MountChangedCallback -> SignalConnectMode -> m SignalHandlerId connectMountChanged obj cb after = liftIO $ do cb' <- mkMountChangedCallback (mountChangedCallbackWrapper cb) connectSignalFunPtr obj "changed" cb' after -- signal Mount::pre-unmount type MountPreUnmountCallback = IO () noMountPreUnmountCallback :: Maybe MountPreUnmountCallback noMountPreUnmountCallback = Nothing type MountPreUnmountCallbackC = Ptr () -> -- object Ptr () -> -- user_data IO () foreign import ccall "wrapper" mkMountPreUnmountCallback :: MountPreUnmountCallbackC -> IO (FunPtr MountPreUnmountCallbackC) mountPreUnmountClosure :: MountPreUnmountCallback -> IO Closure mountPreUnmountClosure cb = newCClosure =<< mkMountPreUnmountCallback wrapped where wrapped = mountPreUnmountCallbackWrapper cb mountPreUnmountCallbackWrapper :: MountPreUnmountCallback -> Ptr () -> Ptr () -> IO () mountPreUnmountCallbackWrapper _cb _ _ = do _cb onMountPreUnmount :: (GObject a, MonadIO m) => a -> MountPreUnmountCallback -> m SignalHandlerId onMountPreUnmount obj cb = liftIO $ connectMountPreUnmount obj cb SignalConnectBefore afterMountPreUnmount :: (GObject a, MonadIO m) => a -> MountPreUnmountCallback -> m SignalHandlerId afterMountPreUnmount obj cb = connectMountPreUnmount obj cb SignalConnectAfter connectMountPreUnmount :: (GObject a, MonadIO m) => a -> MountPreUnmountCallback -> SignalConnectMode -> m SignalHandlerId connectMountPreUnmount obj cb after = liftIO $ do cb' <- mkMountPreUnmountCallback (mountPreUnmountCallbackWrapper cb) connectSignalFunPtr obj "pre-unmount" cb' after -- signal Mount::unmounted type MountUnmountedCallback = IO () noMountUnmountedCallback :: Maybe MountUnmountedCallback noMountUnmountedCallback = Nothing type MountUnmountedCallbackC = Ptr () -> -- object Ptr () -> -- user_data IO () foreign import ccall "wrapper" mkMountUnmountedCallback :: MountUnmountedCallbackC -> IO (FunPtr MountUnmountedCallbackC) mountUnmountedClosure :: MountUnmountedCallback -> IO Closure mountUnmountedClosure cb = newCClosure =<< mkMountUnmountedCallback wrapped where wrapped = mountUnmountedCallbackWrapper cb mountUnmountedCallbackWrapper :: MountUnmountedCallback -> Ptr () -> Ptr () -> IO () mountUnmountedCallbackWrapper _cb _ _ = do _cb onMountUnmounted :: (GObject a, MonadIO m) => a -> MountUnmountedCallback -> m SignalHandlerId onMountUnmounted obj cb = liftIO $ connectMountUnmounted obj cb SignalConnectBefore afterMountUnmounted :: (GObject a, MonadIO m) => a -> MountUnmountedCallback -> m SignalHandlerId afterMountUnmounted obj cb = connectMountUnmounted obj cb SignalConnectAfter connectMountUnmounted :: (GObject a, MonadIO m) => a -> MountUnmountedCallback -> SignalConnectMode -> m SignalHandlerId connectMountUnmounted obj cb after = liftIO $ do cb' <- mkMountUnmountedCallback (mountUnmountedCallbackWrapper cb) connectSignalFunPtr obj "unmounted" cb' after type instance AttributeList Mount = MountAttributeList type MountAttributeList = ('[ ] :: [(Symbol, *)]) data MountChangedSignalInfo instance SignalInfo MountChangedSignalInfo where type HaskellCallbackType MountChangedSignalInfo = MountChangedCallback connectSignal _ = connectMountChanged data MountPreUnmountSignalInfo instance SignalInfo MountPreUnmountSignalInfo where type HaskellCallbackType MountPreUnmountSignalInfo = MountPreUnmountCallback connectSignal _ = connectMountPreUnmount data MountUnmountedSignalInfo instance SignalInfo MountUnmountedSignalInfo where type HaskellCallbackType MountUnmountedSignalInfo = MountUnmountedCallback connectSignal _ = connectMountUnmounted type instance SignalList Mount = MountSignalList type MountSignalList = ('[ '("changed", MountChangedSignalInfo), '("notify", GObject.ObjectNotifySignalInfo), '("pre-unmount", MountPreUnmountSignalInfo), '("unmounted", MountUnmountedSignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)]) foreign import ccall "g_mount_get_type" c_g_mount_get_type :: IO GType type instance ParentTypes Mount = MountParentTypes type MountParentTypes = '[GObject.Object] instance GObject Mount where gobjectIsInitiallyUnowned _ = False gobjectType _ = c_g_mount_get_type class GObject o => MountK o instance (GObject o, IsDescendantOf Mount o) => MountK o toMount :: MountK o => o -> IO Mount toMount = unsafeCastTo Mount -- method Mount::can_eject -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gio" "Mount", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gio" "Mount", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TBasicType TBoolean -- throws : False -- Skip return : False foreign import ccall "g_mount_can_eject" g_mount_can_eject :: Ptr Mount -> -- _obj : TInterface "Gio" "Mount" IO CInt mountCanEject :: (MonadIO m, MountK a) => a -> -- _obj m Bool mountCanEject _obj = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj result <- g_mount_can_eject _obj' let result' = (/= 0) result touchManagedPtr _obj return result' -- method Mount::can_unmount -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gio" "Mount", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gio" "Mount", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TBasicType TBoolean -- throws : False -- Skip return : False foreign import ccall "g_mount_can_unmount" g_mount_can_unmount :: Ptr Mount -> -- _obj : TInterface "Gio" "Mount" IO CInt mountCanUnmount :: (MonadIO m, MountK a) => a -> -- _obj m Bool mountCanUnmount _obj = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj result <- g_mount_can_unmount _obj' let result' = (/= 0) result touchManagedPtr _obj return result' -- method Mount::eject -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gio" "Mount", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "flags", argType = TInterface "Gio" "MountUnmountFlags", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "cancellable", argType = TInterface "Gio" "Cancellable", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "callback", argType = TInterface "Gio" "AsyncReadyCallback", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeAsync, argClosure = 4, argDestroy = -1, transfer = TransferNothing},Arg {argName = "user_data", argType = TBasicType TVoid, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gio" "Mount", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "flags", argType = TInterface "Gio" "MountUnmountFlags", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "cancellable", argType = TInterface "Gio" "Cancellable", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "callback", argType = TInterface "Gio" "AsyncReadyCallback", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeAsync, argClosure = 4, argDestroy = -1, transfer = TransferNothing}] -- returnType : TBasicType TVoid -- throws : False -- Skip return : False foreign import ccall "g_mount_eject" g_mount_eject :: Ptr Mount -> -- _obj : TInterface "Gio" "Mount" CUInt -> -- flags : TInterface "Gio" "MountUnmountFlags" Ptr Cancellable -> -- cancellable : TInterface "Gio" "Cancellable" FunPtr AsyncReadyCallbackC -> -- callback : TInterface "Gio" "AsyncReadyCallback" Ptr () -> -- user_data : TBasicType TVoid IO () {-# DEPRECATED mountEject ["(Since version 2.22)","Use g_mount_eject_with_operation() instead."]#-} mountEject :: (MonadIO m, MountK a, CancellableK b) => a -> -- _obj [MountUnmountFlags] -> -- flags Maybe (b) -> -- cancellable Maybe (AsyncReadyCallback) -> -- callback m () mountEject _obj flags cancellable callback = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj let flags' = gflagsToWord flags maybeCancellable <- case cancellable of Nothing -> return nullPtr Just jCancellable -> do let jCancellable' = unsafeManagedPtrCastPtr jCancellable return jCancellable' ptrcallback <- callocMem :: IO (Ptr (FunPtr AsyncReadyCallbackC)) maybeCallback <- case callback of Nothing -> return (castPtrToFunPtr nullPtr) Just jCallback -> do jCallback' <- mkAsyncReadyCallback (asyncReadyCallbackWrapper (Just ptrcallback) jCallback) poke ptrcallback jCallback' return jCallback' let user_data = nullPtr g_mount_eject _obj' flags' maybeCancellable maybeCallback user_data touchManagedPtr _obj whenJust cancellable touchManagedPtr return () -- method Mount::eject_finish -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gio" "Mount", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "result", argType = TInterface "Gio" "AsyncResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gio" "Mount", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "result", argType = TInterface "Gio" "AsyncResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TBasicType TBoolean -- throws : True -- Skip return : False foreign import ccall "g_mount_eject_finish" g_mount_eject_finish :: Ptr Mount -> -- _obj : TInterface "Gio" "Mount" Ptr AsyncResult -> -- result : TInterface "Gio" "AsyncResult" Ptr (Ptr GError) -> -- error IO CInt {-# DEPRECATED mountEjectFinish ["(Since version 2.22)","Use g_mount_eject_with_operation_finish() instead."]#-} mountEjectFinish :: (MonadIO m, MountK a, AsyncResultK b) => a -> -- _obj b -> -- result m () mountEjectFinish _obj result_ = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj let result_' = unsafeManagedPtrCastPtr result_ onException (do _ <- propagateGError $ g_mount_eject_finish _obj' result_' touchManagedPtr _obj touchManagedPtr result_ return () ) (do return () ) -- method Mount::eject_with_operation -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gio" "Mount", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "flags", argType = TInterface "Gio" "MountUnmountFlags", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "mount_operation", argType = TInterface "Gio" "MountOperation", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "cancellable", argType = TInterface "Gio" "Cancellable", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "callback", argType = TInterface "Gio" "AsyncReadyCallback", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeAsync, argClosure = 5, argDestroy = -1, transfer = TransferNothing},Arg {argName = "user_data", argType = TBasicType TVoid, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gio" "Mount", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "flags", argType = TInterface "Gio" "MountUnmountFlags", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "mount_operation", argType = TInterface "Gio" "MountOperation", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "cancellable", argType = TInterface "Gio" "Cancellable", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "callback", argType = TInterface "Gio" "AsyncReadyCallback", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeAsync, argClosure = 5, argDestroy = -1, transfer = TransferNothing}] -- returnType : TBasicType TVoid -- throws : False -- Skip return : False foreign import ccall "g_mount_eject_with_operation" g_mount_eject_with_operation :: Ptr Mount -> -- _obj : TInterface "Gio" "Mount" CUInt -> -- flags : TInterface "Gio" "MountUnmountFlags" Ptr MountOperation -> -- mount_operation : TInterface "Gio" "MountOperation" Ptr Cancellable -> -- cancellable : TInterface "Gio" "Cancellable" FunPtr AsyncReadyCallbackC -> -- callback : TInterface "Gio" "AsyncReadyCallback" Ptr () -> -- user_data : TBasicType TVoid IO () mountEjectWithOperation :: (MonadIO m, MountK a, MountOperationK b, CancellableK c) => a -> -- _obj [MountUnmountFlags] -> -- flags Maybe (b) -> -- mount_operation Maybe (c) -> -- cancellable Maybe (AsyncReadyCallback) -> -- callback m () mountEjectWithOperation _obj flags mount_operation cancellable callback = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj let flags' = gflagsToWord flags maybeMount_operation <- case mount_operation of Nothing -> return nullPtr Just jMount_operation -> do let jMount_operation' = unsafeManagedPtrCastPtr jMount_operation return jMount_operation' maybeCancellable <- case cancellable of Nothing -> return nullPtr Just jCancellable -> do let jCancellable' = unsafeManagedPtrCastPtr jCancellable return jCancellable' ptrcallback <- callocMem :: IO (Ptr (FunPtr AsyncReadyCallbackC)) maybeCallback <- case callback of Nothing -> return (castPtrToFunPtr nullPtr) Just jCallback -> do jCallback' <- mkAsyncReadyCallback (asyncReadyCallbackWrapper (Just ptrcallback) jCallback) poke ptrcallback jCallback' return jCallback' let user_data = nullPtr g_mount_eject_with_operation _obj' flags' maybeMount_operation maybeCancellable maybeCallback user_data touchManagedPtr _obj whenJust mount_operation touchManagedPtr whenJust cancellable touchManagedPtr return () -- method Mount::eject_with_operation_finish -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gio" "Mount", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "result", argType = TInterface "Gio" "AsyncResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gio" "Mount", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "result", argType = TInterface "Gio" "AsyncResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TBasicType TBoolean -- throws : True -- Skip return : False foreign import ccall "g_mount_eject_with_operation_finish" g_mount_eject_with_operation_finish :: Ptr Mount -> -- _obj : TInterface "Gio" "Mount" Ptr AsyncResult -> -- result : TInterface "Gio" "AsyncResult" Ptr (Ptr GError) -> -- error IO CInt mountEjectWithOperationFinish :: (MonadIO m, MountK a, AsyncResultK b) => a -> -- _obj b -> -- result m () mountEjectWithOperationFinish _obj result_ = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj let result_' = unsafeManagedPtrCastPtr result_ onException (do _ <- propagateGError $ g_mount_eject_with_operation_finish _obj' result_' touchManagedPtr _obj touchManagedPtr result_ return () ) (do return () ) -- method Mount::get_default_location -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gio" "Mount", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gio" "Mount", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TInterface "Gio" "File" -- throws : False -- Skip return : False foreign import ccall "g_mount_get_default_location" g_mount_get_default_location :: Ptr Mount -> -- _obj : TInterface "Gio" "Mount" IO (Ptr File) mountGetDefaultLocation :: (MonadIO m, MountK a) => a -> -- _obj m File mountGetDefaultLocation _obj = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj result <- g_mount_get_default_location _obj' checkUnexpectedReturnNULL "g_mount_get_default_location" result result' <- (wrapObject File) result touchManagedPtr _obj return result' -- method Mount::get_drive -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gio" "Mount", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gio" "Mount", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TInterface "Gio" "Drive" -- throws : False -- Skip return : False foreign import ccall "g_mount_get_drive" g_mount_get_drive :: Ptr Mount -> -- _obj : TInterface "Gio" "Mount" IO (Ptr Drive) mountGetDrive :: (MonadIO m, MountK a) => a -> -- _obj m Drive mountGetDrive _obj = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj result <- g_mount_get_drive _obj' checkUnexpectedReturnNULL "g_mount_get_drive" result result' <- (wrapObject Drive) result touchManagedPtr _obj return result' -- method Mount::get_icon -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gio" "Mount", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gio" "Mount", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TInterface "Gio" "Icon" -- throws : False -- Skip return : False foreign import ccall "g_mount_get_icon" g_mount_get_icon :: Ptr Mount -> -- _obj : TInterface "Gio" "Mount" IO (Ptr Icon) mountGetIcon :: (MonadIO m, MountK a) => a -> -- _obj m Icon mountGetIcon _obj = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj result <- g_mount_get_icon _obj' checkUnexpectedReturnNULL "g_mount_get_icon" result result' <- (wrapObject Icon) result touchManagedPtr _obj return result' -- method Mount::get_name -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gio" "Mount", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gio" "Mount", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TBasicType TUTF8 -- throws : False -- Skip return : False foreign import ccall "g_mount_get_name" g_mount_get_name :: Ptr Mount -> -- _obj : TInterface "Gio" "Mount" IO CString mountGetName :: (MonadIO m, MountK a) => a -> -- _obj m T.Text mountGetName _obj = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj result <- g_mount_get_name _obj' checkUnexpectedReturnNULL "g_mount_get_name" result result' <- cstringToText result freeMem result touchManagedPtr _obj return result' -- method Mount::get_root -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gio" "Mount", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gio" "Mount", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TInterface "Gio" "File" -- throws : False -- Skip return : False foreign import ccall "g_mount_get_root" g_mount_get_root :: Ptr Mount -> -- _obj : TInterface "Gio" "Mount" IO (Ptr File) mountGetRoot :: (MonadIO m, MountK a) => a -> -- _obj m File mountGetRoot _obj = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj result <- g_mount_get_root _obj' checkUnexpectedReturnNULL "g_mount_get_root" result result' <- (wrapObject File) result touchManagedPtr _obj return result' -- method Mount::get_sort_key -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gio" "Mount", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gio" "Mount", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TBasicType TUTF8 -- throws : False -- Skip return : False foreign import ccall "g_mount_get_sort_key" g_mount_get_sort_key :: Ptr Mount -> -- _obj : TInterface "Gio" "Mount" IO CString mountGetSortKey :: (MonadIO m, MountK a) => a -> -- _obj m T.Text mountGetSortKey _obj = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj result <- g_mount_get_sort_key _obj' checkUnexpectedReturnNULL "g_mount_get_sort_key" result result' <- cstringToText result touchManagedPtr _obj return result' -- method Mount::get_symbolic_icon -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gio" "Mount", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gio" "Mount", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TInterface "Gio" "Icon" -- throws : False -- Skip return : False foreign import ccall "g_mount_get_symbolic_icon" g_mount_get_symbolic_icon :: Ptr Mount -> -- _obj : TInterface "Gio" "Mount" IO (Ptr Icon) mountGetSymbolicIcon :: (MonadIO m, MountK a) => a -> -- _obj m Icon mountGetSymbolicIcon _obj = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj result <- g_mount_get_symbolic_icon _obj' checkUnexpectedReturnNULL "g_mount_get_symbolic_icon" result result' <- (wrapObject Icon) result touchManagedPtr _obj return result' -- method Mount::get_uuid -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gio" "Mount", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gio" "Mount", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TBasicType TUTF8 -- throws : False -- Skip return : False foreign import ccall "g_mount_get_uuid" g_mount_get_uuid :: Ptr Mount -> -- _obj : TInterface "Gio" "Mount" IO CString mountGetUuid :: (MonadIO m, MountK a) => a -> -- _obj m T.Text mountGetUuid _obj = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj result <- g_mount_get_uuid _obj' checkUnexpectedReturnNULL "g_mount_get_uuid" result result' <- cstringToText result freeMem result touchManagedPtr _obj return result' -- method Mount::get_volume -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gio" "Mount", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gio" "Mount", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TInterface "Gio" "Volume" -- throws : False -- Skip return : False foreign import ccall "g_mount_get_volume" g_mount_get_volume :: Ptr Mount -> -- _obj : TInterface "Gio" "Mount" IO (Ptr Volume) mountGetVolume :: (MonadIO m, MountK a) => a -> -- _obj m Volume mountGetVolume _obj = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj result <- g_mount_get_volume _obj' checkUnexpectedReturnNULL "g_mount_get_volume" result result' <- (wrapObject Volume) result touchManagedPtr _obj return result' -- method Mount::guess_content_type -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gio" "Mount", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "force_rescan", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "cancellable", argType = TInterface "Gio" "Cancellable", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "callback", argType = TInterface "Gio" "AsyncReadyCallback", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeAsync, argClosure = 4, argDestroy = -1, transfer = TransferNothing},Arg {argName = "user_data", argType = TBasicType TVoid, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gio" "Mount", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "force_rescan", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "cancellable", argType = TInterface "Gio" "Cancellable", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "callback", argType = TInterface "Gio" "AsyncReadyCallback", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeAsync, argClosure = 4, argDestroy = -1, transfer = TransferNothing}] -- returnType : TBasicType TVoid -- throws : False -- Skip return : False foreign import ccall "g_mount_guess_content_type" g_mount_guess_content_type :: Ptr Mount -> -- _obj : TInterface "Gio" "Mount" CInt -> -- force_rescan : TBasicType TBoolean Ptr Cancellable -> -- cancellable : TInterface "Gio" "Cancellable" FunPtr AsyncReadyCallbackC -> -- callback : TInterface "Gio" "AsyncReadyCallback" Ptr () -> -- user_data : TBasicType TVoid IO () mountGuessContentType :: (MonadIO m, MountK a, CancellableK b) => a -> -- _obj Bool -> -- force_rescan Maybe (b) -> -- cancellable Maybe (AsyncReadyCallback) -> -- callback m () mountGuessContentType _obj force_rescan cancellable callback = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj let force_rescan' = (fromIntegral . fromEnum) force_rescan maybeCancellable <- case cancellable of Nothing -> return nullPtr Just jCancellable -> do let jCancellable' = unsafeManagedPtrCastPtr jCancellable return jCancellable' ptrcallback <- callocMem :: IO (Ptr (FunPtr AsyncReadyCallbackC)) maybeCallback <- case callback of Nothing -> return (castPtrToFunPtr nullPtr) Just jCallback -> do jCallback' <- mkAsyncReadyCallback (asyncReadyCallbackWrapper (Just ptrcallback) jCallback) poke ptrcallback jCallback' return jCallback' let user_data = nullPtr g_mount_guess_content_type _obj' force_rescan' maybeCancellable maybeCallback user_data touchManagedPtr _obj whenJust cancellable touchManagedPtr return () -- method Mount::guess_content_type_finish -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gio" "Mount", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "result", argType = TInterface "Gio" "AsyncResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gio" "Mount", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "result", argType = TInterface "Gio" "AsyncResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TCArray True (-1) (-1) (TBasicType TUTF8) -- throws : True -- Skip return : False foreign import ccall "g_mount_guess_content_type_finish" g_mount_guess_content_type_finish :: Ptr Mount -> -- _obj : TInterface "Gio" "Mount" Ptr AsyncResult -> -- result : TInterface "Gio" "AsyncResult" Ptr (Ptr GError) -> -- error IO (Ptr CString) mountGuessContentTypeFinish :: (MonadIO m, MountK a, AsyncResultK b) => a -> -- _obj b -> -- result m [T.Text] mountGuessContentTypeFinish _obj result_ = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj let result_' = unsafeManagedPtrCastPtr result_ onException (do result <- propagateGError $ g_mount_guess_content_type_finish _obj' result_' checkUnexpectedReturnNULL "g_mount_guess_content_type_finish" result result' <- unpackZeroTerminatedUTF8CArray result mapZeroTerminatedCArray freeMem result freeMem result touchManagedPtr _obj touchManagedPtr result_ return result' ) (do return () ) -- method Mount::guess_content_type_sync -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gio" "Mount", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "force_rescan", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "cancellable", argType = TInterface "Gio" "Cancellable", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gio" "Mount", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "force_rescan", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "cancellable", argType = TInterface "Gio" "Cancellable", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TCArray True (-1) (-1) (TBasicType TUTF8) -- throws : True -- Skip return : False foreign import ccall "g_mount_guess_content_type_sync" g_mount_guess_content_type_sync :: Ptr Mount -> -- _obj : TInterface "Gio" "Mount" CInt -> -- force_rescan : TBasicType TBoolean Ptr Cancellable -> -- cancellable : TInterface "Gio" "Cancellable" Ptr (Ptr GError) -> -- error IO (Ptr CString) mountGuessContentTypeSync :: (MonadIO m, MountK a, CancellableK b) => a -> -- _obj Bool -> -- force_rescan Maybe (b) -> -- cancellable m [T.Text] mountGuessContentTypeSync _obj force_rescan cancellable = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj let force_rescan' = (fromIntegral . fromEnum) force_rescan maybeCancellable <- case cancellable of Nothing -> return nullPtr Just jCancellable -> do let jCancellable' = unsafeManagedPtrCastPtr jCancellable return jCancellable' onException (do result <- propagateGError $ g_mount_guess_content_type_sync _obj' force_rescan' maybeCancellable checkUnexpectedReturnNULL "g_mount_guess_content_type_sync" result result' <- unpackZeroTerminatedUTF8CArray result mapZeroTerminatedCArray freeMem result freeMem result touchManagedPtr _obj whenJust cancellable touchManagedPtr return result' ) (do return () ) -- method Mount::is_shadowed -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gio" "Mount", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gio" "Mount", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TBasicType TBoolean -- throws : False -- Skip return : False foreign import ccall "g_mount_is_shadowed" g_mount_is_shadowed :: Ptr Mount -> -- _obj : TInterface "Gio" "Mount" IO CInt mountIsShadowed :: (MonadIO m, MountK a) => a -> -- _obj m Bool mountIsShadowed _obj = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj result <- g_mount_is_shadowed _obj' let result' = (/= 0) result touchManagedPtr _obj return result' -- method Mount::remount -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gio" "Mount", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "flags", argType = TInterface "Gio" "MountMountFlags", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "mount_operation", argType = TInterface "Gio" "MountOperation", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "cancellable", argType = TInterface "Gio" "Cancellable", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "callback", argType = TInterface "Gio" "AsyncReadyCallback", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeAsync, argClosure = 5, argDestroy = -1, transfer = TransferNothing},Arg {argName = "user_data", argType = TBasicType TVoid, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gio" "Mount", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "flags", argType = TInterface "Gio" "MountMountFlags", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "mount_operation", argType = TInterface "Gio" "MountOperation", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "cancellable", argType = TInterface "Gio" "Cancellable", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "callback", argType = TInterface "Gio" "AsyncReadyCallback", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeAsync, argClosure = 5, argDestroy = -1, transfer = TransferNothing}] -- returnType : TBasicType TVoid -- throws : False -- Skip return : False foreign import ccall "g_mount_remount" g_mount_remount :: Ptr Mount -> -- _obj : TInterface "Gio" "Mount" CUInt -> -- flags : TInterface "Gio" "MountMountFlags" Ptr MountOperation -> -- mount_operation : TInterface "Gio" "MountOperation" Ptr Cancellable -> -- cancellable : TInterface "Gio" "Cancellable" FunPtr AsyncReadyCallbackC -> -- callback : TInterface "Gio" "AsyncReadyCallback" Ptr () -> -- user_data : TBasicType TVoid IO () mountRemount :: (MonadIO m, MountK a, MountOperationK b, CancellableK c) => a -> -- _obj [MountMountFlags] -> -- flags Maybe (b) -> -- mount_operation Maybe (c) -> -- cancellable Maybe (AsyncReadyCallback) -> -- callback m () mountRemount _obj flags mount_operation cancellable callback = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj let flags' = gflagsToWord flags maybeMount_operation <- case mount_operation of Nothing -> return nullPtr Just jMount_operation -> do let jMount_operation' = unsafeManagedPtrCastPtr jMount_operation return jMount_operation' maybeCancellable <- case cancellable of Nothing -> return nullPtr Just jCancellable -> do let jCancellable' = unsafeManagedPtrCastPtr jCancellable return jCancellable' ptrcallback <- callocMem :: IO (Ptr (FunPtr AsyncReadyCallbackC)) maybeCallback <- case callback of Nothing -> return (castPtrToFunPtr nullPtr) Just jCallback -> do jCallback' <- mkAsyncReadyCallback (asyncReadyCallbackWrapper (Just ptrcallback) jCallback) poke ptrcallback jCallback' return jCallback' let user_data = nullPtr g_mount_remount _obj' flags' maybeMount_operation maybeCancellable maybeCallback user_data touchManagedPtr _obj whenJust mount_operation touchManagedPtr whenJust cancellable touchManagedPtr return () -- method Mount::remount_finish -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gio" "Mount", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "result", argType = TInterface "Gio" "AsyncResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gio" "Mount", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "result", argType = TInterface "Gio" "AsyncResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TBasicType TBoolean -- throws : True -- Skip return : False foreign import ccall "g_mount_remount_finish" g_mount_remount_finish :: Ptr Mount -> -- _obj : TInterface "Gio" "Mount" Ptr AsyncResult -> -- result : TInterface "Gio" "AsyncResult" Ptr (Ptr GError) -> -- error IO CInt mountRemountFinish :: (MonadIO m, MountK a, AsyncResultK b) => a -> -- _obj b -> -- result m () mountRemountFinish _obj result_ = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj let result_' = unsafeManagedPtrCastPtr result_ onException (do _ <- propagateGError $ g_mount_remount_finish _obj' result_' touchManagedPtr _obj touchManagedPtr result_ return () ) (do return () ) -- method Mount::shadow -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gio" "Mount", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gio" "Mount", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TBasicType TVoid -- throws : False -- Skip return : False foreign import ccall "g_mount_shadow" g_mount_shadow :: Ptr Mount -> -- _obj : TInterface "Gio" "Mount" IO () mountShadow :: (MonadIO m, MountK a) => a -> -- _obj m () mountShadow _obj = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj g_mount_shadow _obj' touchManagedPtr _obj return () -- method Mount::unmount -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gio" "Mount", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "flags", argType = TInterface "Gio" "MountUnmountFlags", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "cancellable", argType = TInterface "Gio" "Cancellable", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "callback", argType = TInterface "Gio" "AsyncReadyCallback", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeAsync, argClosure = 4, argDestroy = -1, transfer = TransferNothing},Arg {argName = "user_data", argType = TBasicType TVoid, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gio" "Mount", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "flags", argType = TInterface "Gio" "MountUnmountFlags", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "cancellable", argType = TInterface "Gio" "Cancellable", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "callback", argType = TInterface "Gio" "AsyncReadyCallback", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeAsync, argClosure = 4, argDestroy = -1, transfer = TransferNothing}] -- returnType : TBasicType TVoid -- throws : False -- Skip return : False foreign import ccall "g_mount_unmount" g_mount_unmount :: Ptr Mount -> -- _obj : TInterface "Gio" "Mount" CUInt -> -- flags : TInterface "Gio" "MountUnmountFlags" Ptr Cancellable -> -- cancellable : TInterface "Gio" "Cancellable" FunPtr AsyncReadyCallbackC -> -- callback : TInterface "Gio" "AsyncReadyCallback" Ptr () -> -- user_data : TBasicType TVoid IO () {-# DEPRECATED mountUnmount ["(Since version 2.22)","Use g_mount_unmount_with_operation() instead."]#-} mountUnmount :: (MonadIO m, MountK a, CancellableK b) => a -> -- _obj [MountUnmountFlags] -> -- flags Maybe (b) -> -- cancellable Maybe (AsyncReadyCallback) -> -- callback m () mountUnmount _obj flags cancellable callback = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj let flags' = gflagsToWord flags maybeCancellable <- case cancellable of Nothing -> return nullPtr Just jCancellable -> do let jCancellable' = unsafeManagedPtrCastPtr jCancellable return jCancellable' ptrcallback <- callocMem :: IO (Ptr (FunPtr AsyncReadyCallbackC)) maybeCallback <- case callback of Nothing -> return (castPtrToFunPtr nullPtr) Just jCallback -> do jCallback' <- mkAsyncReadyCallback (asyncReadyCallbackWrapper (Just ptrcallback) jCallback) poke ptrcallback jCallback' return jCallback' let user_data = nullPtr g_mount_unmount _obj' flags' maybeCancellable maybeCallback user_data touchManagedPtr _obj whenJust cancellable touchManagedPtr return () -- method Mount::unmount_finish -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gio" "Mount", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "result", argType = TInterface "Gio" "AsyncResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gio" "Mount", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "result", argType = TInterface "Gio" "AsyncResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TBasicType TBoolean -- throws : True -- Skip return : False foreign import ccall "g_mount_unmount_finish" g_mount_unmount_finish :: Ptr Mount -> -- _obj : TInterface "Gio" "Mount" Ptr AsyncResult -> -- result : TInterface "Gio" "AsyncResult" Ptr (Ptr GError) -> -- error IO CInt {-# DEPRECATED mountUnmountFinish ["(Since version 2.22)","Use g_mount_unmount_with_operation_finish() instead."]#-} mountUnmountFinish :: (MonadIO m, MountK a, AsyncResultK b) => a -> -- _obj b -> -- result m () mountUnmountFinish _obj result_ = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj let result_' = unsafeManagedPtrCastPtr result_ onException (do _ <- propagateGError $ g_mount_unmount_finish _obj' result_' touchManagedPtr _obj touchManagedPtr result_ return () ) (do return () ) -- method Mount::unmount_with_operation -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gio" "Mount", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "flags", argType = TInterface "Gio" "MountUnmountFlags", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "mount_operation", argType = TInterface "Gio" "MountOperation", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "cancellable", argType = TInterface "Gio" "Cancellable", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "callback", argType = TInterface "Gio" "AsyncReadyCallback", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeAsync, argClosure = 5, argDestroy = -1, transfer = TransferNothing},Arg {argName = "user_data", argType = TBasicType TVoid, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gio" "Mount", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "flags", argType = TInterface "Gio" "MountUnmountFlags", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "mount_operation", argType = TInterface "Gio" "MountOperation", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "cancellable", argType = TInterface "Gio" "Cancellable", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "callback", argType = TInterface "Gio" "AsyncReadyCallback", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeAsync, argClosure = 5, argDestroy = -1, transfer = TransferNothing}] -- returnType : TBasicType TVoid -- throws : False -- Skip return : False foreign import ccall "g_mount_unmount_with_operation" g_mount_unmount_with_operation :: Ptr Mount -> -- _obj : TInterface "Gio" "Mount" CUInt -> -- flags : TInterface "Gio" "MountUnmountFlags" Ptr MountOperation -> -- mount_operation : TInterface "Gio" "MountOperation" Ptr Cancellable -> -- cancellable : TInterface "Gio" "Cancellable" FunPtr AsyncReadyCallbackC -> -- callback : TInterface "Gio" "AsyncReadyCallback" Ptr () -> -- user_data : TBasicType TVoid IO () mountUnmountWithOperation :: (MonadIO m, MountK a, MountOperationK b, CancellableK c) => a -> -- _obj [MountUnmountFlags] -> -- flags Maybe (b) -> -- mount_operation Maybe (c) -> -- cancellable Maybe (AsyncReadyCallback) -> -- callback m () mountUnmountWithOperation _obj flags mount_operation cancellable callback = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj let flags' = gflagsToWord flags maybeMount_operation <- case mount_operation of Nothing -> return nullPtr Just jMount_operation -> do let jMount_operation' = unsafeManagedPtrCastPtr jMount_operation return jMount_operation' maybeCancellable <- case cancellable of Nothing -> return nullPtr Just jCancellable -> do let jCancellable' = unsafeManagedPtrCastPtr jCancellable return jCancellable' ptrcallback <- callocMem :: IO (Ptr (FunPtr AsyncReadyCallbackC)) maybeCallback <- case callback of Nothing -> return (castPtrToFunPtr nullPtr) Just jCallback -> do jCallback' <- mkAsyncReadyCallback (asyncReadyCallbackWrapper (Just ptrcallback) jCallback) poke ptrcallback jCallback' return jCallback' let user_data = nullPtr g_mount_unmount_with_operation _obj' flags' maybeMount_operation maybeCancellable maybeCallback user_data touchManagedPtr _obj whenJust mount_operation touchManagedPtr whenJust cancellable touchManagedPtr return () -- method Mount::unmount_with_operation_finish -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gio" "Mount", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "result", argType = TInterface "Gio" "AsyncResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gio" "Mount", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "result", argType = TInterface "Gio" "AsyncResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TBasicType TBoolean -- throws : True -- Skip return : False foreign import ccall "g_mount_unmount_with_operation_finish" g_mount_unmount_with_operation_finish :: Ptr Mount -> -- _obj : TInterface "Gio" "Mount" Ptr AsyncResult -> -- result : TInterface "Gio" "AsyncResult" Ptr (Ptr GError) -> -- error IO CInt mountUnmountWithOperationFinish :: (MonadIO m, MountK a, AsyncResultK b) => a -> -- _obj b -> -- result m () mountUnmountWithOperationFinish _obj result_ = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj let result_' = unsafeManagedPtrCastPtr result_ onException (do _ <- propagateGError $ g_mount_unmount_with_operation_finish _obj' result_' touchManagedPtr _obj touchManagedPtr result_ return () ) (do return () ) -- method Mount::unshadow -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gio" "Mount", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gio" "Mount", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TBasicType TVoid -- throws : False -- Skip return : False foreign import ccall "g_mount_unshadow" g_mount_unshadow :: Ptr Mount -> -- _obj : TInterface "Gio" "Mount" IO () mountUnshadow :: (MonadIO m, MountK a) => a -> -- _obj m () mountUnshadow _obj = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj g_mount_unshadow _obj' touchManagedPtr _obj return ()