gi-gio-0.2.44.12: GI/Gio/Objects/UnixMountMonitor.hs
{- |
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.Objects.UnixMountMonitor
(
-- * Exported types
UnixMountMonitor(..) ,
UnixMountMonitorK ,
toUnixMountMonitor ,
noUnixMountMonitor ,
-- * Methods
-- ** unixMountMonitorGet
unixMountMonitorGet ,
-- ** unixMountMonitorNew
unixMountMonitorNew ,
-- ** unixMountMonitorSetRateLimit
unixMountMonitorSetRateLimit ,
-- * Signals
-- ** MountpointsChanged
UnixMountMonitorMountpointsChangedCallback,
UnixMountMonitorMountpointsChangedCallbackC,
UnixMountMonitorMountpointsChangedSignalInfo,
afterUnixMountMonitorMountpointsChanged ,
mkUnixMountMonitorMountpointsChangedCallback,
noUnixMountMonitorMountpointsChangedCallback,
onUnixMountMonitorMountpointsChanged ,
unixMountMonitorMountpointsChangedCallbackWrapper,
unixMountMonitorMountpointsChangedClosure,
-- ** MountsChanged
UnixMountMonitorMountsChangedCallback ,
UnixMountMonitorMountsChangedCallbackC ,
UnixMountMonitorMountsChangedSignalInfo ,
afterUnixMountMonitorMountsChanged ,
mkUnixMountMonitorMountsChangedCallback ,
noUnixMountMonitorMountsChangedCallback ,
onUnixMountMonitorMountsChanged ,
unixMountMonitorMountsChangedCallbackWrapper,
unixMountMonitorMountsChangedClosure ,
) 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
newtype UnixMountMonitor = UnixMountMonitor (ForeignPtr UnixMountMonitor)
foreign import ccall "g_unix_mount_monitor_get_type"
c_g_unix_mount_monitor_get_type :: IO GType
type instance ParentTypes UnixMountMonitor = UnixMountMonitorParentTypes
type UnixMountMonitorParentTypes = '[GObject.Object]
instance GObject UnixMountMonitor where
gobjectIsInitiallyUnowned _ = False
gobjectType _ = c_g_unix_mount_monitor_get_type
class GObject o => UnixMountMonitorK o
instance (GObject o, IsDescendantOf UnixMountMonitor o) => UnixMountMonitorK o
toUnixMountMonitor :: UnixMountMonitorK o => o -> IO UnixMountMonitor
toUnixMountMonitor = unsafeCastTo UnixMountMonitor
noUnixMountMonitor :: Maybe UnixMountMonitor
noUnixMountMonitor = Nothing
-- signal UnixMountMonitor::mountpoints-changed
type UnixMountMonitorMountpointsChangedCallback =
IO ()
noUnixMountMonitorMountpointsChangedCallback :: Maybe UnixMountMonitorMountpointsChangedCallback
noUnixMountMonitorMountpointsChangedCallback = Nothing
type UnixMountMonitorMountpointsChangedCallbackC =
Ptr () -> -- object
Ptr () -> -- user_data
IO ()
foreign import ccall "wrapper"
mkUnixMountMonitorMountpointsChangedCallback :: UnixMountMonitorMountpointsChangedCallbackC -> IO (FunPtr UnixMountMonitorMountpointsChangedCallbackC)
unixMountMonitorMountpointsChangedClosure :: UnixMountMonitorMountpointsChangedCallback -> IO Closure
unixMountMonitorMountpointsChangedClosure cb = newCClosure =<< mkUnixMountMonitorMountpointsChangedCallback wrapped
where wrapped = unixMountMonitorMountpointsChangedCallbackWrapper cb
unixMountMonitorMountpointsChangedCallbackWrapper ::
UnixMountMonitorMountpointsChangedCallback ->
Ptr () ->
Ptr () ->
IO ()
unixMountMonitorMountpointsChangedCallbackWrapper _cb _ _ = do
_cb
onUnixMountMonitorMountpointsChanged :: (GObject a, MonadIO m) => a -> UnixMountMonitorMountpointsChangedCallback -> m SignalHandlerId
onUnixMountMonitorMountpointsChanged obj cb = liftIO $ connectUnixMountMonitorMountpointsChanged obj cb SignalConnectBefore
afterUnixMountMonitorMountpointsChanged :: (GObject a, MonadIO m) => a -> UnixMountMonitorMountpointsChangedCallback -> m SignalHandlerId
afterUnixMountMonitorMountpointsChanged obj cb = connectUnixMountMonitorMountpointsChanged obj cb SignalConnectAfter
connectUnixMountMonitorMountpointsChanged :: (GObject a, MonadIO m) =>
a -> UnixMountMonitorMountpointsChangedCallback -> SignalConnectMode -> m SignalHandlerId
connectUnixMountMonitorMountpointsChanged obj cb after = liftIO $ do
cb' <- mkUnixMountMonitorMountpointsChangedCallback (unixMountMonitorMountpointsChangedCallbackWrapper cb)
connectSignalFunPtr obj "mountpoints-changed" cb' after
-- signal UnixMountMonitor::mounts-changed
type UnixMountMonitorMountsChangedCallback =
IO ()
noUnixMountMonitorMountsChangedCallback :: Maybe UnixMountMonitorMountsChangedCallback
noUnixMountMonitorMountsChangedCallback = Nothing
type UnixMountMonitorMountsChangedCallbackC =
Ptr () -> -- object
Ptr () -> -- user_data
IO ()
foreign import ccall "wrapper"
mkUnixMountMonitorMountsChangedCallback :: UnixMountMonitorMountsChangedCallbackC -> IO (FunPtr UnixMountMonitorMountsChangedCallbackC)
unixMountMonitorMountsChangedClosure :: UnixMountMonitorMountsChangedCallback -> IO Closure
unixMountMonitorMountsChangedClosure cb = newCClosure =<< mkUnixMountMonitorMountsChangedCallback wrapped
where wrapped = unixMountMonitorMountsChangedCallbackWrapper cb
unixMountMonitorMountsChangedCallbackWrapper ::
UnixMountMonitorMountsChangedCallback ->
Ptr () ->
Ptr () ->
IO ()
unixMountMonitorMountsChangedCallbackWrapper _cb _ _ = do
_cb
onUnixMountMonitorMountsChanged :: (GObject a, MonadIO m) => a -> UnixMountMonitorMountsChangedCallback -> m SignalHandlerId
onUnixMountMonitorMountsChanged obj cb = liftIO $ connectUnixMountMonitorMountsChanged obj cb SignalConnectBefore
afterUnixMountMonitorMountsChanged :: (GObject a, MonadIO m) => a -> UnixMountMonitorMountsChangedCallback -> m SignalHandlerId
afterUnixMountMonitorMountsChanged obj cb = connectUnixMountMonitorMountsChanged obj cb SignalConnectAfter
connectUnixMountMonitorMountsChanged :: (GObject a, MonadIO m) =>
a -> UnixMountMonitorMountsChangedCallback -> SignalConnectMode -> m SignalHandlerId
connectUnixMountMonitorMountsChanged obj cb after = liftIO $ do
cb' <- mkUnixMountMonitorMountsChangedCallback (unixMountMonitorMountsChangedCallbackWrapper cb)
connectSignalFunPtr obj "mounts-changed" cb' after
type instance AttributeList UnixMountMonitor = UnixMountMonitorAttributeList
type UnixMountMonitorAttributeList = ('[ ] :: [(Symbol, *)])
data UnixMountMonitorMountpointsChangedSignalInfo
instance SignalInfo UnixMountMonitorMountpointsChangedSignalInfo where
type HaskellCallbackType UnixMountMonitorMountpointsChangedSignalInfo = UnixMountMonitorMountpointsChangedCallback
connectSignal _ = connectUnixMountMonitorMountpointsChanged
data UnixMountMonitorMountsChangedSignalInfo
instance SignalInfo UnixMountMonitorMountsChangedSignalInfo where
type HaskellCallbackType UnixMountMonitorMountsChangedSignalInfo = UnixMountMonitorMountsChangedCallback
connectSignal _ = connectUnixMountMonitorMountsChanged
type instance SignalList UnixMountMonitor = UnixMountMonitorSignalList
type UnixMountMonitorSignalList = ('[ '("mountpoints-changed", UnixMountMonitorMountpointsChangedSignalInfo), '("mounts-changed", UnixMountMonitorMountsChangedSignalInfo), '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
-- method UnixMountMonitor::new
-- method type : Constructor
-- Args : []
-- Lengths : []
-- hInArgs : []
-- returnType : TInterface "Gio" "UnixMountMonitor"
-- throws : False
-- Skip return : False
foreign import ccall "g_unix_mount_monitor_new" g_unix_mount_monitor_new ::
IO (Ptr UnixMountMonitor)
{-# DEPRECATED unixMountMonitorNew ["(Since version 2.44)","Use g_unix_mount_monitor_get() instead."]#-}
unixMountMonitorNew ::
(MonadIO m) =>
m UnixMountMonitor
unixMountMonitorNew = liftIO $ do
result <- g_unix_mount_monitor_new
checkUnexpectedReturnNULL "g_unix_mount_monitor_new" result
result' <- (wrapObject UnixMountMonitor) result
return result'
-- method UnixMountMonitor::set_rate_limit
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "Gio" "UnixMountMonitor", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "limit_msec", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gio" "UnixMountMonitor", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "limit_msec", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TBasicType TVoid
-- throws : False
-- Skip return : False
foreign import ccall "g_unix_mount_monitor_set_rate_limit" g_unix_mount_monitor_set_rate_limit ::
Ptr UnixMountMonitor -> -- _obj : TInterface "Gio" "UnixMountMonitor"
Int32 -> -- limit_msec : TBasicType TInt32
IO ()
{-# DEPRECATED unixMountMonitorSetRateLimit ["(Since version 2.44)","This function does nothing. Don't call it."]#-}
unixMountMonitorSetRateLimit ::
(MonadIO m, UnixMountMonitorK a) =>
a -> -- _obj
Int32 -> -- limit_msec
m ()
unixMountMonitorSetRateLimit _obj limit_msec = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
g_unix_mount_monitor_set_rate_limit _obj' limit_msec
touchManagedPtr _obj
return ()
-- method UnixMountMonitor::get
-- method type : MemberFunction
-- Args : []
-- Lengths : []
-- hInArgs : []
-- returnType : TInterface "Gio" "UnixMountMonitor"
-- throws : False
-- Skip return : False
foreign import ccall "g_unix_mount_monitor_get" g_unix_mount_monitor_get ::
IO (Ptr UnixMountMonitor)
unixMountMonitorGet ::
(MonadIO m) =>
m UnixMountMonitor
unixMountMonitorGet = liftIO $ do
result <- g_unix_mount_monitor_get
checkUnexpectedReturnNULL "g_unix_mount_monitor_get" result
result' <- (wrapObject UnixMountMonitor) result
return result'