#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
&& !defined(__HADDOCK_VERSION__))
module GI.Dbusmenu.Objects.Server
(
Server(..) ,
IsServer ,
toServer ,
noServer ,
#if ENABLE_OVERLOADING
ServerGetIconPathsMethodInfo ,
#endif
serverGetIconPaths ,
#if ENABLE_OVERLOADING
ServerGetStatusMethodInfo ,
#endif
serverGetStatus ,
#if ENABLE_OVERLOADING
ServerGetTextDirectionMethodInfo ,
#endif
serverGetTextDirection ,
serverNew ,
#if ENABLE_OVERLOADING
ServerSetIconPathsMethodInfo ,
#endif
serverSetIconPaths ,
#if ENABLE_OVERLOADING
ServerSetRootMethodInfo ,
#endif
serverSetRoot ,
#if ENABLE_OVERLOADING
ServerSetStatusMethodInfo ,
#endif
serverSetStatus ,
#if ENABLE_OVERLOADING
ServerSetTextDirectionMethodInfo ,
#endif
serverSetTextDirection ,
#if ENABLE_OVERLOADING
ServerDbusObjectPropertyInfo ,
#endif
constructServerDbusObject ,
getServerDbusObject ,
#if ENABLE_OVERLOADING
serverDbusObject ,
#endif
#if ENABLE_OVERLOADING
ServerRootNodePropertyInfo ,
#endif
clearServerRootNode ,
constructServerRootNode ,
getServerRootNode ,
#if ENABLE_OVERLOADING
serverRootNode ,
#endif
setServerRootNode ,
#if ENABLE_OVERLOADING
ServerVersionPropertyInfo ,
#endif
getServerVersion ,
#if ENABLE_OVERLOADING
serverVersion ,
#endif
C_ServerItemActivationRequestedCallback ,
ServerItemActivationRequestedCallback ,
#if ENABLE_OVERLOADING
ServerItemActivationRequestedSignalInfo ,
#endif
afterServerItemActivationRequested ,
genClosure_ServerItemActivationRequested,
mk_ServerItemActivationRequestedCallback,
noServerItemActivationRequestedCallback ,
onServerItemActivationRequested ,
wrap_ServerItemActivationRequestedCallback,
C_ServerItemPropertyUpdatedCallback ,
ServerItemPropertyUpdatedCallback ,
#if ENABLE_OVERLOADING
ServerItemPropertyUpdatedSignalInfo ,
#endif
afterServerItemPropertyUpdated ,
genClosure_ServerItemPropertyUpdated ,
mk_ServerItemPropertyUpdatedCallback ,
noServerItemPropertyUpdatedCallback ,
onServerItemPropertyUpdated ,
wrap_ServerItemPropertyUpdatedCallback ,
C_ServerItemUpdatedCallback ,
ServerItemUpdatedCallback ,
#if ENABLE_OVERLOADING
ServerItemUpdatedSignalInfo ,
#endif
afterServerItemUpdated ,
genClosure_ServerItemUpdated ,
mk_ServerItemUpdatedCallback ,
noServerItemUpdatedCallback ,
onServerItemUpdated ,
wrap_ServerItemUpdatedCallback ,
C_ServerLayoutUpdatedCallback ,
ServerLayoutUpdatedCallback ,
#if ENABLE_OVERLOADING
ServerLayoutUpdatedSignalInfo ,
#endif
afterServerLayoutUpdated ,
genClosure_ServerLayoutUpdated ,
mk_ServerLayoutUpdatedCallback ,
noServerLayoutUpdatedCallback ,
onServerLayoutUpdated ,
wrap_ServerLayoutUpdatedCallback ,
) 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.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 {-# SOURCE #-} qualified GI.Dbusmenu.Enums as Dbusmenu.Enums
import {-# SOURCE #-} qualified GI.Dbusmenu.Objects.Menuitem as Dbusmenu.Menuitem
import qualified GI.GObject.Objects.Object as GObject.Object
newtype Server = Server (ManagedPtr Server)
foreign import ccall "dbusmenu_server_get_type"
c_dbusmenu_server_get_type :: IO GType
instance GObject Server where
gobjectType = c_dbusmenu_server_get_type
class (GObject o, O.IsDescendantOf Server o) => IsServer o
instance (GObject o, O.IsDescendantOf Server o) => IsServer o
instance O.HasParentTypes Server
type instance O.ParentTypes Server = '[GObject.Object.Object]
toServer :: (MonadIO m, IsServer o) => o -> m Server
toServer = liftIO . unsafeCastTo Server
noServer :: Maybe Server
noServer = Nothing
#if ENABLE_OVERLOADING
type family ResolveServerMethod (t :: Symbol) (o :: *) :: * where
ResolveServerMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
ResolveServerMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
ResolveServerMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
ResolveServerMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
ResolveServerMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
ResolveServerMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
ResolveServerMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
ResolveServerMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
ResolveServerMethod "ref" o = GObject.Object.ObjectRefMethodInfo
ResolveServerMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
ResolveServerMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
ResolveServerMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
ResolveServerMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
ResolveServerMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
ResolveServerMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
ResolveServerMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
ResolveServerMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
ResolveServerMethod "getIconPaths" o = ServerGetIconPathsMethodInfo
ResolveServerMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
ResolveServerMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
ResolveServerMethod "getStatus" o = ServerGetStatusMethodInfo
ResolveServerMethod "getTextDirection" o = ServerGetTextDirectionMethodInfo
ResolveServerMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
ResolveServerMethod "setDataFull" o = GObject.Object.ObjectSetDataFullMethodInfo
ResolveServerMethod "setIconPaths" o = ServerSetIconPathsMethodInfo
ResolveServerMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
ResolveServerMethod "setRoot" o = ServerSetRootMethodInfo
ResolveServerMethod "setStatus" o = ServerSetStatusMethodInfo
ResolveServerMethod "setTextDirection" o = ServerSetTextDirectionMethodInfo
ResolveServerMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveServerMethod t Server, O.MethodInfo info Server p) => OL.IsLabel t (Server -> p) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
#else
fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
#endif
#endif
type ServerItemActivationRequestedCallback =
Int32
-> Word32
-> IO ()
noServerItemActivationRequestedCallback :: Maybe ServerItemActivationRequestedCallback
noServerItemActivationRequestedCallback = Nothing
type C_ServerItemActivationRequestedCallback =
Ptr () ->
Int32 ->
Word32 ->
Ptr () ->
IO ()
foreign import ccall "wrapper"
mk_ServerItemActivationRequestedCallback :: C_ServerItemActivationRequestedCallback -> IO (FunPtr C_ServerItemActivationRequestedCallback)
genClosure_ServerItemActivationRequested :: MonadIO m => ServerItemActivationRequestedCallback -> m (GClosure C_ServerItemActivationRequestedCallback)
genClosure_ServerItemActivationRequested cb = liftIO $ do
let cb' = wrap_ServerItemActivationRequestedCallback cb
mk_ServerItemActivationRequestedCallback cb' >>= B.GClosure.newGClosure
wrap_ServerItemActivationRequestedCallback ::
ServerItemActivationRequestedCallback ->
C_ServerItemActivationRequestedCallback
wrap_ServerItemActivationRequestedCallback _cb _ arg1 arg2 _ = do
_cb arg1 arg2
onServerItemActivationRequested :: (IsServer a, MonadIO m) => a -> ServerItemActivationRequestedCallback -> m SignalHandlerId
onServerItemActivationRequested obj cb = liftIO $ do
let cb' = wrap_ServerItemActivationRequestedCallback cb
cb'' <- mk_ServerItemActivationRequestedCallback cb'
connectSignalFunPtr obj "item-activation-requested" cb'' SignalConnectBefore
afterServerItemActivationRequested :: (IsServer a, MonadIO m) => a -> ServerItemActivationRequestedCallback -> m SignalHandlerId
afterServerItemActivationRequested obj cb = liftIO $ do
let cb' = wrap_ServerItemActivationRequestedCallback cb
cb'' <- mk_ServerItemActivationRequestedCallback cb'
connectSignalFunPtr obj "item-activation-requested" cb'' SignalConnectAfter
type ServerItemPropertyUpdatedCallback =
Int32
-> T.Text
-> GVariant
-> IO ()
noServerItemPropertyUpdatedCallback :: Maybe ServerItemPropertyUpdatedCallback
noServerItemPropertyUpdatedCallback = Nothing
type C_ServerItemPropertyUpdatedCallback =
Ptr () ->
Int32 ->
CString ->
Ptr GVariant ->
Ptr () ->
IO ()
foreign import ccall "wrapper"
mk_ServerItemPropertyUpdatedCallback :: C_ServerItemPropertyUpdatedCallback -> IO (FunPtr C_ServerItemPropertyUpdatedCallback)
genClosure_ServerItemPropertyUpdated :: MonadIO m => ServerItemPropertyUpdatedCallback -> m (GClosure C_ServerItemPropertyUpdatedCallback)
genClosure_ServerItemPropertyUpdated cb = liftIO $ do
let cb' = wrap_ServerItemPropertyUpdatedCallback cb
mk_ServerItemPropertyUpdatedCallback cb' >>= B.GClosure.newGClosure
wrap_ServerItemPropertyUpdatedCallback ::
ServerItemPropertyUpdatedCallback ->
C_ServerItemPropertyUpdatedCallback
wrap_ServerItemPropertyUpdatedCallback _cb _ object p0 p1 _ = do
p0' <- cstringToText p0
p1' <- B.GVariant.newGVariantFromPtr p1
_cb object p0' p1'
onServerItemPropertyUpdated :: (IsServer a, MonadIO m) => a -> ServerItemPropertyUpdatedCallback -> m SignalHandlerId
onServerItemPropertyUpdated obj cb = liftIO $ do
let cb' = wrap_ServerItemPropertyUpdatedCallback cb
cb'' <- mk_ServerItemPropertyUpdatedCallback cb'
connectSignalFunPtr obj "item-property-updated" cb'' SignalConnectBefore
afterServerItemPropertyUpdated :: (IsServer a, MonadIO m) => a -> ServerItemPropertyUpdatedCallback -> m SignalHandlerId
afterServerItemPropertyUpdated obj cb = liftIO $ do
let cb' = wrap_ServerItemPropertyUpdatedCallback cb
cb'' <- mk_ServerItemPropertyUpdatedCallback cb'
connectSignalFunPtr obj "item-property-updated" cb'' SignalConnectAfter
type ServerItemUpdatedCallback =
Int32
-> IO ()
noServerItemUpdatedCallback :: Maybe ServerItemUpdatedCallback
noServerItemUpdatedCallback = Nothing
type C_ServerItemUpdatedCallback =
Ptr () ->
Int32 ->
Ptr () ->
IO ()
foreign import ccall "wrapper"
mk_ServerItemUpdatedCallback :: C_ServerItemUpdatedCallback -> IO (FunPtr C_ServerItemUpdatedCallback)
genClosure_ServerItemUpdated :: MonadIO m => ServerItemUpdatedCallback -> m (GClosure C_ServerItemUpdatedCallback)
genClosure_ServerItemUpdated cb = liftIO $ do
let cb' = wrap_ServerItemUpdatedCallback cb
mk_ServerItemUpdatedCallback cb' >>= B.GClosure.newGClosure
wrap_ServerItemUpdatedCallback ::
ServerItemUpdatedCallback ->
C_ServerItemUpdatedCallback
wrap_ServerItemUpdatedCallback _cb _ object _ = do
_cb object
onServerItemUpdated :: (IsServer a, MonadIO m) => a -> ServerItemUpdatedCallback -> m SignalHandlerId
onServerItemUpdated obj cb = liftIO $ do
let cb' = wrap_ServerItemUpdatedCallback cb
cb'' <- mk_ServerItemUpdatedCallback cb'
connectSignalFunPtr obj "item-updated" cb'' SignalConnectBefore
afterServerItemUpdated :: (IsServer a, MonadIO m) => a -> ServerItemUpdatedCallback -> m SignalHandlerId
afterServerItemUpdated obj cb = liftIO $ do
let cb' = wrap_ServerItemUpdatedCallback cb
cb'' <- mk_ServerItemUpdatedCallback cb'
connectSignalFunPtr obj "item-updated" cb'' SignalConnectAfter
type ServerLayoutUpdatedCallback =
Word32
-> Int32
-> IO ()
noServerLayoutUpdatedCallback :: Maybe ServerLayoutUpdatedCallback
noServerLayoutUpdatedCallback = Nothing
type C_ServerLayoutUpdatedCallback =
Ptr () ->
Word32 ->
Int32 ->
Ptr () ->
IO ()
foreign import ccall "wrapper"
mk_ServerLayoutUpdatedCallback :: C_ServerLayoutUpdatedCallback -> IO (FunPtr C_ServerLayoutUpdatedCallback)
genClosure_ServerLayoutUpdated :: MonadIO m => ServerLayoutUpdatedCallback -> m (GClosure C_ServerLayoutUpdatedCallback)
genClosure_ServerLayoutUpdated cb = liftIO $ do
let cb' = wrap_ServerLayoutUpdatedCallback cb
mk_ServerLayoutUpdatedCallback cb' >>= B.GClosure.newGClosure
wrap_ServerLayoutUpdatedCallback ::
ServerLayoutUpdatedCallback ->
C_ServerLayoutUpdatedCallback
wrap_ServerLayoutUpdatedCallback _cb _ arg1 arg2 _ = do
_cb arg1 arg2
onServerLayoutUpdated :: (IsServer a, MonadIO m) => a -> ServerLayoutUpdatedCallback -> m SignalHandlerId
onServerLayoutUpdated obj cb = liftIO $ do
let cb' = wrap_ServerLayoutUpdatedCallback cb
cb'' <- mk_ServerLayoutUpdatedCallback cb'
connectSignalFunPtr obj "layout-updated" cb'' SignalConnectBefore
afterServerLayoutUpdated :: (IsServer a, MonadIO m) => a -> ServerLayoutUpdatedCallback -> m SignalHandlerId
afterServerLayoutUpdated obj cb = liftIO $ do
let cb' = wrap_ServerLayoutUpdatedCallback cb
cb'' <- mk_ServerLayoutUpdatedCallback cb'
connectSignalFunPtr obj "layout-updated" cb'' SignalConnectAfter
getServerDbusObject :: (MonadIO m, IsServer o) => o -> m (Maybe T.Text)
getServerDbusObject obj = liftIO $ B.Properties.getObjectPropertyString obj "dbus-object"
constructServerDbusObject :: (IsServer o) => T.Text -> IO (GValueConstruct o)
constructServerDbusObject val = B.Properties.constructObjectPropertyString "dbus-object" (Just val)
#if ENABLE_OVERLOADING
data ServerDbusObjectPropertyInfo
instance AttrInfo ServerDbusObjectPropertyInfo where
type AttrAllowedOps ServerDbusObjectPropertyInfo = '[ 'AttrConstruct, 'AttrGet, 'AttrClear]
type AttrSetTypeConstraint ServerDbusObjectPropertyInfo = (~) T.Text
type AttrBaseTypeConstraint ServerDbusObjectPropertyInfo = IsServer
type AttrGetType ServerDbusObjectPropertyInfo = (Maybe T.Text)
type AttrLabel ServerDbusObjectPropertyInfo = "dbus-object"
type AttrOrigin ServerDbusObjectPropertyInfo = Server
attrGet _ = getServerDbusObject
attrSet _ = undefined
attrConstruct _ = constructServerDbusObject
attrClear _ = undefined
#endif
getServerRootNode :: (MonadIO m, IsServer o) => o -> m (Maybe Dbusmenu.Menuitem.Menuitem)
getServerRootNode obj = liftIO $ B.Properties.getObjectPropertyObject obj "root-node" Dbusmenu.Menuitem.Menuitem
setServerRootNode :: (MonadIO m, IsServer o, Dbusmenu.Menuitem.IsMenuitem a) => o -> a -> m ()
setServerRootNode obj val = liftIO $ B.Properties.setObjectPropertyObject obj "root-node" (Just val)
constructServerRootNode :: (IsServer o, Dbusmenu.Menuitem.IsMenuitem a) => a -> IO (GValueConstruct o)
constructServerRootNode val = B.Properties.constructObjectPropertyObject "root-node" (Just val)
clearServerRootNode :: (MonadIO m, IsServer o) => o -> m ()
clearServerRootNode obj = liftIO $ B.Properties.setObjectPropertyObject obj "root-node" (Nothing :: Maybe Dbusmenu.Menuitem.Menuitem)
#if ENABLE_OVERLOADING
data ServerRootNodePropertyInfo
instance AttrInfo ServerRootNodePropertyInfo where
type AttrAllowedOps ServerRootNodePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet, 'AttrClear]
type AttrSetTypeConstraint ServerRootNodePropertyInfo = Dbusmenu.Menuitem.IsMenuitem
type AttrBaseTypeConstraint ServerRootNodePropertyInfo = IsServer
type AttrGetType ServerRootNodePropertyInfo = (Maybe Dbusmenu.Menuitem.Menuitem)
type AttrLabel ServerRootNodePropertyInfo = "root-node"
type AttrOrigin ServerRootNodePropertyInfo = Server
attrGet _ = getServerRootNode
attrSet _ = setServerRootNode
attrConstruct _ = constructServerRootNode
attrClear _ = clearServerRootNode
#endif
getServerVersion :: (MonadIO m, IsServer o) => o -> m Word32
getServerVersion obj = liftIO $ B.Properties.getObjectPropertyUInt32 obj "version"
#if ENABLE_OVERLOADING
data ServerVersionPropertyInfo
instance AttrInfo ServerVersionPropertyInfo where
type AttrAllowedOps ServerVersionPropertyInfo = '[ 'AttrGet]
type AttrSetTypeConstraint ServerVersionPropertyInfo = (~) ()
type AttrBaseTypeConstraint ServerVersionPropertyInfo = IsServer
type AttrGetType ServerVersionPropertyInfo = Word32
type AttrLabel ServerVersionPropertyInfo = "version"
type AttrOrigin ServerVersionPropertyInfo = Server
attrGet _ = getServerVersion
attrSet _ = undefined
attrConstruct _ = undefined
attrClear _ = undefined
#endif
#if ENABLE_OVERLOADING
instance O.HasAttributeList Server
type instance O.AttributeList Server = ServerAttributeList
type ServerAttributeList = ('[ '("dbusObject", ServerDbusObjectPropertyInfo), '("rootNode", ServerRootNodePropertyInfo), '("version", ServerVersionPropertyInfo)] :: [(Symbol, *)])
#endif
#if ENABLE_OVERLOADING
serverDbusObject :: AttrLabelProxy "dbusObject"
serverDbusObject = AttrLabelProxy
serverRootNode :: AttrLabelProxy "rootNode"
serverRootNode = AttrLabelProxy
serverVersion :: AttrLabelProxy "version"
serverVersion = AttrLabelProxy
#endif
#if ENABLE_OVERLOADING
data ServerItemActivationRequestedSignalInfo
instance SignalInfo ServerItemActivationRequestedSignalInfo where
type HaskellCallbackType ServerItemActivationRequestedSignalInfo = ServerItemActivationRequestedCallback
connectSignal _ obj cb connectMode = do
let cb' = wrap_ServerItemActivationRequestedCallback cb
cb'' <- mk_ServerItemActivationRequestedCallback cb'
connectSignalFunPtr obj "item-activation-requested" cb'' connectMode
data ServerItemPropertyUpdatedSignalInfo
instance SignalInfo ServerItemPropertyUpdatedSignalInfo where
type HaskellCallbackType ServerItemPropertyUpdatedSignalInfo = ServerItemPropertyUpdatedCallback
connectSignal _ obj cb connectMode = do
let cb' = wrap_ServerItemPropertyUpdatedCallback cb
cb'' <- mk_ServerItemPropertyUpdatedCallback cb'
connectSignalFunPtr obj "item-property-updated" cb'' connectMode
data ServerItemUpdatedSignalInfo
instance SignalInfo ServerItemUpdatedSignalInfo where
type HaskellCallbackType ServerItemUpdatedSignalInfo = ServerItemUpdatedCallback
connectSignal _ obj cb connectMode = do
let cb' = wrap_ServerItemUpdatedCallback cb
cb'' <- mk_ServerItemUpdatedCallback cb'
connectSignalFunPtr obj "item-updated" cb'' connectMode
data ServerLayoutUpdatedSignalInfo
instance SignalInfo ServerLayoutUpdatedSignalInfo where
type HaskellCallbackType ServerLayoutUpdatedSignalInfo = ServerLayoutUpdatedCallback
connectSignal _ obj cb connectMode = do
let cb' = wrap_ServerLayoutUpdatedCallback cb
cb'' <- mk_ServerLayoutUpdatedCallback cb'
connectSignalFunPtr obj "layout-updated" cb'' connectMode
type instance O.SignalList Server = ServerSignalList
type ServerSignalList = ('[ '("itemActivationRequested", ServerItemActivationRequestedSignalInfo), '("itemPropertyUpdated", ServerItemPropertyUpdatedSignalInfo), '("itemUpdated", ServerItemUpdatedSignalInfo), '("layoutUpdated", ServerLayoutUpdatedSignalInfo), '("notify", GObject.Object.ObjectNotifySignalInfo)] :: [(Symbol, *)])
#endif
foreign import ccall "dbusmenu_server_new" dbusmenu_server_new ::
CString ->
IO (Ptr Server)
serverNew ::
(B.CallStack.HasCallStack, MonadIO m) =>
T.Text
-> m Server
serverNew object = liftIO $ do
object' <- textToCString object
result <- dbusmenu_server_new object'
checkUnexpectedReturnNULL "serverNew" result
result' <- (wrapObject Server) result
freeMem object'
return result'
#if ENABLE_OVERLOADING
#endif
foreign import ccall "dbusmenu_server_get_icon_paths" dbusmenu_server_get_icon_paths ::
Ptr Server ->
IO (Ptr CString)
serverGetIconPaths ::
(B.CallStack.HasCallStack, MonadIO m, IsServer a) =>
a
-> m [T.Text]
serverGetIconPaths server = liftIO $ do
server' <- unsafeManagedPtrCastPtr server
result <- dbusmenu_server_get_icon_paths server'
checkUnexpectedReturnNULL "serverGetIconPaths" result
result' <- unpackZeroTerminatedUTF8CArray result
touchManagedPtr server
return result'
#if ENABLE_OVERLOADING
data ServerGetIconPathsMethodInfo
instance (signature ~ (m [T.Text]), MonadIO m, IsServer a) => O.MethodInfo ServerGetIconPathsMethodInfo a signature where
overloadedMethod _ = serverGetIconPaths
#endif
foreign import ccall "dbusmenu_server_get_status" dbusmenu_server_get_status ::
Ptr Server ->
IO CUInt
serverGetStatus ::
(B.CallStack.HasCallStack, MonadIO m, IsServer a) =>
a
-> m Dbusmenu.Enums.Status
serverGetStatus server = liftIO $ do
server' <- unsafeManagedPtrCastPtr server
result <- dbusmenu_server_get_status server'
let result' = (toEnum . fromIntegral) result
touchManagedPtr server
return result'
#if ENABLE_OVERLOADING
data ServerGetStatusMethodInfo
instance (signature ~ (m Dbusmenu.Enums.Status), MonadIO m, IsServer a) => O.MethodInfo ServerGetStatusMethodInfo a signature where
overloadedMethod _ = serverGetStatus
#endif
foreign import ccall "dbusmenu_server_get_text_direction" dbusmenu_server_get_text_direction ::
Ptr Server ->
IO CUInt
serverGetTextDirection ::
(B.CallStack.HasCallStack, MonadIO m, IsServer a) =>
a
-> m Dbusmenu.Enums.TextDirection
serverGetTextDirection server = liftIO $ do
server' <- unsafeManagedPtrCastPtr server
result <- dbusmenu_server_get_text_direction server'
let result' = (toEnum . fromIntegral) result
touchManagedPtr server
return result'
#if ENABLE_OVERLOADING
data ServerGetTextDirectionMethodInfo
instance (signature ~ (m Dbusmenu.Enums.TextDirection), MonadIO m, IsServer a) => O.MethodInfo ServerGetTextDirectionMethodInfo a signature where
overloadedMethod _ = serverGetTextDirection
#endif
foreign import ccall "dbusmenu_server_set_icon_paths" dbusmenu_server_set_icon_paths ::
Ptr Server ->
Ptr CString ->
IO ()
serverSetIconPaths ::
(B.CallStack.HasCallStack, MonadIO m, IsServer a) =>
a
-> [T.Text]
-> m ()
serverSetIconPaths server iconPaths = liftIO $ do
server' <- unsafeManagedPtrCastPtr server
iconPaths' <- packZeroTerminatedUTF8CArray iconPaths
dbusmenu_server_set_icon_paths server' iconPaths'
touchManagedPtr server
mapZeroTerminatedCArray freeMem iconPaths'
freeMem iconPaths'
return ()
#if ENABLE_OVERLOADING
data ServerSetIconPathsMethodInfo
instance (signature ~ ([T.Text] -> m ()), MonadIO m, IsServer a) => O.MethodInfo ServerSetIconPathsMethodInfo a signature where
overloadedMethod _ = serverSetIconPaths
#endif
foreign import ccall "dbusmenu_server_set_root" dbusmenu_server_set_root ::
Ptr Server ->
Ptr Dbusmenu.Menuitem.Menuitem ->
IO ()
serverSetRoot ::
(B.CallStack.HasCallStack, MonadIO m, IsServer a, Dbusmenu.Menuitem.IsMenuitem b) =>
a
-> b
-> m ()
serverSetRoot self root = liftIO $ do
self' <- unsafeManagedPtrCastPtr self
root' <- unsafeManagedPtrCastPtr root
dbusmenu_server_set_root self' root'
touchManagedPtr self
touchManagedPtr root
return ()
#if ENABLE_OVERLOADING
data ServerSetRootMethodInfo
instance (signature ~ (b -> m ()), MonadIO m, IsServer a, Dbusmenu.Menuitem.IsMenuitem b) => O.MethodInfo ServerSetRootMethodInfo a signature where
overloadedMethod _ = serverSetRoot
#endif
foreign import ccall "dbusmenu_server_set_status" dbusmenu_server_set_status ::
Ptr Server ->
CUInt ->
IO ()
serverSetStatus ::
(B.CallStack.HasCallStack, MonadIO m, IsServer a) =>
a
-> Dbusmenu.Enums.Status
-> m ()
serverSetStatus server status = liftIO $ do
server' <- unsafeManagedPtrCastPtr server
let status' = (fromIntegral . fromEnum) status
dbusmenu_server_set_status server' status'
touchManagedPtr server
return ()
#if ENABLE_OVERLOADING
data ServerSetStatusMethodInfo
instance (signature ~ (Dbusmenu.Enums.Status -> m ()), MonadIO m, IsServer a) => O.MethodInfo ServerSetStatusMethodInfo a signature where
overloadedMethod _ = serverSetStatus
#endif
foreign import ccall "dbusmenu_server_set_text_direction" dbusmenu_server_set_text_direction ::
Ptr Server ->
CUInt ->
IO ()
serverSetTextDirection ::
(B.CallStack.HasCallStack, MonadIO m, IsServer a) =>
a
-> Dbusmenu.Enums.TextDirection
-> m ()
serverSetTextDirection server dir = liftIO $ do
server' <- unsafeManagedPtrCastPtr server
let dir' = (fromIntegral . fromEnum) dir
dbusmenu_server_set_text_direction server' dir'
touchManagedPtr server
return ()
#if ENABLE_OVERLOADING
data ServerSetTextDirectionMethodInfo
instance (signature ~ (Dbusmenu.Enums.TextDirection -> m ()), MonadIO m, IsServer a) => O.MethodInfo ServerSetTextDirectionMethodInfo a signature where
overloadedMethod _ = serverSetTextDirection
#endif