gi-gdk-0.3.16.12: GI/Gdk/Objects/DisplayManager.hs
{- |
Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte
License : LGPL-2.1
Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
-}
module GI.Gdk.Objects.DisplayManager
(
-- * Exported types
DisplayManager(..) ,
DisplayManagerK ,
toDisplayManager ,
noDisplayManager ,
-- * Methods
-- ** displayManagerGet
displayManagerGet ,
-- ** displayManagerGetDefaultDisplay
displayManagerGetDefaultDisplay ,
-- ** displayManagerListDisplays
displayManagerListDisplays ,
-- ** displayManagerOpenDisplay
displayManagerOpenDisplay ,
-- ** displayManagerSetDefaultDisplay
displayManagerSetDefaultDisplay ,
-- * Properties
-- ** DefaultDisplay
DisplayManagerDefaultDisplayPropertyInfo,
constructDisplayManagerDefaultDisplay ,
getDisplayManagerDefaultDisplay ,
setDisplayManagerDefaultDisplay ,
-- * Signals
-- ** DisplayOpened
DisplayManagerDisplayOpenedCallback ,
DisplayManagerDisplayOpenedCallbackC ,
DisplayManagerDisplayOpenedSignalInfo ,
afterDisplayManagerDisplayOpened ,
displayManagerDisplayOpenedCallbackWrapper,
displayManagerDisplayOpenedClosure ,
mkDisplayManagerDisplayOpenedCallback ,
noDisplayManagerDisplayOpenedCallback ,
onDisplayManagerDisplayOpened ,
) where
import Prelude ()
import Data.GI.Base.ShortPrelude
import qualified Data.Text as T
import qualified Data.ByteString.Char8 as B
import qualified Data.Map as Map
import GI.Gdk.Types
import GI.Gdk.Callbacks
import qualified GI.GObject as GObject
newtype DisplayManager = DisplayManager (ForeignPtr DisplayManager)
foreign import ccall "gdk_display_manager_get_type"
c_gdk_display_manager_get_type :: IO GType
type instance ParentTypes DisplayManager = DisplayManagerParentTypes
type DisplayManagerParentTypes = '[GObject.Object]
instance GObject DisplayManager where
gobjectIsInitiallyUnowned _ = False
gobjectType _ = c_gdk_display_manager_get_type
class GObject o => DisplayManagerK o
instance (GObject o, IsDescendantOf DisplayManager o) => DisplayManagerK o
toDisplayManager :: DisplayManagerK o => o -> IO DisplayManager
toDisplayManager = unsafeCastTo DisplayManager
noDisplayManager :: Maybe DisplayManager
noDisplayManager = Nothing
-- signal DisplayManager::display-opened
type DisplayManagerDisplayOpenedCallback =
Display ->
IO ()
noDisplayManagerDisplayOpenedCallback :: Maybe DisplayManagerDisplayOpenedCallback
noDisplayManagerDisplayOpenedCallback = Nothing
type DisplayManagerDisplayOpenedCallbackC =
Ptr () -> -- object
Ptr Display ->
Ptr () -> -- user_data
IO ()
foreign import ccall "wrapper"
mkDisplayManagerDisplayOpenedCallback :: DisplayManagerDisplayOpenedCallbackC -> IO (FunPtr DisplayManagerDisplayOpenedCallbackC)
displayManagerDisplayOpenedClosure :: DisplayManagerDisplayOpenedCallback -> IO Closure
displayManagerDisplayOpenedClosure cb = newCClosure =<< mkDisplayManagerDisplayOpenedCallback wrapped
where wrapped = displayManagerDisplayOpenedCallbackWrapper cb
displayManagerDisplayOpenedCallbackWrapper ::
DisplayManagerDisplayOpenedCallback ->
Ptr () ->
Ptr Display ->
Ptr () ->
IO ()
displayManagerDisplayOpenedCallbackWrapper _cb _ display _ = do
display' <- (newObject Display) display
_cb display'
onDisplayManagerDisplayOpened :: (GObject a, MonadIO m) => a -> DisplayManagerDisplayOpenedCallback -> m SignalHandlerId
onDisplayManagerDisplayOpened obj cb = liftIO $ connectDisplayManagerDisplayOpened obj cb SignalConnectBefore
afterDisplayManagerDisplayOpened :: (GObject a, MonadIO m) => a -> DisplayManagerDisplayOpenedCallback -> m SignalHandlerId
afterDisplayManagerDisplayOpened obj cb = connectDisplayManagerDisplayOpened obj cb SignalConnectAfter
connectDisplayManagerDisplayOpened :: (GObject a, MonadIO m) =>
a -> DisplayManagerDisplayOpenedCallback -> SignalConnectMode -> m SignalHandlerId
connectDisplayManagerDisplayOpened obj cb after = liftIO $ do
cb' <- mkDisplayManagerDisplayOpenedCallback (displayManagerDisplayOpenedCallbackWrapper cb)
connectSignalFunPtr obj "display-opened" cb' after
-- VVV Prop "default-display"
-- Type: TInterface "Gdk" "Display"
-- Flags: [PropertyReadable,PropertyWritable]
getDisplayManagerDefaultDisplay :: (MonadIO m, DisplayManagerK o) => o -> m Display
getDisplayManagerDefaultDisplay obj = liftIO $ getObjectPropertyObject obj "default-display" Display
setDisplayManagerDefaultDisplay :: (MonadIO m, DisplayManagerK o, DisplayK a) => o -> a -> m ()
setDisplayManagerDefaultDisplay obj val = liftIO $ setObjectPropertyObject obj "default-display" val
constructDisplayManagerDefaultDisplay :: (DisplayK a) => a -> IO ([Char], GValue)
constructDisplayManagerDefaultDisplay val = constructObjectPropertyObject "default-display" val
data DisplayManagerDefaultDisplayPropertyInfo
instance AttrInfo DisplayManagerDefaultDisplayPropertyInfo where
type AttrAllowedOps DisplayManagerDefaultDisplayPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
type AttrSetTypeConstraint DisplayManagerDefaultDisplayPropertyInfo = DisplayK
type AttrBaseTypeConstraint DisplayManagerDefaultDisplayPropertyInfo = DisplayManagerK
type AttrGetType DisplayManagerDefaultDisplayPropertyInfo = Display
type AttrLabel DisplayManagerDefaultDisplayPropertyInfo = "DisplayManager::default-display"
attrGet _ = getDisplayManagerDefaultDisplay
attrSet _ = setDisplayManagerDefaultDisplay
attrConstruct _ = constructDisplayManagerDefaultDisplay
type instance AttributeList DisplayManager = DisplayManagerAttributeList
type DisplayManagerAttributeList = ('[ '("default-display", DisplayManagerDefaultDisplayPropertyInfo)] :: [(Symbol, *)])
data DisplayManagerDisplayOpenedSignalInfo
instance SignalInfo DisplayManagerDisplayOpenedSignalInfo where
type HaskellCallbackType DisplayManagerDisplayOpenedSignalInfo = DisplayManagerDisplayOpenedCallback
connectSignal _ = connectDisplayManagerDisplayOpened
type instance SignalList DisplayManager = DisplayManagerSignalList
type DisplayManagerSignalList = ('[ '("display-opened", DisplayManagerDisplayOpenedSignalInfo), '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
-- method DisplayManager::get_default_display
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "Gdk" "DisplayManager", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gdk" "DisplayManager", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TInterface "Gdk" "Display"
-- throws : False
-- Skip return : False
foreign import ccall "gdk_display_manager_get_default_display" gdk_display_manager_get_default_display ::
Ptr DisplayManager -> -- _obj : TInterface "Gdk" "DisplayManager"
IO (Ptr Display)
displayManagerGetDefaultDisplay ::
(MonadIO m, DisplayManagerK a) =>
a -> -- _obj
m Display
displayManagerGetDefaultDisplay _obj = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
result <- gdk_display_manager_get_default_display _obj'
checkUnexpectedReturnNULL "gdk_display_manager_get_default_display" result
result' <- (newObject Display) result
touchManagedPtr _obj
return result'
-- method DisplayManager::list_displays
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "Gdk" "DisplayManager", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gdk" "DisplayManager", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TGSList (TInterface "Gdk" "Display")
-- throws : False
-- Skip return : False
foreign import ccall "gdk_display_manager_list_displays" gdk_display_manager_list_displays ::
Ptr DisplayManager -> -- _obj : TInterface "Gdk" "DisplayManager"
IO (Ptr (GSList (Ptr Display)))
displayManagerListDisplays ::
(MonadIO m, DisplayManagerK a) =>
a -> -- _obj
m [Display]
displayManagerListDisplays _obj = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
result <- gdk_display_manager_list_displays _obj'
checkUnexpectedReturnNULL "gdk_display_manager_list_displays" result
result' <- unpackGSList result
result'' <- mapM (newObject Display) result'
g_slist_free result
touchManagedPtr _obj
return result''
-- method DisplayManager::open_display
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "Gdk" "DisplayManager", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gdk" "DisplayManager", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TInterface "Gdk" "Display"
-- throws : False
-- Skip return : False
foreign import ccall "gdk_display_manager_open_display" gdk_display_manager_open_display ::
Ptr DisplayManager -> -- _obj : TInterface "Gdk" "DisplayManager"
CString -> -- name : TBasicType TUTF8
IO (Ptr Display)
displayManagerOpenDisplay ::
(MonadIO m, DisplayManagerK a) =>
a -> -- _obj
T.Text -> -- name
m Display
displayManagerOpenDisplay _obj name = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
name' <- textToCString name
result <- gdk_display_manager_open_display _obj' name'
checkUnexpectedReturnNULL "gdk_display_manager_open_display" result
result' <- (newObject Display) result
touchManagedPtr _obj
freeMem name'
return result'
-- method DisplayManager::set_default_display
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "Gdk" "DisplayManager", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "display", argType = TInterface "Gdk" "Display", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gdk" "DisplayManager", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "display", argType = TInterface "Gdk" "Display", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TBasicType TVoid
-- throws : False
-- Skip return : False
foreign import ccall "gdk_display_manager_set_default_display" gdk_display_manager_set_default_display ::
Ptr DisplayManager -> -- _obj : TInterface "Gdk" "DisplayManager"
Ptr Display -> -- display : TInterface "Gdk" "Display"
IO ()
displayManagerSetDefaultDisplay ::
(MonadIO m, DisplayManagerK a, DisplayK b) =>
a -> -- _obj
b -> -- display
m ()
displayManagerSetDefaultDisplay _obj display = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
let display' = unsafeManagedPtrCastPtr display
gdk_display_manager_set_default_display _obj' display'
touchManagedPtr _obj
touchManagedPtr display
return ()
-- method DisplayManager::get
-- method type : MemberFunction
-- Args : []
-- Lengths : []
-- hInArgs : []
-- returnType : TInterface "Gdk" "DisplayManager"
-- throws : False
-- Skip return : False
foreign import ccall "gdk_display_manager_get" gdk_display_manager_get ::
IO (Ptr DisplayManager)
displayManagerGet ::
(MonadIO m) =>
m DisplayManager
displayManagerGet = liftIO $ do
result <- gdk_display_manager_get
checkUnexpectedReturnNULL "gdk_display_manager_get" result
result' <- (newObject DisplayManager) result
return result'