Safe Haskell | None |
---|---|
Language | Haskell2010 |
Text frontend based on SDL2.
Synopsis
- startup :: ClientOptions -> IO RawFrontend
- frontendName :: String
- type FontAtlas = EnumMap AttrCharW32 Texture
- data FrontendSession = FrontendSession {}
- startupFun :: ClientOptions -> MVar RawFrontend -> IO ()
- shutdown :: FrontendSession -> IO ()
- forceShutdown :: FrontendSession -> IO ()
- display :: FrontendSession -> SingleFrame -> IO ()
- drawFrame :: ClientOptions -> FrontendSession -> SingleFrame -> IO ()
- printScreen :: FrontendSession -> IO ()
- modTranslate :: KeyModifier -> Modifier
- keyTranslate :: Bool -> Keycode -> Key
- colorToRGBA :: Color -> V4 Word8
Documentation
startup :: ClientOptions -> IO RawFrontend Source #
Set up and start the main loop providing input and output.
Because of Windows and OS X, SDL2 needs to be on a bound thread, so we can't avoid the communication overhead of bound threads.
frontendName :: String Source #
The name of the frontend.
Internal operations
data FrontendSession Source #
Session data maintained by the frontend.
FrontendSession | |
|
startupFun :: ClientOptions -> MVar RawFrontend -> IO () Source #
shutdown :: FrontendSession -> IO () Source #
forceShutdown :: FrontendSession -> IO () Source #
:: FrontendSession | frontend session data |
-> SingleFrame | the screen frame to draw |
-> IO () |
Add a frame to be drawn.
:: ClientOptions | |
-> FrontendSession | frontend session data |
-> SingleFrame | the screen frame to draw |
-> IO () |
printScreen :: FrontendSession -> IO () Source #
modTranslate :: KeyModifier -> Modifier Source #
Translates modifiers to our own encoding, ignoring Shift.