{-# LANGUAGE MultiParamTypeClasses #-}
module Graphics.XHB.Requests.Internal.Instances.ScreenSaver ()
       where
import Graphics.XHB.Gen.ScreenSaver
import Graphics.XHB.Requests.Internal.Classes
import Prelude (fmap)
import Data.Bifunctor (second)
import Graphics.XHB (getReply)

instance RequestWithReply QueryVersion QueryVersionReply where
        requestWithReplyIO (MkQueryVersion a b) conn
          = fmap getReply (queryVersion conn a b)

instance RequestWithReply QueryInfo QueryInfoReply where
        requestWithReplyIO (MkQueryInfo a) conn
          = fmap getReply (queryInfo conn a)

instance Request SelectInput where
        requestIO (MkSelectInput a b) conn = selectInput conn a b

instance Request SetAttributes where
        requestIO req conn = setAttributes conn req

instance Request UnsetAttributes where
        requestIO (MkUnsetAttributes a) conn = unsetAttributes conn a

instance Request Suspend where
        requestIO (MkSuspend a) conn = suspend conn a