Safe Haskell | None |
---|
Display game data on the screen and receive user input using one of the available raw frontends and derived operations.
- frontendName :: String
- startupF :: String -> IO () -> IO ()
- getConfirmGeneric :: Monad m => ([KM] -> a -> m KM) -> [KM] -> a -> m Bool
- type ChanFrontend = TQueue KM
- data FrontReq
- = FrontFrame { }
- | FrontKey {
- frontKM :: ![KM]
- frontFr :: !SingleFrame
- | FrontSlides {
- frontClear :: [KM]
- frontSlides :: [SingleFrame]
- data ConnMulti = ConnMulti {}
- connMulti :: ConnMulti
- loopFrontend :: FrontendSession -> ConnMulti -> IO ()
Re-exported part of the raw frontend
The name of the frontend.
Derived operation
getConfirmGeneric :: Monad m => ([KM] -> a -> m KM) -> [KM] -> a -> m BoolSource
Augment a function that takes and returns keys.
Connection channels
type ChanFrontend = TQueue KMSource
FrontFrame | show a frame, if the fid acitve, or save it to the client's queue |
FrontKey | flush frames, possibly show fadeout/fadein and ask for a keypress |
| |
FrontSlides | show a whole slideshow without interleaving with other clients |
|
Multiplex connection channels, for the case of a frontend shared among clients. This is transparent to the clients themselves.
loopFrontend :: FrontendSession -> ConnMulti -> IO ()Source