#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
&& !defined(__HADDOCK_VERSION__))
module GI.DbusmenuGtk3.Objects.Client
(
Client(..) ,
IsClient ,
toClient ,
noClient ,
#if ENABLE_OVERLOADING
ClientGetAccelGroupMethodInfo ,
#endif
clientGetAccelGroup ,
#if ENABLE_OVERLOADING
ClientMenuitemGetMethodInfo ,
#endif
clientMenuitemGet ,
#if ENABLE_OVERLOADING
ClientMenuitemGetSubmenuMethodInfo ,
#endif
clientMenuitemGetSubmenu ,
clientNew ,
#if ENABLE_OVERLOADING
ClientNewitemBaseMethodInfo ,
#endif
clientNewitemBase ,
#if ENABLE_OVERLOADING
ClientSetAccelGroupMethodInfo ,
#endif
clientSetAccelGroup ,
) 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.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.Text as T
import qualified Data.ByteString.Char8 as B
import qualified Data.Map as Map
import qualified Foreign.Ptr as FP
import qualified GI.Dbusmenu.Objects.Client as Dbusmenu.Client
import qualified GI.Dbusmenu.Objects.Menuitem as Dbusmenu.Menuitem
import qualified GI.GObject.Objects.Object as GObject.Object
import qualified GI.Gtk.Objects.AccelGroup as Gtk.AccelGroup
import qualified GI.Gtk.Objects.Menu as Gtk.Menu
import qualified GI.Gtk.Objects.MenuItem as Gtk.MenuItem
newtype Client = Client (ManagedPtr Client)
foreign import ccall "dbusmenu_gtkclient_get_type"
c_dbusmenu_gtkclient_get_type :: IO GType
instance GObject Client where
gobjectType _ = c_dbusmenu_gtkclient_get_type
class GObject o => IsClient o
#if MIN_VERSION_base(4,9,0)
instance (GObject a, O.UnknownAncestorError Client a) =>
IsClient a
#endif
instance IsClient Client
instance Dbusmenu.Client.IsClient Client
instance GObject.Object.IsObject Client
toClient :: (MonadIO m, IsClient o) => o -> m Client
toClient = liftIO . unsafeCastTo Client
noClient :: Maybe Client
noClient = Nothing
#if ENABLE_OVERLOADING
type family ResolveClientMethod (t :: Symbol) (o :: *) :: * where
ResolveClientMethod "addTypeHandler" o = Dbusmenu.Client.ClientAddTypeHandlerMethodInfo
ResolveClientMethod "addTypeHandlerFull" o = Dbusmenu.Client.ClientAddTypeHandlerFullMethodInfo
ResolveClientMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
ResolveClientMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
ResolveClientMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
ResolveClientMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
ResolveClientMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
ResolveClientMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
ResolveClientMethod "menuitemGet" o = ClientMenuitemGetMethodInfo
ResolveClientMethod "menuitemGetSubmenu" o = ClientMenuitemGetSubmenuMethodInfo
ResolveClientMethod "newitemBase" o = ClientNewitemBaseMethodInfo
ResolveClientMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
ResolveClientMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
ResolveClientMethod "ref" o = GObject.Object.ObjectRefMethodInfo
ResolveClientMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
ResolveClientMethod "replaceData" o = GObject.Object.ObjectReplaceDataMethodInfo
ResolveClientMethod "replaceQdata" o = GObject.Object.ObjectReplaceQdataMethodInfo
ResolveClientMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
ResolveClientMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
ResolveClientMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
ResolveClientMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
ResolveClientMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
ResolveClientMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
ResolveClientMethod "getAccelGroup" o = ClientGetAccelGroupMethodInfo
ResolveClientMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
ResolveClientMethod "getIconPaths" o = Dbusmenu.Client.ClientGetIconPathsMethodInfo
ResolveClientMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
ResolveClientMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
ResolveClientMethod "getRoot" o = Dbusmenu.Client.ClientGetRootMethodInfo
ResolveClientMethod "getStatus" o = Dbusmenu.Client.ClientGetStatusMethodInfo
ResolveClientMethod "getTextDirection" o = Dbusmenu.Client.ClientGetTextDirectionMethodInfo
ResolveClientMethod "setAccelGroup" o = ClientSetAccelGroupMethodInfo
ResolveClientMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
ResolveClientMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
ResolveClientMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveClientMethod t Client, O.MethodInfo info Client p) => O.IsLabelProxy t (Client -> p) where
fromLabelProxy _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
#if MIN_VERSION_base(4,9,0)
instance (info ~ ResolveClientMethod t Client, O.MethodInfo info Client p) => O.IsLabel t (Client -> 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
#endif
#if ENABLE_OVERLOADING
instance O.HasAttributeList Client
type instance O.AttributeList Client = ClientAttributeList
type ClientAttributeList = ('[ '("dbusName", Dbusmenu.Client.ClientDbusNamePropertyInfo), '("dbusObject", Dbusmenu.Client.ClientDbusObjectPropertyInfo), '("groupEvents", Dbusmenu.Client.ClientGroupEventsPropertyInfo)] :: [(Symbol, *)])
#endif
#if ENABLE_OVERLOADING
#endif
#if ENABLE_OVERLOADING
type instance O.SignalList Client = ClientSignalList
type ClientSignalList = ('[ '("eventResult", Dbusmenu.Client.ClientEventResultSignalInfo), '("iconThemeDirsChanged", Dbusmenu.Client.ClientIconThemeDirsChangedSignalInfo), '("itemActivate", Dbusmenu.Client.ClientItemActivateSignalInfo), '("layoutUpdated", Dbusmenu.Client.ClientLayoutUpdatedSignalInfo), '("newMenuitem", Dbusmenu.Client.ClientNewMenuitemSignalInfo), '("notify", GObject.Object.ObjectNotifySignalInfo), '("rootChanged", Dbusmenu.Client.ClientRootChangedSignalInfo)] :: [(Symbol, *)])
#endif
foreign import ccall "dbusmenu_gtkclient_new" dbusmenu_gtkclient_new ::
CString ->
CString ->
IO (Ptr Client)
clientNew ::
(B.CallStack.HasCallStack, MonadIO m) =>
T.Text
-> T.Text
-> m Client
clientNew dbusName dbusObject = liftIO $ do
dbusName' <- textToCString dbusName
dbusObject' <- textToCString dbusObject
result <- dbusmenu_gtkclient_new dbusName' dbusObject'
checkUnexpectedReturnNULL "clientNew" result
result' <- (wrapObject Client) result
freeMem dbusName'
freeMem dbusObject'
return result'
#if ENABLE_OVERLOADING
#endif
foreign import ccall "dbusmenu_gtkclient_get_accel_group" dbusmenu_gtkclient_get_accel_group ::
Ptr Client ->
IO (Ptr Gtk.AccelGroup.AccelGroup)
clientGetAccelGroup ::
(B.CallStack.HasCallStack, MonadIO m, IsClient a) =>
a
-> m Gtk.AccelGroup.AccelGroup
clientGetAccelGroup client = liftIO $ do
client' <- unsafeManagedPtrCastPtr client
result <- dbusmenu_gtkclient_get_accel_group client'
checkUnexpectedReturnNULL "clientGetAccelGroup" result
result' <- (newObject Gtk.AccelGroup.AccelGroup) result
touchManagedPtr client
return result'
#if ENABLE_OVERLOADING
data ClientGetAccelGroupMethodInfo
instance (signature ~ (m Gtk.AccelGroup.AccelGroup), MonadIO m, IsClient a) => O.MethodInfo ClientGetAccelGroupMethodInfo a signature where
overloadedMethod _ = clientGetAccelGroup
#endif
foreign import ccall "dbusmenu_gtkclient_menuitem_get" dbusmenu_gtkclient_menuitem_get ::
Ptr Client ->
Ptr Dbusmenu.Menuitem.Menuitem ->
IO (Ptr Gtk.MenuItem.MenuItem)
clientMenuitemGet ::
(B.CallStack.HasCallStack, MonadIO m, IsClient a, Dbusmenu.Menuitem.IsMenuitem b) =>
a
-> b
-> m Gtk.MenuItem.MenuItem
clientMenuitemGet client item = liftIO $ do
client' <- unsafeManagedPtrCastPtr client
item' <- unsafeManagedPtrCastPtr item
result <- dbusmenu_gtkclient_menuitem_get client' item'
checkUnexpectedReturnNULL "clientMenuitemGet" result
result' <- (newObject Gtk.MenuItem.MenuItem) result
touchManagedPtr client
touchManagedPtr item
return result'
#if ENABLE_OVERLOADING
data ClientMenuitemGetMethodInfo
instance (signature ~ (b -> m Gtk.MenuItem.MenuItem), MonadIO m, IsClient a, Dbusmenu.Menuitem.IsMenuitem b) => O.MethodInfo ClientMenuitemGetMethodInfo a signature where
overloadedMethod _ = clientMenuitemGet
#endif
foreign import ccall "dbusmenu_gtkclient_menuitem_get_submenu" dbusmenu_gtkclient_menuitem_get_submenu ::
Ptr Client ->
Ptr Dbusmenu.Menuitem.Menuitem ->
IO (Ptr Gtk.Menu.Menu)
clientMenuitemGetSubmenu ::
(B.CallStack.HasCallStack, MonadIO m, IsClient a, Dbusmenu.Menuitem.IsMenuitem b) =>
a
-> b
-> m Gtk.Menu.Menu
clientMenuitemGetSubmenu client item = liftIO $ do
client' <- unsafeManagedPtrCastPtr client
item' <- unsafeManagedPtrCastPtr item
result <- dbusmenu_gtkclient_menuitem_get_submenu client' item'
checkUnexpectedReturnNULL "clientMenuitemGetSubmenu" result
result' <- (newObject Gtk.Menu.Menu) result
touchManagedPtr client
touchManagedPtr item
return result'
#if ENABLE_OVERLOADING
data ClientMenuitemGetSubmenuMethodInfo
instance (signature ~ (b -> m Gtk.Menu.Menu), MonadIO m, IsClient a, Dbusmenu.Menuitem.IsMenuitem b) => O.MethodInfo ClientMenuitemGetSubmenuMethodInfo a signature where
overloadedMethod _ = clientMenuitemGetSubmenu
#endif
foreign import ccall "dbusmenu_gtkclient_newitem_base" dbusmenu_gtkclient_newitem_base ::
Ptr Client ->
Ptr Dbusmenu.Menuitem.Menuitem ->
Ptr Gtk.MenuItem.MenuItem ->
Ptr Dbusmenu.Menuitem.Menuitem ->
IO ()
clientNewitemBase ::
(B.CallStack.HasCallStack, MonadIO m, IsClient a, Dbusmenu.Menuitem.IsMenuitem b, Gtk.MenuItem.IsMenuItem c, Dbusmenu.Menuitem.IsMenuitem d) =>
a
-> b
-> c
-> d
-> m ()
clientNewitemBase client item gmi parent = liftIO $ do
client' <- unsafeManagedPtrCastPtr client
item' <- unsafeManagedPtrCastPtr item
gmi' <- unsafeManagedPtrCastPtr gmi
parent' <- unsafeManagedPtrCastPtr parent
dbusmenu_gtkclient_newitem_base client' item' gmi' parent'
touchManagedPtr client
touchManagedPtr item
touchManagedPtr gmi
touchManagedPtr parent
return ()
#if ENABLE_OVERLOADING
data ClientNewitemBaseMethodInfo
instance (signature ~ (b -> c -> d -> m ()), MonadIO m, IsClient a, Dbusmenu.Menuitem.IsMenuitem b, Gtk.MenuItem.IsMenuItem c, Dbusmenu.Menuitem.IsMenuitem d) => O.MethodInfo ClientNewitemBaseMethodInfo a signature where
overloadedMethod _ = clientNewitemBase
#endif
foreign import ccall "dbusmenu_gtkclient_set_accel_group" dbusmenu_gtkclient_set_accel_group ::
Ptr Client ->
Ptr Gtk.AccelGroup.AccelGroup ->
IO ()
clientSetAccelGroup ::
(B.CallStack.HasCallStack, MonadIO m, IsClient a, Gtk.AccelGroup.IsAccelGroup b) =>
a
-> b
-> m ()
clientSetAccelGroup client agroup = liftIO $ do
client' <- unsafeManagedPtrCastPtr client
agroup' <- unsafeManagedPtrCastPtr agroup
dbusmenu_gtkclient_set_accel_group client' agroup'
touchManagedPtr client
touchManagedPtr agroup
return ()
#if ENABLE_OVERLOADING
data ClientSetAccelGroupMethodInfo
instance (signature ~ (b -> m ()), MonadIO m, IsClient a, Gtk.AccelGroup.IsAccelGroup b) => O.MethodInfo ClientSetAccelGroupMethodInfo a signature where
overloadedMethod _ = clientSetAccelGroup
#endif