window now closes on escape & quit-button

This commit is contained in:
Nicole Dresselhaus 2014-01-20 20:04:21 +01:00
parent e59a4cd545
commit 6264e526ef

View File

@ -223,7 +223,7 @@ run = do
win <- asks envWindow win <- asks envWindow
-- draw Scene -- draw Scene
--draw draw
liftIO $ do liftIO $ do
glSwapWindow win glSwapWindow win
-- getEvents & process -- getEvents & process
@ -324,4 +324,27 @@ processEvents = do
processEvent :: Event -> Pioneers () processEvent :: Event -> Pioneers ()
processEvent e = do processEvent e = do
liftIO $ putStrLn (show e) case eventData e of
Window _ winEvent ->
case winEvent of
Closing -> modify $ \s -> s {
stateWinClose = True
}
_ -> return ()
Keyboard movement _ repeat key -> --up/down window(ignored) true/false actualKey
-- need modifiers? use "keyModifiers key" to get them
case keyScancode key of
Escape -> modify $ \s -> s {
stateWinClose = True
}
_ -> return ()
MouseMotion _ id st pos xrel yrel ->
return ()
MouseButton _ id button state pos ->
return ()
MouseWheel _ id hscroll vscroll ->
return ()
Quit -> modify $ \s -> s {stateWinClose = True}
-- there is more (joystic, touchInterface, ...), but currently ignored
_ -> return ()
liftIO $ putStrLn $ unwords ["Processing Event:",(show e)]