-
Notifications
You must be signed in to change notification settings - Fork 87
Closed
Labels
Description
{-# LANGUAGE OverloadedStrings #-}
module Main where
import SDL
import Linear (V4(..))
import Control.Monad (unless)
main :: IO ()
main = do
initializeAll
window <- createWindow "My SDL Application" defaultWindow
renderer <- createRenderer window (-1) defaultRenderer
appLoop renderer
destroyWindow window
appLoop :: Renderer -> IO ()
appLoop renderer = do
events <- pollEvents
print events -- Here it keeps outputting [] even if I press the keyboard
let eventIsQPress event =
case eventPayload event of
KeyboardEvent keyboardEvent ->
keyboardEventKeyMotion keyboardEvent == Pressed &&
keysymKeycode (keyboardEventKeysym keyboardEvent) == KeycodeQ
_ -> False
qPressed = any eventIsQPress events
rendererDrawColor renderer $= V4 0 0 255 255
clear renderer
present renderer
unless qPressed (appLoop renderer)sdl2 version
➜ Yampa-Front git:(master) ✗ cabal build -v3 | grep sdl2
sdl2-2.5.3.2-9b099619e5c5c8370254862105ad69cf154d7cf6e4baeb0b9983c7c55ab3c623
sdl2-gfx-0.3.0.0-11abeb949b1f11da668c5899e3366da31ba7ecdd0844cc1f9ea315feb160c91a
Installed sdl2-2.5.3.2 (sdl2-2.5.3.2-9b099619e5c5c8370254862105ad69cf154d7cf6e4baeb0b9983c7c55ab3c623)
Installed sdl2-gfx-0.3.0.0 (sdl2-gfx-0.3.0.0-11abeb949b1f11da668c5899e3366da31ba7ecdd0844cc1f9ea315feb160c91a)
sdl2-2.5.3.2-9b099619e5c5c8370254862105ad69cf154d7cf6e4baeb0b9983c7c55ab3c623
➜ Yampa-Front git:(master) ✗ ghc --version
The Glorious Glasgow Haskell Compilation System, version 9.2.2