{-# LANGUAGE TypeApplications #-}
#if (MIN_VERSION_haskell_gi_overloading(1,0,0) && !defined(__HADDOCK_VERSION__))
#define ENABLE_OVERLOADING
#endif
module GI.Gio.Objects.AppInfoMonitor
(
AppInfoMonitor(..) ,
IsAppInfoMonitor ,
toAppInfoMonitor ,
noAppInfoMonitor ,
#if defined(ENABLE_OVERLOADING)
ResolveAppInfoMonitorMethod ,
#endif
appInfoMonitorGet ,
AppInfoMonitorChangedCallback ,
#if defined(ENABLE_OVERLOADING)
AppInfoMonitorChangedSignalInfo ,
#endif
C_AppInfoMonitorChangedCallback ,
afterAppInfoMonitorChanged ,
genClosure_AppInfoMonitorChanged ,
mk_AppInfoMonitorChangedCallback ,
noAppInfoMonitorChangedCallback ,
onAppInfoMonitorChanged ,
wrap_AppInfoMonitorChangedCallback ,
) 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.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 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
newtype AppInfoMonitor = AppInfoMonitor (ManagedPtr AppInfoMonitor)
deriving (Eq)
foreign import ccall "g_app_info_monitor_get_type"
c_g_app_info_monitor_get_type :: IO GType
instance GObject AppInfoMonitor where
gobjectType = c_g_app_info_monitor_get_type
instance B.GValue.IsGValue AppInfoMonitor where
toGValue o = do
gtype <- c_g_app_info_monitor_get_type
B.ManagedPtr.withManagedPtr o (B.GValue.buildGValue gtype B.GValue.set_object)
fromGValue gv = do
ptr <- B.GValue.get_object gv :: IO (Ptr AppInfoMonitor)
B.ManagedPtr.newObject AppInfoMonitor ptr
class (GObject o, O.IsDescendantOf AppInfoMonitor o) => IsAppInfoMonitor o
instance (GObject o, O.IsDescendantOf AppInfoMonitor o) => IsAppInfoMonitor o
instance O.HasParentTypes AppInfoMonitor
type instance O.ParentTypes AppInfoMonitor = '[GObject.Object.Object]
toAppInfoMonitor :: (MonadIO m, IsAppInfoMonitor o) => o -> m AppInfoMonitor
toAppInfoMonitor = liftIO . unsafeCastTo AppInfoMonitor
noAppInfoMonitor :: Maybe AppInfoMonitor
noAppInfoMonitor = Nothing
#if defined(ENABLE_OVERLOADING)
type family ResolveAppInfoMonitorMethod (t :: Symbol) (o :: *) :: * where
ResolveAppInfoMonitorMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
ResolveAppInfoMonitorMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
ResolveAppInfoMonitorMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
ResolveAppInfoMonitorMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
ResolveAppInfoMonitorMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
ResolveAppInfoMonitorMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
ResolveAppInfoMonitorMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
ResolveAppInfoMonitorMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
ResolveAppInfoMonitorMethod "ref" o = GObject.Object.ObjectRefMethodInfo
ResolveAppInfoMonitorMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
ResolveAppInfoMonitorMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
ResolveAppInfoMonitorMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
ResolveAppInfoMonitorMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
ResolveAppInfoMonitorMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
ResolveAppInfoMonitorMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
ResolveAppInfoMonitorMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
ResolveAppInfoMonitorMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
ResolveAppInfoMonitorMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
ResolveAppInfoMonitorMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
ResolveAppInfoMonitorMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
ResolveAppInfoMonitorMethod "setDataFull" o = GObject.Object.ObjectSetDataFullMethodInfo
ResolveAppInfoMonitorMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
ResolveAppInfoMonitorMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveAppInfoMonitorMethod t AppInfoMonitor, O.MethodInfo info AppInfoMonitor p) => OL.IsLabel t (AppInfoMonitor -> p) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.overloadedMethod @info
#else
fromLabel _ = O.overloadedMethod @info
#endif
#endif
type AppInfoMonitorChangedCallback =
IO ()
noAppInfoMonitorChangedCallback :: Maybe AppInfoMonitorChangedCallback
noAppInfoMonitorChangedCallback = Nothing
type C_AppInfoMonitorChangedCallback =
Ptr () ->
Ptr () ->
IO ()
foreign import ccall "wrapper"
mk_AppInfoMonitorChangedCallback :: C_AppInfoMonitorChangedCallback -> IO (FunPtr C_AppInfoMonitorChangedCallback)
genClosure_AppInfoMonitorChanged :: MonadIO m => AppInfoMonitorChangedCallback -> m (GClosure C_AppInfoMonitorChangedCallback)
genClosure_AppInfoMonitorChanged cb = liftIO $ do
let cb' = wrap_AppInfoMonitorChangedCallback cb
mk_AppInfoMonitorChangedCallback cb' >>= B.GClosure.newGClosure
wrap_AppInfoMonitorChangedCallback ::
AppInfoMonitorChangedCallback ->
C_AppInfoMonitorChangedCallback
wrap_AppInfoMonitorChangedCallback _cb _ _ = do
_cb
onAppInfoMonitorChanged :: (IsAppInfoMonitor a, MonadIO m) => a -> AppInfoMonitorChangedCallback -> m SignalHandlerId
onAppInfoMonitorChanged obj cb = liftIO $ do
let cb' = wrap_AppInfoMonitorChangedCallback cb
cb'' <- mk_AppInfoMonitorChangedCallback cb'
connectSignalFunPtr obj "changed" cb'' SignalConnectBefore Nothing
afterAppInfoMonitorChanged :: (IsAppInfoMonitor a, MonadIO m) => a -> AppInfoMonitorChangedCallback -> m SignalHandlerId
afterAppInfoMonitorChanged obj cb = liftIO $ do
let cb' = wrap_AppInfoMonitorChangedCallback cb
cb'' <- mk_AppInfoMonitorChangedCallback cb'
connectSignalFunPtr obj "changed" cb'' SignalConnectAfter Nothing
#if defined(ENABLE_OVERLOADING)
data AppInfoMonitorChangedSignalInfo
instance SignalInfo AppInfoMonitorChangedSignalInfo where
type HaskellCallbackType AppInfoMonitorChangedSignalInfo = AppInfoMonitorChangedCallback
connectSignal obj cb connectMode detail = do
let cb' = wrap_AppInfoMonitorChangedCallback cb
cb'' <- mk_AppInfoMonitorChangedCallback cb'
connectSignalFunPtr obj "changed" cb'' connectMode detail
#endif
#if defined(ENABLE_OVERLOADING)
instance O.HasAttributeList AppInfoMonitor
type instance O.AttributeList AppInfoMonitor = AppInfoMonitorAttributeList
type AppInfoMonitorAttributeList = ('[ ] :: [(Symbol, *)])
#endif
#if defined(ENABLE_OVERLOADING)
#endif
#if defined(ENABLE_OVERLOADING)
type instance O.SignalList AppInfoMonitor = AppInfoMonitorSignalList
type AppInfoMonitorSignalList = ('[ '("changed", AppInfoMonitorChangedSignalInfo), '("notify", GObject.Object.ObjectNotifySignalInfo)] :: [(Symbol, *)])
#endif
foreign import ccall "g_app_info_monitor_get" g_app_info_monitor_get ::
IO (Ptr AppInfoMonitor)
appInfoMonitorGet ::
(B.CallStack.HasCallStack, MonadIO m) =>
m AppInfoMonitor
appInfoMonitorGet = liftIO $ do
result <- g_app_info_monitor_get
checkUnexpectedReturnNULL "appInfoMonitorGet" result
result' <- (wrapObject AppInfoMonitor) result
return result'
#if defined(ENABLE_OVERLOADING)
#endif