Module

Game.Aff.Web.Event

Package
purescript-game
Repository
artemisSystem/purescript-game

#qSelEventTarget Source

qSelEventTarget :: forall r. QuerySelector -> Run (effect :: EFFECT, except :: FAIL | r) EventTarget

#windowEventTarget Source

windowEventTarget :: forall r. Run (effect :: EFFECT | r) EventTarget

#documentEventTarget Source

documentEventTarget :: forall r. Run (effect :: EFFECT | r) EventTarget

#bodyEventTarget Source

bodyEventTarget :: forall r. Run (effect :: EFFECT, except :: FAIL | r) EventTarget

#EventInfo Source

type EventInfo = { eventType :: EventType, useCapture :: Boolean }

#EventExecIn Source

type EventExecIn e s a r = (aff :: AFF, effect :: EFFECT, end :: EXCEPT a, env :: READER e, event :: READER Event, state :: STATE s | r)

#_event Source

_event :: SProxy "event"

#eventUpdate Source

eventUpdate :: forall extra a s e. EventInfo -> Run (EventTargetRow e s a) EventTarget -> Run (EventExecIn e s a extra) Unit -> AffGameUpdate extra e s a

#UIEventRow Source

type UIEventRow r = (uiEvent :: READER UIEvent | r)

#_uiEvent Source

_uiEvent :: SProxy "uiEvent"

#reduceUIEventRow Source

reduceUIEventRow :: forall r a. Run (UIEventRow (effect :: EFFECT, event :: READER Event | r)) a -> Run (effect :: EFFECT, event :: READER Event | r) a

#uiEventUpdate Source

uiEventUpdate :: forall a s e extra. EventType -> Boolean -> Run (EventTargetRow e s a) EventTarget -> Run (EventExecIn e s a (UIEventRow extra)) Unit -> AffGameUpdate extra e s a

Boolean is whether to use capture

#MouseEventRow Source

type MouseEventRow r = (mouseEvent :: READER MouseEvent, posInTarget :: READER (Vector2 Int), uiEvent :: READER UIEvent | r)

#_mouseEvent Source

_mouseEvent :: SProxy "mouseEvent"

#_posInTarget Source

_posInTarget :: SProxy "posInTarget"

#reduceMouseEventRow Source

reduceMouseEventRow :: forall r a. Run (MouseEventRow (effect :: EFFECT, event :: READER Event | r)) a -> Run (effect :: EFFECT, event :: READER Event | r) a

Assumes that the relevant Event is a MouseEvent (and UIEvent). The current event target (event.currentTarget) must be a HTMLElement. This function is not intended for use with events that do not meet these criteria.

#mouseEventUpdate Source

mouseEventUpdate :: forall a s e extra. EventType -> Run (EventTargetRow e s a) EventTarget -> Run (EventExecIn e s a (MouseEventRow extra)) Unit -> AffGameUpdate extra e s a

#mousemove Source

mousemove :: forall a s e extra. Run (EventTargetRow e s a) EventTarget -> Run (EventExecIn e s a (MouseEventRow extra)) Unit -> AffGameUpdate extra e s a

#click Source

click :: forall a s e extra. Run (EventTargetRow e s a) EventTarget -> Run (EventExecIn e s a (MouseEventRow extra)) Unit -> AffGameUpdate extra e s a

#mousedown Source

mousedown :: forall a s e extra. Run (EventTargetRow e s a) EventTarget -> Run (EventExecIn e s a (MouseEventRow extra)) Unit -> AffGameUpdate extra e s a

#mouseup Source

mouseup :: forall a s e extra. Run (EventTargetRow e s a) EventTarget -> Run (EventExecIn e s a (MouseEventRow extra)) Unit -> AffGameUpdate extra e s a

#KeyboardEventRow Source

type KeyboardEventRow r = (keyboardEvent :: READER KeyboardEvent, uiEvent :: READER UIEvent | r)

#_keyboardEvent Source

_keyboardEvent :: SProxy "keyboardEvent"

#reduceKeyboardEventRow Source

reduceKeyboardEventRow :: forall r a. Run (KeyboardEventRow (effect :: EFFECT, event :: READER Event | r)) a -> Run (effect :: EFFECT, event :: READER Event | r) a

Assumes that the relevant Event is a KeyboardEvent (and UIEvent). Throws an error when attempting to read a value that doesn't exist on the Event. This function is not intended for use with events that are not KeyboardEvents.

#keyboardEventUpdate Source

keyboardEventUpdate :: forall a s e extra. EventType -> Run (EventTargetRow e s a) EventTarget -> Run (EventExecIn e s a (KeyboardEventRow extra)) Unit -> AffGameUpdate extra e s a

#keydown Source

keydown :: forall a s e extra. Run (EventTargetRow e s a) EventTarget -> Run (EventExecIn e s a (KeyboardEventRow extra)) Unit -> AffGameUpdate extra e s a

#keyup Source

keyup :: forall a s e extra. Run (EventTargetRow e s a) EventTarget -> Run (EventExecIn e s a (KeyboardEventRow extra)) Unit -> AffGameUpdate extra e s a

#keypressed Source

keypressed :: forall a s e extra. Run (EventTargetRow e s a) EventTarget -> Run (EventExecIn e s a (KeyboardEventRow extra)) Unit -> AffGameUpdate extra e s a

#change Source

change :: forall a s e extra. Run (EventTargetRow e s a) EventTarget -> Run (EventExecIn e s a extra) Unit -> AffGameUpdate extra e s a

#load Source

load :: forall a s e extra. Run (EventTargetRow e s a) EventTarget -> Run (EventExecIn e s a extra) Unit -> AffGameUpdate extra e s a