{-# LINE 2 "./System/GIO/Volumes/Mount.chs" #-}
module System.GIO.Volumes.Mount (
Mount(..),
MountClass,
mountGetName,
mountGetUUID,
mountGetIcon,
mountGetDrive,
mountGetRoot,
mountGetVolume,
mountGetDefaultLocation,
mountCanUnmount,
mountUnmountWithOperation,
mountUnmountWithOperationFinish,
mountRemount,
mountRemountFinish,
mountCanEject,
mountEjectWithOperation,
mountEjectWithOperationFinish,
mountGuessContentType,
mountGuessContentTypeFinish,
mountGuessContentTypeSync,
mountIsShadowed,
mountShadow,
mountUnshadow,
mountChanged,
mountPreUnmount,
mountUnmounted,
) where
import Control.Monad
import Data.Maybe (fromMaybe)
import System.GIO.Enums
import System.Glib.Attributes
import System.Glib.FFI
import System.Glib.Flags
import System.Glib.GError
import System.Glib.GList
import System.Glib.GObject
import System.Glib.Properties
import System.Glib.Signals
import System.Glib.UTFString
import System.GIO.Async.AsyncResult
{-# LINE 108 "./System/GIO/Volumes/Mount.chs" #-}
import System.GIO.Signals
{-# LINE 109 "./System/GIO/Volumes/Mount.chs" #-}
import System.GIO.Types
{-# LINE 110 "./System/GIO/Volumes/Mount.chs" #-}
{-# LINE 112 "./System/GIO/Volumes/Mount.chs" #-}
mountGetName :: (MountClass mount, GlibString string) => mount
-> IO string
mountGetName mount =
(\(Mount arg1) -> withForeignPtr arg1 $ \argPtr1 ->g_mount_get_name argPtr1) (toMount mount)
>>= readUTFString
mountGetUUID :: (MountClass mount, GlibString string) => mount
-> IO (Maybe string)
mountGetUUID mount = do
(\(Mount arg1) -> withForeignPtr arg1 $ \argPtr1 ->g_mount_get_uuid argPtr1) (toMount mount)
>>= maybePeek readUTFString
mountGetIcon :: MountClass mount => mount
-> IO Icon
mountGetIcon mount =
wrapNewGObject mkIcon $
(\(Mount arg1) -> withForeignPtr arg1 $ \argPtr1 ->g_mount_get_icon argPtr1) (toMount mount)
mountGetDrive :: MountClass mount => mount
-> IO (Maybe Drive)
mountGetDrive mount =
maybeNull (wrapNewGObject mkDrive) $
(\(Mount arg1) -> withForeignPtr arg1 $ \argPtr1 ->g_mount_get_drive argPtr1) (toMount mount)
mountGetRoot :: MountClass mount => mount
-> IO File
mountGetRoot mount =
wrapNewGObject mkFile $
(\(Mount arg1) -> withForeignPtr arg1 $ \argPtr1 ->g_mount_get_root argPtr1) (toMount mount)
mountGetVolume :: MountClass mount => mount
-> IO (Maybe Volume)
mountGetVolume mount =
maybeNull (wrapNewGObject mkVolume) $
(\(Mount arg1) -> withForeignPtr arg1 $ \argPtr1 ->g_mount_get_volume argPtr1) (toMount mount)
mountGetDefaultLocation :: MountClass mount => mount
-> IO File
mountGetDefaultLocation mount =
wrapNewGObject mkFile $
(\(Mount arg1) -> withForeignPtr arg1 $ \argPtr1 ->g_mount_get_default_location argPtr1) (toMount mount)
mountCanUnmount :: MountClass mount => mount
-> IO Bool
mountCanUnmount mount =
liftM toBool $
(\(Mount arg1) -> withForeignPtr arg1 $ \argPtr1 ->g_mount_can_unmount argPtr1) (toMount mount)
mountUnmountWithOperation :: MountClass mount
=> mount
-> [MountUnmountFlags]
-> Maybe MountOperation
-> Maybe Cancellable
-> AsyncReadyCallback
-> IO ()
mountUnmountWithOperation mount flags mountOperation cancellable callback = do
cCallback <- marshalAsyncReadyCallback callback
(\(Mount arg1) arg2 (MountOperation arg3) (Cancellable arg4) arg5 arg6 -> withForeignPtr arg1 $ \argPtr1 ->withForeignPtr arg3 $ \argPtr3 ->withForeignPtr arg4 $ \argPtr4 ->g_mount_unmount_with_operation argPtr1 arg2 argPtr3 argPtr4 arg5 arg6)
{-# LINE 192 "./System/GIO/Volumes/Mount.chs" #-}
(toMount mount)
((fromIntegral . fromFlags) flags)
(fromMaybe (MountOperation nullForeignPtr) mountOperation)
(fromMaybe (Cancellable nullForeignPtr) cancellable)
cCallback
(castFunPtrToPtr cCallback)
mountUnmountWithOperationFinish :: MountClass mount
=> mount
-> AsyncResult
-> IO ()
mountUnmountWithOperationFinish mount result =
propagateGError (\gErrorPtr -> do
(\(Mount arg1) (AsyncResult arg2) arg3 -> withForeignPtr arg1 $ \argPtr1 ->withForeignPtr arg2 $ \argPtr2 ->g_mount_unmount_with_operation_finish argPtr1 argPtr2 arg3)
{-# LINE 210 "./System/GIO/Volumes/Mount.chs" #-}
(toMount mount)
result
gErrorPtr
return ())
mountRemount :: MountClass mount
=> mount
-> [MountMountFlags]
-> Maybe MountOperation
-> Maybe Cancellable
-> AsyncReadyCallback
-> IO ()
mountRemount mount flags mountOperation cancellable callback = do
cCallback <- marshalAsyncReadyCallback callback
(\(Mount arg1) arg2 (MountOperation arg3) (Cancellable arg4) arg5 arg6 -> withForeignPtr arg1 $ \argPtr1 ->withForeignPtr arg3 $ \argPtr3 ->withForeignPtr arg4 $ \argPtr4 ->g_mount_remount argPtr1 arg2 argPtr3 argPtr4 arg5 arg6)
{-# LINE 232 "./System/GIO/Volumes/Mount.chs" #-}
(toMount mount)
((fromIntegral . fromFlags) flags)
(fromMaybe (MountOperation nullForeignPtr) mountOperation)
(fromMaybe (Cancellable nullForeignPtr) cancellable)
cCallback
(castFunPtrToPtr cCallback)
mountRemountFinish :: MountClass mount
=> mount
-> AsyncResult
-> IO ()
mountRemountFinish mount result =
propagateGError (\gErrorPtr -> do
(\(Mount arg1) (AsyncResult arg2) arg3 -> withForeignPtr arg1 $ \argPtr1 ->withForeignPtr arg2 $ \argPtr2 ->g_mount_remount_finish argPtr1 argPtr2 arg3)
{-# LINE 250 "./System/GIO/Volumes/Mount.chs" #-}
(toMount mount)
result
gErrorPtr
return ())
mountCanEject :: MountClass mount => mount
-> IO Bool
mountCanEject mount =
liftM toBool $
(\(Mount arg1) -> withForeignPtr arg1 $ \argPtr1 ->g_mount_can_eject argPtr1) (toMount mount)
mountEjectWithOperation :: MountClass mount
=> mount
-> [MountUnmountFlags]
-> Maybe MountOperation
-> Maybe Cancellable
-> AsyncReadyCallback
-> IO ()
mountEjectWithOperation mount flags mountOperation cancellable callback = do
cCallback <- marshalAsyncReadyCallback callback
(\(Mount arg1) arg2 (MountOperation arg3) (Cancellable arg4) arg5 arg6 -> withForeignPtr arg1 $ \argPtr1 ->withForeignPtr arg3 $ \argPtr3 ->withForeignPtr arg4 $ \argPtr4 ->g_mount_eject_with_operation argPtr1 arg2 argPtr3 argPtr4 arg5 arg6)
{-# LINE 275 "./System/GIO/Volumes/Mount.chs" #-}
(toMount mount)
((fromIntegral . fromFlags) flags)
(fromMaybe (MountOperation nullForeignPtr) mountOperation)
(fromMaybe (Cancellable nullForeignPtr) cancellable)
cCallback
(castFunPtrToPtr cCallback)
mountEjectWithOperationFinish :: MountClass mount
=> mount
-> AsyncResult
-> IO ()
mountEjectWithOperationFinish mount result =
propagateGError (\gErrorPtr -> do
(\(Mount arg1) (AsyncResult arg2) arg3 -> withForeignPtr arg1 $ \argPtr1 ->withForeignPtr arg2 $ \argPtr2 ->g_mount_eject_with_operation_finish argPtr1 argPtr2 arg3)
{-# LINE 292 "./System/GIO/Volumes/Mount.chs" #-}
(toMount mount)
result
gErrorPtr
return ())
mountGuessContentType :: MountClass mount => mount
-> Bool
-> Maybe Cancellable
-> AsyncReadyCallback
-> IO ()
mountGuessContentType mount forceRescan cancellable callback = do
cCallback <- marshalAsyncReadyCallback callback
(\(Mount arg1) arg2 (Cancellable arg3) arg4 arg5 -> withForeignPtr arg1 $ \argPtr1 ->withForeignPtr arg3 $ \argPtr3 ->g_mount_guess_content_type argPtr1 arg2 argPtr3 arg4 arg5)
{-# LINE 314 "./System/GIO/Volumes/Mount.chs" #-}
(toMount mount)
(fromBool forceRescan)
(fromMaybe (Cancellable nullForeignPtr) cancellable)
cCallback
(castFunPtrToPtr cCallback)
mountGuessContentTypeFinish :: (MountClass mount, GlibString string) => mount
-> AsyncResult
-> IO [string]
mountGuessContentTypeFinish mount result =
propagateGError ((\(Mount arg1) (AsyncResult arg2) arg3 -> withForeignPtr arg1 $ \argPtr1 ->withForeignPtr arg2 $ \argPtr2 ->g_mount_guess_content_type_finish argPtr1 argPtr2 arg3) (toMount mount) result)
>>= readUTFStringArray0
mountGuessContentTypeSync :: (MountClass mount, GlibString string) => mount
-> Bool
-> Maybe Cancellable
-> IO [string]
mountGuessContentTypeSync mount forceRescan cancellable =
propagateGError ((\(Mount arg1) arg2 (Cancellable arg3) arg4 -> withForeignPtr arg1 $ \argPtr1 ->withForeignPtr arg3 $ \argPtr3 ->g_mount_guess_content_type_sync argPtr1 arg2 argPtr3 arg4)
{-# LINE 342 "./System/GIO/Volumes/Mount.chs" #-}
(toMount mount)
(fromBool forceRescan)
(fromMaybe (Cancellable nullForeignPtr) cancellable)
)
>>= readUTFStringArray0
mountIsShadowed :: MountClass mount => mount
-> IO Bool
mountIsShadowed mount =
liftM toBool $
(\(Mount arg1) -> withForeignPtr arg1 $ \argPtr1 ->g_mount_is_shadowed argPtr1) (toMount mount)
mountShadow :: MountClass mount => mount -> IO ()
mountShadow mount =
(\(Mount arg1) -> withForeignPtr arg1 $ \argPtr1 ->g_mount_shadow argPtr1) (toMount mount)
mountUnshadow :: MountClass mount => mount -> IO ()
mountUnshadow mount =
(\(Mount arg1) -> withForeignPtr arg1 $ \argPtr1 ->g_mount_unshadow argPtr1) (toMount mount)
mountChanged :: MountClass mount => Signal mount (IO ())
mountChanged = Signal (connect_NONE__NONE "changed")
mountPreUnmount :: MountClass mount => Signal mount (IO ())
mountPreUnmount = Signal (connect_NONE__NONE "pre-unmount")
mountUnmounted :: MountClass mount => Signal mount (IO ())
mountUnmounted = Signal (connect_NONE__NONE "unmounted")
foreign import ccall safe "g_mount_get_name"
g_mount_get_name :: ((Ptr Mount) -> (IO (Ptr CChar)))
foreign import ccall safe "g_mount_get_uuid"
g_mount_get_uuid :: ((Ptr Mount) -> (IO (Ptr CChar)))
foreign import ccall safe "g_mount_get_icon"
g_mount_get_icon :: ((Ptr Mount) -> (IO (Ptr Icon)))
foreign import ccall safe "g_mount_get_drive"
g_mount_get_drive :: ((Ptr Mount) -> (IO (Ptr Drive)))
foreign import ccall safe "g_mount_get_root"
g_mount_get_root :: ((Ptr Mount) -> (IO (Ptr File)))
foreign import ccall safe "g_mount_get_volume"
g_mount_get_volume :: ((Ptr Mount) -> (IO (Ptr Volume)))
foreign import ccall safe "g_mount_get_default_location"
g_mount_get_default_location :: ((Ptr Mount) -> (IO (Ptr File)))
foreign import ccall safe "g_mount_can_unmount"
g_mount_can_unmount :: ((Ptr Mount) -> (IO CInt))
foreign import ccall safe "g_mount_unmount_with_operation"
g_mount_unmount_with_operation :: ((Ptr Mount) -> (CInt -> ((Ptr MountOperation) -> ((Ptr Cancellable) -> ((FunPtr ((Ptr ()) -> ((Ptr AsyncResult) -> ((Ptr ()) -> (IO ()))))) -> ((Ptr ()) -> (IO ())))))))
foreign import ccall safe "g_mount_unmount_with_operation_finish"
g_mount_unmount_with_operation_finish :: ((Ptr Mount) -> ((Ptr AsyncResult) -> ((Ptr (Ptr ())) -> (IO CInt))))
foreign import ccall safe "g_mount_remount"
g_mount_remount :: ((Ptr Mount) -> (CInt -> ((Ptr MountOperation) -> ((Ptr Cancellable) -> ((FunPtr ((Ptr ()) -> ((Ptr AsyncResult) -> ((Ptr ()) -> (IO ()))))) -> ((Ptr ()) -> (IO ())))))))
foreign import ccall safe "g_mount_remount_finish"
g_mount_remount_finish :: ((Ptr Mount) -> ((Ptr AsyncResult) -> ((Ptr (Ptr ())) -> (IO CInt))))
foreign import ccall safe "g_mount_can_eject"
g_mount_can_eject :: ((Ptr Mount) -> (IO CInt))
foreign import ccall safe "g_mount_eject_with_operation"
g_mount_eject_with_operation :: ((Ptr Mount) -> (CInt -> ((Ptr MountOperation) -> ((Ptr Cancellable) -> ((FunPtr ((Ptr ()) -> ((Ptr AsyncResult) -> ((Ptr ()) -> (IO ()))))) -> ((Ptr ()) -> (IO ())))))))
foreign import ccall safe "g_mount_eject_with_operation_finish"
g_mount_eject_with_operation_finish :: ((Ptr Mount) -> ((Ptr AsyncResult) -> ((Ptr (Ptr ())) -> (IO CInt))))
foreign import ccall safe "g_mount_guess_content_type"
g_mount_guess_content_type :: ((Ptr Mount) -> (CInt -> ((Ptr Cancellable) -> ((FunPtr ((Ptr ()) -> ((Ptr AsyncResult) -> ((Ptr ()) -> (IO ()))))) -> ((Ptr ()) -> (IO ()))))))
foreign import ccall safe "g_mount_guess_content_type_finish"
g_mount_guess_content_type_finish :: ((Ptr Mount) -> ((Ptr AsyncResult) -> ((Ptr (Ptr ())) -> (IO (Ptr (Ptr CChar))))))
foreign import ccall safe "g_mount_guess_content_type_sync"
g_mount_guess_content_type_sync :: ((Ptr Mount) -> (CInt -> ((Ptr Cancellable) -> ((Ptr (Ptr ())) -> (IO (Ptr (Ptr CChar)))))))
foreign import ccall safe "g_mount_is_shadowed"
g_mount_is_shadowed :: ((Ptr Mount) -> (IO CInt))
foreign import ccall safe "g_mount_shadow"
g_mount_shadow :: ((Ptr Mount) -> (IO ()))
foreign import ccall safe "g_mount_unshadow"
g_mount_unshadow :: ((Ptr Mount) -> (IO ()))