module GI.Gdk.Objects.DisplayManager
(
DisplayManager(..) ,
DisplayManagerK ,
toDisplayManager ,
noDisplayManager ,
displayManagerGet ,
displayManagerGetDefaultDisplay ,
displayManagerListDisplays ,
displayManagerOpenDisplay ,
displayManagerSetDefaultDisplay ,
DisplayManagerDefaultDisplayPropertyInfo,
constructDisplayManagerDefaultDisplay ,
getDisplayManagerDefaultDisplay ,
setDisplayManagerDefaultDisplay ,
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
type DisplayManagerDisplayOpenedCallback =
Display ->
IO ()
noDisplayManagerDisplayOpenedCallback :: Maybe DisplayManagerDisplayOpenedCallback
noDisplayManagerDisplayOpenedCallback = Nothing
type DisplayManagerDisplayOpenedCallbackC =
Ptr () ->
Ptr Display ->
Ptr () ->
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
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, *)])
foreign import ccall "gdk_display_manager_get_default_display" gdk_display_manager_get_default_display ::
Ptr DisplayManager ->
IO (Ptr Display)
displayManagerGetDefaultDisplay ::
(MonadIO m, DisplayManagerK a) =>
a ->
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'
foreign import ccall "gdk_display_manager_list_displays" gdk_display_manager_list_displays ::
Ptr DisplayManager ->
IO (Ptr (GSList (Ptr Display)))
displayManagerListDisplays ::
(MonadIO m, DisplayManagerK a) =>
a ->
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''
foreign import ccall "gdk_display_manager_open_display" gdk_display_manager_open_display ::
Ptr DisplayManager ->
CString ->
IO (Ptr Display)
displayManagerOpenDisplay ::
(MonadIO m, DisplayManagerK a) =>
a ->
T.Text ->
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'
foreign import ccall "gdk_display_manager_set_default_display" gdk_display_manager_set_default_display ::
Ptr DisplayManager ->
Ptr Display ->
IO ()
displayManagerSetDefaultDisplay ::
(MonadIO m, DisplayManagerK a, DisplayK b) =>
a ->
b ->
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 ()
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'