{-# LANGUAGE TypeApplications #-}
#if !defined(__HADDOCK_VERSION__)
#define ENABLE_OVERLOADING
#endif
module GI.Dbusmenu.Objects.Server
(
Server(..) ,
IsServer ,
toServer ,
#if defined(ENABLE_OVERLOADING)
ResolveServerMethod ,
#endif
#if defined(ENABLE_OVERLOADING)
ServerGetIconPathsMethodInfo ,
#endif
serverGetIconPaths ,
#if defined(ENABLE_OVERLOADING)
ServerGetStatusMethodInfo ,
#endif
serverGetStatus ,
#if defined(ENABLE_OVERLOADING)
ServerGetTextDirectionMethodInfo ,
#endif
serverGetTextDirection ,
serverNew ,
#if defined(ENABLE_OVERLOADING)
ServerSetIconPathsMethodInfo ,
#endif
serverSetIconPaths ,
#if defined(ENABLE_OVERLOADING)
ServerSetRootMethodInfo ,
#endif
serverSetRoot ,
#if defined(ENABLE_OVERLOADING)
ServerSetStatusMethodInfo ,
#endif
serverSetStatus ,
#if defined(ENABLE_OVERLOADING)
ServerSetTextDirectionMethodInfo ,
#endif
serverSetTextDirection ,
#if defined(ENABLE_OVERLOADING)
ServerDbusObjectPropertyInfo ,
#endif
constructServerDbusObject ,
getServerDbusObject ,
#if defined(ENABLE_OVERLOADING)
serverDbusObject ,
#endif
#if defined(ENABLE_OVERLOADING)
ServerRootNodePropertyInfo ,
#endif
clearServerRootNode ,
constructServerRootNode ,
getServerRootNode ,
#if defined(ENABLE_OVERLOADING)
serverRootNode ,
#endif
setServerRootNode ,
#if defined(ENABLE_OVERLOADING)
ServerVersionPropertyInfo ,
#endif
getServerVersion ,
#if defined(ENABLE_OVERLOADING)
serverVersion ,
#endif
C_ServerItemActivationRequestedCallback ,
ServerItemActivationRequestedCallback ,
#if defined(ENABLE_OVERLOADING)
ServerItemActivationRequestedSignalInfo ,
#endif
afterServerItemActivationRequested ,
genClosure_ServerItemActivationRequested,
mk_ServerItemActivationRequestedCallback,
noServerItemActivationRequestedCallback ,
onServerItemActivationRequested ,
wrap_ServerItemActivationRequestedCallback,
C_ServerItemPropertyUpdatedCallback ,
ServerItemPropertyUpdatedCallback ,
#if defined(ENABLE_OVERLOADING)
ServerItemPropertyUpdatedSignalInfo ,
#endif
afterServerItemPropertyUpdated ,
genClosure_ServerItemPropertyUpdated ,
mk_ServerItemPropertyUpdatedCallback ,
noServerItemPropertyUpdatedCallback ,
onServerItemPropertyUpdated ,
wrap_ServerItemPropertyUpdatedCallback ,
C_ServerItemUpdatedCallback ,
ServerItemUpdatedCallback ,
#if defined(ENABLE_OVERLOADING)
ServerItemUpdatedSignalInfo ,
#endif
afterServerItemUpdated ,
genClosure_ServerItemUpdated ,
mk_ServerItemUpdatedCallback ,
noServerItemUpdatedCallback ,
onServerItemUpdated ,
wrap_ServerItemUpdatedCallback ,
C_ServerLayoutUpdatedCallback ,
ServerLayoutUpdatedCallback ,
#if defined(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.BasicTypes as B.Types
import qualified Data.GI.Base.ManagedPtr as B.ManagedPtr
import qualified Data.GI.Base.GArray as B.GArray
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 Control.Monad.IO.Class as MIO
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 (SP.ManagedPtr Server)
deriving (Server -> Server -> Bool
(Server -> Server -> Bool)
-> (Server -> Server -> Bool) -> Eq Server
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: Server -> Server -> Bool
$c/= :: Server -> Server -> Bool
== :: Server -> Server -> Bool
$c== :: Server -> Server -> Bool
Eq)
instance SP.ManagedPtrNewtype Server where
toManagedPtr :: Server -> ManagedPtr Server
toManagedPtr (Server p :: ManagedPtr Server
p) = ManagedPtr Server
p
foreign import ccall "dbusmenu_server_get_type"
:: IO B.Types.GType
instance B.Types.TypedObject Server where
glibType :: IO GType
glibType = IO GType
c_dbusmenu_server_get_type
instance B.Types.GObject Server
instance B.GValue.IsGValue Server where
toGValue :: Server -> IO GValue
toGValue o :: Server
o = do
GType
gtype <- IO GType
c_dbusmenu_server_get_type
Server -> (Ptr Server -> IO GValue) -> IO GValue
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
B.ManagedPtr.withManagedPtr Server
o (GType -> (GValue -> Ptr Server -> IO ()) -> Ptr Server -> IO GValue
forall a. GType -> (GValue -> a -> IO ()) -> a -> IO GValue
B.GValue.buildGValue GType
gtype GValue -> Ptr Server -> IO ()
forall a. GObject a => GValue -> Ptr a -> IO ()
B.GValue.set_object)
fromGValue :: GValue -> IO Server
fromGValue gv :: GValue
gv = do
Ptr Server
ptr <- GValue -> IO (Ptr Server)
forall b. GObject b => GValue -> IO (Ptr b)
B.GValue.get_object GValue
gv :: IO (Ptr Server)
(ManagedPtr Server -> Server) -> Ptr Server -> IO Server
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
B.ManagedPtr.newObject ManagedPtr Server -> Server
Server Ptr Server
ptr
class (SP.GObject o, O.IsDescendantOf Server o) => IsServer o
instance (SP.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 :: o -> m Server
toServer = IO Server -> m Server
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Server -> m Server) -> (o -> IO Server) -> o -> m Server
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (ManagedPtr Server -> Server) -> o -> IO Server
forall o o'.
(HasCallStack, ManagedPtrNewtype o, TypedObject o,
ManagedPtrNewtype o', TypedObject o') =>
(ManagedPtr o' -> o') -> o -> IO o'
unsafeCastTo ManagedPtr Server -> Server
Server
#if defined(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 @info
#else
fromLabel _ = O.overloadedMethod @info
#endif
#endif
type ServerItemActivationRequestedCallback =
Int32
-> Word32
-> IO ()
noServerItemActivationRequestedCallback :: Maybe ServerItemActivationRequestedCallback
noServerItemActivationRequestedCallback :: Maybe ServerItemActivationRequestedCallback
noServerItemActivationRequestedCallback = Maybe ServerItemActivationRequestedCallback
forall a. Maybe a
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 :: ServerItemActivationRequestedCallback
-> m (GClosure C_ServerItemActivationRequestedCallback)
genClosure_ServerItemActivationRequested cb :: ServerItemActivationRequestedCallback
cb = IO (GClosure C_ServerItemActivationRequestedCallback)
-> m (GClosure C_ServerItemActivationRequestedCallback)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (GClosure C_ServerItemActivationRequestedCallback)
-> m (GClosure C_ServerItemActivationRequestedCallback))
-> IO (GClosure C_ServerItemActivationRequestedCallback)
-> m (GClosure C_ServerItemActivationRequestedCallback)
forall a b. (a -> b) -> a -> b
$ do
let cb' :: C_ServerItemActivationRequestedCallback
cb' = ServerItemActivationRequestedCallback
-> C_ServerItemActivationRequestedCallback
wrap_ServerItemActivationRequestedCallback ServerItemActivationRequestedCallback
cb
C_ServerItemActivationRequestedCallback
-> IO (FunPtr C_ServerItemActivationRequestedCallback)
mk_ServerItemActivationRequestedCallback C_ServerItemActivationRequestedCallback
cb' IO (FunPtr C_ServerItemActivationRequestedCallback)
-> (FunPtr C_ServerItemActivationRequestedCallback
-> IO (GClosure C_ServerItemActivationRequestedCallback))
-> IO (GClosure C_ServerItemActivationRequestedCallback)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= FunPtr C_ServerItemActivationRequestedCallback
-> IO (GClosure C_ServerItemActivationRequestedCallback)
forall (m :: * -> *) a. MonadIO m => FunPtr a -> m (GClosure a)
B.GClosure.newGClosure
wrap_ServerItemActivationRequestedCallback ::
ServerItemActivationRequestedCallback ->
C_ServerItemActivationRequestedCallback
wrap_ServerItemActivationRequestedCallback :: ServerItemActivationRequestedCallback
-> C_ServerItemActivationRequestedCallback
wrap_ServerItemActivationRequestedCallback _cb :: ServerItemActivationRequestedCallback
_cb _ arg1 :: Int32
arg1 arg2 :: Word32
arg2 _ = do
ServerItemActivationRequestedCallback
_cb Int32
arg1 Word32
arg2
onServerItemActivationRequested :: (IsServer a, MonadIO m) => a -> ServerItemActivationRequestedCallback -> m SignalHandlerId
onServerItemActivationRequested :: a -> ServerItemActivationRequestedCallback -> m SignalHandlerId
onServerItemActivationRequested obj :: a
obj cb :: ServerItemActivationRequestedCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let cb' :: C_ServerItemActivationRequestedCallback
cb' = ServerItemActivationRequestedCallback
-> C_ServerItemActivationRequestedCallback
wrap_ServerItemActivationRequestedCallback ServerItemActivationRequestedCallback
cb
FunPtr C_ServerItemActivationRequestedCallback
cb'' <- C_ServerItemActivationRequestedCallback
-> IO (FunPtr C_ServerItemActivationRequestedCallback)
mk_ServerItemActivationRequestedCallback C_ServerItemActivationRequestedCallback
cb'
a
-> Text
-> FunPtr C_ServerItemActivationRequestedCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj "item-activation-requested" FunPtr C_ServerItemActivationRequestedCallback
cb'' SignalConnectMode
SignalConnectBefore Maybe Text
forall a. Maybe a
Nothing
afterServerItemActivationRequested :: (IsServer a, MonadIO m) => a -> ServerItemActivationRequestedCallback -> m SignalHandlerId
afterServerItemActivationRequested :: a -> ServerItemActivationRequestedCallback -> m SignalHandlerId
afterServerItemActivationRequested obj :: a
obj cb :: ServerItemActivationRequestedCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let cb' :: C_ServerItemActivationRequestedCallback
cb' = ServerItemActivationRequestedCallback
-> C_ServerItemActivationRequestedCallback
wrap_ServerItemActivationRequestedCallback ServerItemActivationRequestedCallback
cb
FunPtr C_ServerItemActivationRequestedCallback
cb'' <- C_ServerItemActivationRequestedCallback
-> IO (FunPtr C_ServerItemActivationRequestedCallback)
mk_ServerItemActivationRequestedCallback C_ServerItemActivationRequestedCallback
cb'
a
-> Text
-> FunPtr C_ServerItemActivationRequestedCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj "item-activation-requested" FunPtr C_ServerItemActivationRequestedCallback
cb'' SignalConnectMode
SignalConnectAfter Maybe Text
forall a. Maybe a
Nothing
#if defined(ENABLE_OVERLOADING)
data ServerItemActivationRequestedSignalInfo
instance SignalInfo ServerItemActivationRequestedSignalInfo where
type HaskellCallbackType ServerItemActivationRequestedSignalInfo = ServerItemActivationRequestedCallback
connectSignal obj cb connectMode detail = do
let cb' = wrap_ServerItemActivationRequestedCallback cb
cb'' <- mk_ServerItemActivationRequestedCallback cb'
connectSignalFunPtr obj "item-activation-requested" cb'' connectMode detail
#endif
type ServerItemPropertyUpdatedCallback =
Int32
-> T.Text
-> GVariant
-> IO ()
noServerItemPropertyUpdatedCallback :: Maybe ServerItemPropertyUpdatedCallback
noServerItemPropertyUpdatedCallback :: Maybe ServerItemPropertyUpdatedCallback
noServerItemPropertyUpdatedCallback = Maybe ServerItemPropertyUpdatedCallback
forall a. Maybe a
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 :: ServerItemPropertyUpdatedCallback
-> m (GClosure C_ServerItemPropertyUpdatedCallback)
genClosure_ServerItemPropertyUpdated cb :: ServerItemPropertyUpdatedCallback
cb = IO (GClosure C_ServerItemPropertyUpdatedCallback)
-> m (GClosure C_ServerItemPropertyUpdatedCallback)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (GClosure C_ServerItemPropertyUpdatedCallback)
-> m (GClosure C_ServerItemPropertyUpdatedCallback))
-> IO (GClosure C_ServerItemPropertyUpdatedCallback)
-> m (GClosure C_ServerItemPropertyUpdatedCallback)
forall a b. (a -> b) -> a -> b
$ do
let cb' :: C_ServerItemPropertyUpdatedCallback
cb' = ServerItemPropertyUpdatedCallback
-> C_ServerItemPropertyUpdatedCallback
wrap_ServerItemPropertyUpdatedCallback ServerItemPropertyUpdatedCallback
cb
C_ServerItemPropertyUpdatedCallback
-> IO (FunPtr C_ServerItemPropertyUpdatedCallback)
mk_ServerItemPropertyUpdatedCallback C_ServerItemPropertyUpdatedCallback
cb' IO (FunPtr C_ServerItemPropertyUpdatedCallback)
-> (FunPtr C_ServerItemPropertyUpdatedCallback
-> IO (GClosure C_ServerItemPropertyUpdatedCallback))
-> IO (GClosure C_ServerItemPropertyUpdatedCallback)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= FunPtr C_ServerItemPropertyUpdatedCallback
-> IO (GClosure C_ServerItemPropertyUpdatedCallback)
forall (m :: * -> *) a. MonadIO m => FunPtr a -> m (GClosure a)
B.GClosure.newGClosure
wrap_ServerItemPropertyUpdatedCallback ::
ServerItemPropertyUpdatedCallback ->
C_ServerItemPropertyUpdatedCallback
wrap_ServerItemPropertyUpdatedCallback :: ServerItemPropertyUpdatedCallback
-> C_ServerItemPropertyUpdatedCallback
wrap_ServerItemPropertyUpdatedCallback _cb :: ServerItemPropertyUpdatedCallback
_cb _ object :: Int32
object p0 :: CString
p0 p1 :: Ptr GVariant
p1 _ = do
Text
p0' <- HasCallStack => CString -> IO Text
CString -> IO Text
cstringToText CString
p0
GVariant
p1' <- Ptr GVariant -> IO GVariant
B.GVariant.newGVariantFromPtr Ptr GVariant
p1
ServerItemPropertyUpdatedCallback
_cb Int32
object Text
p0' GVariant
p1'
onServerItemPropertyUpdated :: (IsServer a, MonadIO m) => a -> ServerItemPropertyUpdatedCallback -> m SignalHandlerId
onServerItemPropertyUpdated :: a -> ServerItemPropertyUpdatedCallback -> m SignalHandlerId
onServerItemPropertyUpdated obj :: a
obj cb :: ServerItemPropertyUpdatedCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let cb' :: C_ServerItemPropertyUpdatedCallback
cb' = ServerItemPropertyUpdatedCallback
-> C_ServerItemPropertyUpdatedCallback
wrap_ServerItemPropertyUpdatedCallback ServerItemPropertyUpdatedCallback
cb
FunPtr C_ServerItemPropertyUpdatedCallback
cb'' <- C_ServerItemPropertyUpdatedCallback
-> IO (FunPtr C_ServerItemPropertyUpdatedCallback)
mk_ServerItemPropertyUpdatedCallback C_ServerItemPropertyUpdatedCallback
cb'
a
-> Text
-> FunPtr C_ServerItemPropertyUpdatedCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj "item-property-updated" FunPtr C_ServerItemPropertyUpdatedCallback
cb'' SignalConnectMode
SignalConnectBefore Maybe Text
forall a. Maybe a
Nothing
afterServerItemPropertyUpdated :: (IsServer a, MonadIO m) => a -> ServerItemPropertyUpdatedCallback -> m SignalHandlerId
afterServerItemPropertyUpdated :: a -> ServerItemPropertyUpdatedCallback -> m SignalHandlerId
afterServerItemPropertyUpdated obj :: a
obj cb :: ServerItemPropertyUpdatedCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let cb' :: C_ServerItemPropertyUpdatedCallback
cb' = ServerItemPropertyUpdatedCallback
-> C_ServerItemPropertyUpdatedCallback
wrap_ServerItemPropertyUpdatedCallback ServerItemPropertyUpdatedCallback
cb
FunPtr C_ServerItemPropertyUpdatedCallback
cb'' <- C_ServerItemPropertyUpdatedCallback
-> IO (FunPtr C_ServerItemPropertyUpdatedCallback)
mk_ServerItemPropertyUpdatedCallback C_ServerItemPropertyUpdatedCallback
cb'
a
-> Text
-> FunPtr C_ServerItemPropertyUpdatedCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj "item-property-updated" FunPtr C_ServerItemPropertyUpdatedCallback
cb'' SignalConnectMode
SignalConnectAfter Maybe Text
forall a. Maybe a
Nothing
#if defined(ENABLE_OVERLOADING)
data ServerItemPropertyUpdatedSignalInfo
instance SignalInfo ServerItemPropertyUpdatedSignalInfo where
type HaskellCallbackType ServerItemPropertyUpdatedSignalInfo = ServerItemPropertyUpdatedCallback
connectSignal obj cb connectMode detail = do
let cb' = wrap_ServerItemPropertyUpdatedCallback cb
cb'' <- mk_ServerItemPropertyUpdatedCallback cb'
connectSignalFunPtr obj "item-property-updated" cb'' connectMode detail
#endif
type ServerItemUpdatedCallback =
Int32
-> IO ()
noServerItemUpdatedCallback :: Maybe ServerItemUpdatedCallback
noServerItemUpdatedCallback :: Maybe ServerItemUpdatedCallback
noServerItemUpdatedCallback = Maybe ServerItemUpdatedCallback
forall a. Maybe a
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 :: ServerItemUpdatedCallback
-> m (GClosure C_ServerItemUpdatedCallback)
genClosure_ServerItemUpdated cb :: ServerItemUpdatedCallback
cb = IO (GClosure C_ServerItemUpdatedCallback)
-> m (GClosure C_ServerItemUpdatedCallback)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (GClosure C_ServerItemUpdatedCallback)
-> m (GClosure C_ServerItemUpdatedCallback))
-> IO (GClosure C_ServerItemUpdatedCallback)
-> m (GClosure C_ServerItemUpdatedCallback)
forall a b. (a -> b) -> a -> b
$ do
let cb' :: C_ServerItemUpdatedCallback
cb' = ServerItemUpdatedCallback -> C_ServerItemUpdatedCallback
wrap_ServerItemUpdatedCallback ServerItemUpdatedCallback
cb
C_ServerItemUpdatedCallback
-> IO (FunPtr C_ServerItemUpdatedCallback)
mk_ServerItemUpdatedCallback C_ServerItemUpdatedCallback
cb' IO (FunPtr C_ServerItemUpdatedCallback)
-> (FunPtr C_ServerItemUpdatedCallback
-> IO (GClosure C_ServerItemUpdatedCallback))
-> IO (GClosure C_ServerItemUpdatedCallback)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= FunPtr C_ServerItemUpdatedCallback
-> IO (GClosure C_ServerItemUpdatedCallback)
forall (m :: * -> *) a. MonadIO m => FunPtr a -> m (GClosure a)
B.GClosure.newGClosure
wrap_ServerItemUpdatedCallback ::
ServerItemUpdatedCallback ->
C_ServerItemUpdatedCallback
wrap_ServerItemUpdatedCallback :: ServerItemUpdatedCallback -> C_ServerItemUpdatedCallback
wrap_ServerItemUpdatedCallback _cb :: ServerItemUpdatedCallback
_cb _ object :: Int32
object _ = do
ServerItemUpdatedCallback
_cb Int32
object
onServerItemUpdated :: (IsServer a, MonadIO m) => a -> ServerItemUpdatedCallback -> m SignalHandlerId
onServerItemUpdated :: a -> ServerItemUpdatedCallback -> m SignalHandlerId
onServerItemUpdated obj :: a
obj cb :: ServerItemUpdatedCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let cb' :: C_ServerItemUpdatedCallback
cb' = ServerItemUpdatedCallback -> C_ServerItemUpdatedCallback
wrap_ServerItemUpdatedCallback ServerItemUpdatedCallback
cb
FunPtr C_ServerItemUpdatedCallback
cb'' <- C_ServerItemUpdatedCallback
-> IO (FunPtr C_ServerItemUpdatedCallback)
mk_ServerItemUpdatedCallback C_ServerItemUpdatedCallback
cb'
a
-> Text
-> FunPtr C_ServerItemUpdatedCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj "item-updated" FunPtr C_ServerItemUpdatedCallback
cb'' SignalConnectMode
SignalConnectBefore Maybe Text
forall a. Maybe a
Nothing
afterServerItemUpdated :: (IsServer a, MonadIO m) => a -> ServerItemUpdatedCallback -> m SignalHandlerId
afterServerItemUpdated :: a -> ServerItemUpdatedCallback -> m SignalHandlerId
afterServerItemUpdated obj :: a
obj cb :: ServerItemUpdatedCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let cb' :: C_ServerItemUpdatedCallback
cb' = ServerItemUpdatedCallback -> C_ServerItemUpdatedCallback
wrap_ServerItemUpdatedCallback ServerItemUpdatedCallback
cb
FunPtr C_ServerItemUpdatedCallback
cb'' <- C_ServerItemUpdatedCallback
-> IO (FunPtr C_ServerItemUpdatedCallback)
mk_ServerItemUpdatedCallback C_ServerItemUpdatedCallback
cb'
a
-> Text
-> FunPtr C_ServerItemUpdatedCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj "item-updated" FunPtr C_ServerItemUpdatedCallback
cb'' SignalConnectMode
SignalConnectAfter Maybe Text
forall a. Maybe a
Nothing
#if defined(ENABLE_OVERLOADING)
data ServerItemUpdatedSignalInfo
instance SignalInfo ServerItemUpdatedSignalInfo where
type HaskellCallbackType ServerItemUpdatedSignalInfo = ServerItemUpdatedCallback
connectSignal obj cb connectMode detail = do
let cb' = wrap_ServerItemUpdatedCallback cb
cb'' <- mk_ServerItemUpdatedCallback cb'
connectSignalFunPtr obj "item-updated" cb'' connectMode detail
#endif
type ServerLayoutUpdatedCallback =
Word32
-> Int32
-> IO ()
noServerLayoutUpdatedCallback :: Maybe ServerLayoutUpdatedCallback
noServerLayoutUpdatedCallback :: Maybe ServerLayoutUpdatedCallback
noServerLayoutUpdatedCallback = Maybe ServerLayoutUpdatedCallback
forall a. Maybe a
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 :: ServerLayoutUpdatedCallback
-> m (GClosure C_ServerLayoutUpdatedCallback)
genClosure_ServerLayoutUpdated cb :: ServerLayoutUpdatedCallback
cb = IO (GClosure C_ServerLayoutUpdatedCallback)
-> m (GClosure C_ServerLayoutUpdatedCallback)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (GClosure C_ServerLayoutUpdatedCallback)
-> m (GClosure C_ServerLayoutUpdatedCallback))
-> IO (GClosure C_ServerLayoutUpdatedCallback)
-> m (GClosure C_ServerLayoutUpdatedCallback)
forall a b. (a -> b) -> a -> b
$ do
let cb' :: C_ServerLayoutUpdatedCallback
cb' = ServerLayoutUpdatedCallback -> C_ServerLayoutUpdatedCallback
wrap_ServerLayoutUpdatedCallback ServerLayoutUpdatedCallback
cb
C_ServerLayoutUpdatedCallback
-> IO (FunPtr C_ServerLayoutUpdatedCallback)
mk_ServerLayoutUpdatedCallback C_ServerLayoutUpdatedCallback
cb' IO (FunPtr C_ServerLayoutUpdatedCallback)
-> (FunPtr C_ServerLayoutUpdatedCallback
-> IO (GClosure C_ServerLayoutUpdatedCallback))
-> IO (GClosure C_ServerLayoutUpdatedCallback)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= FunPtr C_ServerLayoutUpdatedCallback
-> IO (GClosure C_ServerLayoutUpdatedCallback)
forall (m :: * -> *) a. MonadIO m => FunPtr a -> m (GClosure a)
B.GClosure.newGClosure
wrap_ServerLayoutUpdatedCallback ::
ServerLayoutUpdatedCallback ->
C_ServerLayoutUpdatedCallback
wrap_ServerLayoutUpdatedCallback :: ServerLayoutUpdatedCallback -> C_ServerLayoutUpdatedCallback
wrap_ServerLayoutUpdatedCallback _cb :: ServerLayoutUpdatedCallback
_cb _ arg1 :: Word32
arg1 arg2 :: Int32
arg2 _ = do
ServerLayoutUpdatedCallback
_cb Word32
arg1 Int32
arg2
onServerLayoutUpdated :: (IsServer a, MonadIO m) => a -> ServerLayoutUpdatedCallback -> m SignalHandlerId
onServerLayoutUpdated :: a -> ServerLayoutUpdatedCallback -> m SignalHandlerId
onServerLayoutUpdated obj :: a
obj cb :: ServerLayoutUpdatedCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let cb' :: C_ServerLayoutUpdatedCallback
cb' = ServerLayoutUpdatedCallback -> C_ServerLayoutUpdatedCallback
wrap_ServerLayoutUpdatedCallback ServerLayoutUpdatedCallback
cb
FunPtr C_ServerLayoutUpdatedCallback
cb'' <- C_ServerLayoutUpdatedCallback
-> IO (FunPtr C_ServerLayoutUpdatedCallback)
mk_ServerLayoutUpdatedCallback C_ServerLayoutUpdatedCallback
cb'
a
-> Text
-> FunPtr C_ServerLayoutUpdatedCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj "layout-updated" FunPtr C_ServerLayoutUpdatedCallback
cb'' SignalConnectMode
SignalConnectBefore Maybe Text
forall a. Maybe a
Nothing
afterServerLayoutUpdated :: (IsServer a, MonadIO m) => a -> ServerLayoutUpdatedCallback -> m SignalHandlerId
afterServerLayoutUpdated :: a -> ServerLayoutUpdatedCallback -> m SignalHandlerId
afterServerLayoutUpdated obj :: a
obj cb :: ServerLayoutUpdatedCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let cb' :: C_ServerLayoutUpdatedCallback
cb' = ServerLayoutUpdatedCallback -> C_ServerLayoutUpdatedCallback
wrap_ServerLayoutUpdatedCallback ServerLayoutUpdatedCallback
cb
FunPtr C_ServerLayoutUpdatedCallback
cb'' <- C_ServerLayoutUpdatedCallback
-> IO (FunPtr C_ServerLayoutUpdatedCallback)
mk_ServerLayoutUpdatedCallback C_ServerLayoutUpdatedCallback
cb'
a
-> Text
-> FunPtr C_ServerLayoutUpdatedCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj "layout-updated" FunPtr C_ServerLayoutUpdatedCallback
cb'' SignalConnectMode
SignalConnectAfter Maybe Text
forall a. Maybe a
Nothing
#if defined(ENABLE_OVERLOADING)
data ServerLayoutUpdatedSignalInfo
instance SignalInfo ServerLayoutUpdatedSignalInfo where
type HaskellCallbackType ServerLayoutUpdatedSignalInfo = ServerLayoutUpdatedCallback
connectSignal obj cb connectMode detail = do
let cb' = wrap_ServerLayoutUpdatedCallback cb
cb'' <- mk_ServerLayoutUpdatedCallback cb'
connectSignalFunPtr obj "layout-updated" cb'' connectMode detail
#endif
getServerDbusObject :: (MonadIO m, IsServer o) => o -> m (Maybe T.Text)
getServerDbusObject :: o -> m (Maybe Text)
getServerDbusObject obj :: o
obj = IO (Maybe Text) -> m (Maybe Text)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (Maybe Text) -> m (Maybe Text))
-> IO (Maybe Text) -> m (Maybe Text)
forall a b. (a -> b) -> a -> b
$ o -> String -> IO (Maybe Text)
forall a. GObject a => a -> String -> IO (Maybe Text)
B.Properties.getObjectPropertyString o
obj "dbus-object"
constructServerDbusObject :: (IsServer o, MIO.MonadIO m) => T.Text -> m (GValueConstruct o)
constructServerDbusObject :: Text -> m (GValueConstruct o)
constructServerDbusObject val :: Text
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Maybe Text -> IO (GValueConstruct o)
forall o. String -> Maybe Text -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyString "dbus-object" (Text -> Maybe Text
forall a. a -> Maybe a
P.Just Text
val)
#if defined(ENABLE_OVERLOADING)
data ServerDbusObjectPropertyInfo
instance AttrInfo ServerDbusObjectPropertyInfo where
type AttrAllowedOps ServerDbusObjectPropertyInfo = '[ 'AttrConstruct, 'AttrGet, 'AttrClear]
type AttrBaseTypeConstraint ServerDbusObjectPropertyInfo = IsServer
type AttrSetTypeConstraint ServerDbusObjectPropertyInfo = (~) T.Text
type AttrTransferTypeConstraint ServerDbusObjectPropertyInfo = (~) T.Text
type AttrTransferType ServerDbusObjectPropertyInfo = T.Text
type AttrGetType ServerDbusObjectPropertyInfo = (Maybe T.Text)
type AttrLabel ServerDbusObjectPropertyInfo = "dbus-object"
type AttrOrigin ServerDbusObjectPropertyInfo = Server
attrGet = getServerDbusObject
attrSet = undefined
attrTransfer _ v = do
return v
attrConstruct = constructServerDbusObject
attrClear = undefined
#endif
getServerRootNode :: (MonadIO m, IsServer o) => o -> m (Maybe Dbusmenu.Menuitem.Menuitem)
getServerRootNode :: o -> m (Maybe Menuitem)
getServerRootNode obj :: o
obj = IO (Maybe Menuitem) -> m (Maybe Menuitem)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (Maybe Menuitem) -> m (Maybe Menuitem))
-> IO (Maybe Menuitem) -> m (Maybe Menuitem)
forall a b. (a -> b) -> a -> b
$ o
-> String
-> (ManagedPtr Menuitem -> Menuitem)
-> IO (Maybe Menuitem)
forall a b.
(GObject a, GObject b) =>
a -> String -> (ManagedPtr b -> b) -> IO (Maybe b)
B.Properties.getObjectPropertyObject o
obj "root-node" ManagedPtr Menuitem -> Menuitem
Dbusmenu.Menuitem.Menuitem
setServerRootNode :: (MonadIO m, IsServer o, Dbusmenu.Menuitem.IsMenuitem a) => o -> a -> m ()
setServerRootNode :: o -> a -> m ()
setServerRootNode obj :: o
obj val :: a
val = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ o -> String -> Maybe a -> IO ()
forall a b.
(GObject a, GObject b) =>
a -> String -> Maybe b -> IO ()
B.Properties.setObjectPropertyObject o
obj "root-node" (a -> Maybe a
forall a. a -> Maybe a
Just a
val)
constructServerRootNode :: (IsServer o, MIO.MonadIO m, Dbusmenu.Menuitem.IsMenuitem a) => a -> m (GValueConstruct o)
constructServerRootNode :: a -> m (GValueConstruct o)
constructServerRootNode val :: a
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Maybe a -> IO (GValueConstruct o)
forall a o.
GObject a =>
String -> Maybe a -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyObject "root-node" (a -> Maybe a
forall a. a -> Maybe a
P.Just a
val)
clearServerRootNode :: (MonadIO m, IsServer o) => o -> m ()
clearServerRootNode :: o -> m ()
clearServerRootNode obj :: o
obj = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ o -> String -> Maybe Menuitem -> IO ()
forall a b.
(GObject a, GObject b) =>
a -> String -> Maybe b -> IO ()
B.Properties.setObjectPropertyObject o
obj "root-node" (Maybe Menuitem
forall a. Maybe a
Nothing :: Maybe Dbusmenu.Menuitem.Menuitem)
#if defined(ENABLE_OVERLOADING)
data ServerRootNodePropertyInfo
instance AttrInfo ServerRootNodePropertyInfo where
type AttrAllowedOps ServerRootNodePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet, 'AttrClear]
type AttrBaseTypeConstraint ServerRootNodePropertyInfo = IsServer
type AttrSetTypeConstraint ServerRootNodePropertyInfo = Dbusmenu.Menuitem.IsMenuitem
type AttrTransferTypeConstraint ServerRootNodePropertyInfo = Dbusmenu.Menuitem.IsMenuitem
type AttrTransferType ServerRootNodePropertyInfo = Dbusmenu.Menuitem.Menuitem
type AttrGetType ServerRootNodePropertyInfo = (Maybe Dbusmenu.Menuitem.Menuitem)
type AttrLabel ServerRootNodePropertyInfo = "root-node"
type AttrOrigin ServerRootNodePropertyInfo = Server
attrGet = getServerRootNode
attrSet = setServerRootNode
attrTransfer _ v = do
unsafeCastTo Dbusmenu.Menuitem.Menuitem v
attrConstruct = constructServerRootNode
attrClear = clearServerRootNode
#endif
getServerVersion :: (MonadIO m, IsServer o) => o -> m Word32
getServerVersion :: o -> m Word32
getServerVersion obj :: o
obj = IO Word32 -> m Word32
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Word32 -> m Word32) -> IO Word32 -> m Word32
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Word32
forall a. GObject a => a -> String -> IO Word32
B.Properties.getObjectPropertyUInt32 o
obj "version"
#if defined(ENABLE_OVERLOADING)
data ServerVersionPropertyInfo
instance AttrInfo ServerVersionPropertyInfo where
type AttrAllowedOps ServerVersionPropertyInfo = '[ 'AttrGet]
type AttrBaseTypeConstraint ServerVersionPropertyInfo = IsServer
type AttrSetTypeConstraint ServerVersionPropertyInfo = (~) ()
type AttrTransferTypeConstraint ServerVersionPropertyInfo = (~) ()
type AttrTransferType ServerVersionPropertyInfo = ()
type AttrGetType ServerVersionPropertyInfo = Word32
type AttrLabel ServerVersionPropertyInfo = "version"
type AttrOrigin ServerVersionPropertyInfo = Server
attrGet = getServerVersion
attrSet = undefined
attrTransfer _ = undefined
attrConstruct = undefined
attrClear = undefined
#endif
#if defined(ENABLE_OVERLOADING)
instance O.HasAttributeList Server
type instance O.AttributeList Server = ServerAttributeList
type ServerAttributeList = ('[ '("dbusObject", ServerDbusObjectPropertyInfo), '("rootNode", ServerRootNodePropertyInfo), '("version", ServerVersionPropertyInfo)] :: [(Symbol, *)])
#endif
#if defined(ENABLE_OVERLOADING)
serverDbusObject :: AttrLabelProxy "dbusObject"
serverDbusObject = AttrLabelProxy
serverRootNode :: AttrLabelProxy "rootNode"
serverRootNode = AttrLabelProxy
serverVersion :: AttrLabelProxy "version"
serverVersion = AttrLabelProxy
#endif
#if defined(ENABLE_OVERLOADING)
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" ::
CString ->
IO (Ptr Server)
serverNew ::
(B.CallStack.HasCallStack, MonadIO m) =>
T.Text
-> m Server
serverNew :: Text -> m Server
serverNew object :: Text
object = IO Server -> m Server
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Server -> m Server) -> IO Server -> m Server
forall a b. (a -> b) -> a -> b
$ do
CString
object' <- Text -> IO CString
textToCString Text
object
Ptr Server
result <- CString -> IO (Ptr Server)
dbusmenu_server_new CString
object'
Text -> Ptr Server -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL "serverNew" Ptr Server
result
Server
result' <- ((ManagedPtr Server -> Server) -> Ptr Server -> IO Server
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
wrapObject ManagedPtr Server -> Server
Server) Ptr Server
result
CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
object'
Server -> IO Server
forall (m :: * -> *) a. Monad m => a -> m a
return Server
result'
#if defined(ENABLE_OVERLOADING)
#endif
foreign import ccall "dbusmenu_server_get_icon_paths" ::
Ptr Server ->
IO (Ptr CString)
serverGetIconPaths ::
(B.CallStack.HasCallStack, MonadIO m, IsServer a) =>
a
-> m [T.Text]
serverGetIconPaths :: a -> m [Text]
serverGetIconPaths server :: a
server = IO [Text] -> m [Text]
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO [Text] -> m [Text]) -> IO [Text] -> m [Text]
forall a b. (a -> b) -> a -> b
$ do
Ptr Server
server' <- a -> IO (Ptr Server)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
server
Ptr CString
result <- Ptr Server -> IO (Ptr CString)
dbusmenu_server_get_icon_paths Ptr Server
server'
Text -> Ptr CString -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL "serverGetIconPaths" Ptr CString
result
[Text]
result' <- HasCallStack => Ptr CString -> IO [Text]
Ptr CString -> IO [Text]
unpackZeroTerminatedUTF8CArray Ptr CString
result
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
server
[Text] -> IO [Text]
forall (m :: * -> *) a. Monad m => a -> m a
return [Text]
result'
#if defined(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" ::
Ptr Server ->
IO CUInt
serverGetStatus ::
(B.CallStack.HasCallStack, MonadIO m, IsServer a) =>
a
-> m Dbusmenu.Enums.Status
serverGetStatus :: a -> m Status
serverGetStatus server :: a
server = IO Status -> m Status
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Status -> m Status) -> IO Status -> m Status
forall a b. (a -> b) -> a -> b
$ do
Ptr Server
server' <- a -> IO (Ptr Server)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
server
CUInt
result <- Ptr Server -> IO CUInt
dbusmenu_server_get_status Ptr Server
server'
let result' :: Status
result' = (Int -> Status
forall a. Enum a => Int -> a
toEnum (Int -> Status) -> (CUInt -> Int) -> CUInt -> Status
forall b c a. (b -> c) -> (a -> b) -> a -> c
. CUInt -> Int
forall a b. (Integral a, Num b) => a -> b
fromIntegral) CUInt
result
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
server
Status -> IO Status
forall (m :: * -> *) a. Monad m => a -> m a
return Status
result'
#if defined(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" ::
Ptr Server ->
IO CUInt
serverGetTextDirection ::
(B.CallStack.HasCallStack, MonadIO m, IsServer a) =>
a
-> m Dbusmenu.Enums.TextDirection
serverGetTextDirection :: a -> m TextDirection
serverGetTextDirection server :: a
server = IO TextDirection -> m TextDirection
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO TextDirection -> m TextDirection)
-> IO TextDirection -> m TextDirection
forall a b. (a -> b) -> a -> b
$ do
Ptr Server
server' <- a -> IO (Ptr Server)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
server
CUInt
result <- Ptr Server -> IO CUInt
dbusmenu_server_get_text_direction Ptr Server
server'
let result' :: TextDirection
result' = (Int -> TextDirection
forall a. Enum a => Int -> a
toEnum (Int -> TextDirection) -> (CUInt -> Int) -> CUInt -> TextDirection
forall b c a. (b -> c) -> (a -> b) -> a -> c
. CUInt -> Int
forall a b. (Integral a, Num b) => a -> b
fromIntegral) CUInt
result
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
server
TextDirection -> IO TextDirection
forall (m :: * -> *) a. Monad m => a -> m a
return TextDirection
result'
#if defined(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" ::
Ptr Server ->
Ptr CString ->
IO ()
serverSetIconPaths ::
(B.CallStack.HasCallStack, MonadIO m, IsServer a) =>
a
-> [T.Text]
-> m ()
serverSetIconPaths :: a -> [Text] -> m ()
serverSetIconPaths server :: a
server iconPaths :: [Text]
iconPaths = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
Ptr Server
server' <- a -> IO (Ptr Server)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
server
Ptr CString
iconPaths' <- [Text] -> IO (Ptr CString)
packZeroTerminatedUTF8CArray [Text]
iconPaths
Ptr Server -> Ptr CString -> IO ()
dbusmenu_server_set_icon_paths Ptr Server
server' Ptr CString
iconPaths'
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
server
(CString -> IO ()) -> Ptr CString -> IO ()
forall a b. (Ptr a -> IO b) -> Ptr (Ptr a) -> IO ()
mapZeroTerminatedCArray CString -> IO ()
forall a. Ptr a -> IO ()
freeMem Ptr CString
iconPaths'
Ptr CString -> IO ()
forall a. Ptr a -> IO ()
freeMem Ptr CString
iconPaths'
() -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(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" ::
Ptr Server ->
Ptr Dbusmenu.Menuitem.Menuitem ->
IO ()
serverSetRoot ::
(B.CallStack.HasCallStack, MonadIO m, IsServer a, Dbusmenu.Menuitem.IsMenuitem b) =>
a
-> b
-> m ()
serverSetRoot :: a -> b -> m ()
serverSetRoot self :: a
self root :: b
root = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
Ptr Server
self' <- a -> IO (Ptr Server)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
Ptr Menuitem
root' <- b -> IO (Ptr Menuitem)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr b
root
Ptr Server -> Ptr Menuitem -> IO ()
dbusmenu_server_set_root Ptr Server
self' Ptr Menuitem
root'
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
b -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr b
root
() -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(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" ::
Ptr Server ->
CUInt ->
IO ()
serverSetStatus ::
(B.CallStack.HasCallStack, MonadIO m, IsServer a) =>
a
-> Dbusmenu.Enums.Status
-> m ()
serverSetStatus :: a -> Status -> m ()
serverSetStatus server :: a
server status :: Status
status = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
Ptr Server
server' <- a -> IO (Ptr Server)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
server
let status' :: CUInt
status' = (Int -> CUInt
forall a b. (Integral a, Num b) => a -> b
fromIntegral (Int -> CUInt) -> (Status -> Int) -> Status -> CUInt
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Status -> Int
forall a. Enum a => a -> Int
fromEnum) Status
status
Ptr Server -> CUInt -> IO ()
dbusmenu_server_set_status Ptr Server
server' CUInt
status'
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
server
() -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(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" ::
Ptr Server ->
CUInt ->
IO ()
serverSetTextDirection ::
(B.CallStack.HasCallStack, MonadIO m, IsServer a) =>
a
-> Dbusmenu.Enums.TextDirection
-> m ()
serverSetTextDirection :: a -> TextDirection -> m ()
serverSetTextDirection server :: a
server dir :: TextDirection
dir = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
Ptr Server
server' <- a -> IO (Ptr Server)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
server
let dir' :: CUInt
dir' = (Int -> CUInt
forall a b. (Integral a, Num b) => a -> b
fromIntegral (Int -> CUInt) -> (TextDirection -> Int) -> TextDirection -> CUInt
forall b c a. (b -> c) -> (a -> b) -> a -> c
. TextDirection -> Int
forall a. Enum a => a -> Int
fromEnum) TextDirection
dir
Ptr Server -> CUInt -> IO ()
dbusmenu_server_set_text_direction Ptr Server
server' CUInt
dir'
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
server
() -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data ServerSetTextDirectionMethodInfo
instance (signature ~ (Dbusmenu.Enums.TextDirection -> m ()), MonadIO m, IsServer a) => O.MethodInfo ServerSetTextDirectionMethodInfo a signature where
overloadedMethod = serverSetTextDirection
#endif