module KeyboardMouseState (setKState ) where import Graphics.Rendering.OpenGL import Graphics.UI.GLUT import States import PositionMaps (getWCoordPos) setKState :: DState -> MState -> KState -> Key -> KeyState -> Modifiers -> Position -> KState setKState dst _ kst (MouseButton LeftButton) Down _ pos = (kStateChangeDownKP kst (Just (MouseButton LeftButton)) (Just (getWCoordPos dst pos))) setKState dst _ kst x Down _ _ = (kStateChangeDownKP kst (Just x) Nothing) setKState dst _ kst _ Up _ _ = (kStateChangeDownKP kst Nothing Nothing)