xhb-0.0.2009.1.6: patched/Graphics/XHB/Gen/Xevie.hs
module Graphics.XHB.Gen.Xevie
(extension, queryVersion, start, end, send, selectInput,
module Graphics.XHB.Gen.Xevie.Types)
where
import Graphics.XHB.Gen.Xevie.Types
import Graphics.XHB.Connection.Internal
import Graphics.XHB.Connection.Extension
import Graphics.XHB.Connection.Types
import Control.Concurrent.STM
import Foreign.C.Types
import Data.Binary.Put (runPut)
import Graphics.XHB.Shared hiding (Event(..), Error(..))
extension :: ExtensionId
extension = "XEVIE"
queryVersion ::
Graphics.XHB.Connection.Types.Connection ->
CARD16 -> CARD16 -> IO (Receipt QueryVersionReply)
queryVersion c client_major_version client_minor_version
= do receipt <- newEmptyReceiptIO
let req = MkQueryVersion client_major_version client_minor_version
putAction <- serializeExtensionRequest c req
let chunk = runPut putAction
sendRequestWithReply c chunk receipt
return receipt
start ::
Graphics.XHB.Connection.Types.Connection ->
CARD32 -> IO (Receipt StartReply)
start c screen
= do receipt <- newEmptyReceiptIO
let req = MkStart screen
putAction <- serializeExtensionRequest c req
let chunk = runPut putAction
sendRequestWithReply c chunk receipt
return receipt
end ::
Graphics.XHB.Connection.Types.Connection ->
CARD32 -> IO (Receipt EndReply)
end c cmap
= do receipt <- newEmptyReceiptIO
let req = MkEnd cmap
putAction <- serializeExtensionRequest c req
let chunk = runPut putAction
sendRequestWithReply c chunk receipt
return receipt
send ::
Graphics.XHB.Connection.Types.Connection ->
Event -> CARD32 -> IO (Receipt SendReply)
send c event data_type
= do receipt <- newEmptyReceiptIO
let req = MkSend event data_type
putAction <- serializeExtensionRequest c req
let chunk = runPut putAction
sendRequestWithReply c chunk receipt
return receipt
selectInput ::
Graphics.XHB.Connection.Types.Connection ->
CARD32 -> IO (Receipt SelectInputReply)
selectInput c event_mask
= do receipt <- newEmptyReceiptIO
let req = MkSelectInput event_mask
putAction <- serializeExtensionRequest c req
let chunk = runPut putAction
sendRequestWithReply c chunk receipt
return receipt