Module Event_arrows

module Event_arrows : sig..end

WARNING: EXPERIMENTAL


type canceller
type ('a, 'b) t
val lwt_arr : ('a -> 'b Lwt.t) -> ('a, 'b) t
val arr : ('a -> 'b) -> ('a, 'b) t
val (>>>) : 
  ('a, 'b) t ->
  ('b, 'c) t -> ('a, 'c) t
val (>>>|) : ('a, 'b) t -> ('b -> 'c Lwt.t) -> ('a, 'c) t
val run : ('a, unit) t -> 'a -> canceller
val cancel : canceller -> unit
val first : ('a, 'b) t list -> ('a, 'b) t

Behaves as the first element of the list to terminate

val iter : ('a, 'b) t list -> ('a, 'b) t

Behaves as one element of the list, then another one, etc. If you launch several run in parallel, event handler will be parallelized, that is: one will not be desactivated while another is running. To sequentialize them, use iter.

Browsers propagate events from external boxes to internal (capture phase), then from internal to external (bubble phase).

If use_capture is set to true, the event will be caught during the capture phase (default: bubble phase).

If keep_default is set to true, the default event will not be removed.

If propagate is set to true, the event will continue to propagate after the handler.

val click : 
  ?use_capture:bool ->
  ?keep_default:bool ->
  ?propagate:bool ->
  #Dom_html.eventTarget Js.t ->
  ('a, Dom_html.mouseEvent Js.t) t
val dblclick : 
  ?use_capture:bool ->
  ?keep_default:bool ->
  ?propagate:bool ->
  #Dom_html.eventTarget Js.t ->
  ('a, Dom_html.mouseEvent Js.t) t
val mousedown : 
  ?use_capture:bool ->
  ?keep_default:bool ->
  ?propagate:bool ->
  #Dom_html.eventTarget Js.t ->
  ('a, Dom_html.mouseEvent Js.t) t
val mouseup : 
  ?use_capture:bool ->
  ?keep_default:bool ->
  ?propagate:bool ->
  #Dom_html.eventTarget Js.t ->
  ('a, Dom_html.mouseEvent Js.t) t
val mouseover : 
  ?use_capture:bool ->
  ?keep_default:bool ->
  ?propagate:bool ->
  #Dom_html.eventTarget Js.t ->
  ('a, Dom_html.mouseEvent Js.t) t
val mousemove : 
  ?use_capture:bool ->
  ?keep_default:bool ->
  ?propagate:bool ->
  #Dom_html.eventTarget Js.t ->
  ('a, Dom_html.mouseEvent Js.t) t
val mouseout : 
  ?use_capture:bool ->
  ?keep_default:bool ->
  ?propagate:bool ->
  #Dom_html.eventTarget Js.t ->
  ('a, Dom_html.mouseEvent Js.t) t
val keypress : 
  ?use_capture:bool ->
  ?keep_default:bool ->
  ?propagate:bool ->
  #Dom_html.eventTarget Js.t ->
  ('a, Dom_html.keyboardEvent Js.t) t
val keydown : 
  ?use_capture:bool ->
  ?keep_default:bool ->
  ?propagate:bool ->
  #Dom_html.eventTarget Js.t ->
  ('a, Dom_html.keyboardEvent Js.t) t
val keyup : 
  ?use_capture:bool ->
  ?keep_default:bool ->
  ?propagate:bool ->
  #Dom_html.eventTarget Js.t ->
  ('a, Dom_html.keyboardEvent Js.t) t
val clicks : 
  ?use_capture:bool ->
  ?keep_default:bool ->
  ?propagate:bool ->
  #Dom_html.eventTarget Js.t ->
  (Dom_html.mouseEvent Js.t, 'a) t ->
  ('b, 'c) t
val dblclicks : 
  ?use_capture:bool ->
  ?keep_default:bool ->
  ?propagate:bool ->
  #Dom_html.eventTarget Js.t ->
  (Dom_html.mouseEvent Js.t, 'a) t ->
  ('b, 'c) t
val mousedowns : 
  ?use_capture:bool ->
  ?keep_default:bool ->
  ?propagate:bool ->
  #Dom_html.eventTarget Js.t ->
  (Dom_html.mouseEvent Js.t, 'a) t ->
  ('b, 'c) t
val mouseups : 
  ?use_capture:bool ->
  ?keep_default:bool ->
  ?propagate:bool ->
  #Dom_html.eventTarget Js.t ->
  (Dom_html.mouseEvent Js.t, 'a) t ->
  ('b, 'c) t
val mouseovers : 
  ?use_capture:bool ->
  ?keep_default:bool ->
  ?propagate:bool ->
  #Dom_html.eventTarget Js.t ->
  (Dom_html.mouseEvent Js.t, 'a) t ->
  ('b, 'c) t
val mousemoves : 
  ?use_capture:bool ->
  ?keep_default:bool ->
  ?propagate:bool ->
  #Dom_html.eventTarget Js.t ->
  (Dom_html.mouseEvent Js.t, 'a) t ->
  ('b, 'c) t
val mouseouts : 
  ?use_capture:bool ->
  ?keep_default:bool ->
  ?propagate:bool ->
  #Dom_html.eventTarget Js.t ->
  (Dom_html.mouseEvent Js.t, 'a) t ->
  ('b, 'c) t
val keypresses : 
  ?use_capture:bool ->
  ?keep_default:bool ->
  ?propagate:bool ->
  #Dom_html.eventTarget Js.t ->
  (Dom_html.keyboardEvent Js.t, 'a) t ->
  ('b, 'c) t
val keydowns : 
  ?use_capture:bool ->
  ?keep_default:bool ->
  ?propagate:bool ->
  #Dom_html.eventTarget Js.t ->
  (Dom_html.keyboardEvent Js.t, 'a) t ->
  ('b, 'c) t
val keyups : 
  ?use_capture:bool ->
  ?keep_default:bool ->
  ?propagate:bool ->
  #Dom_html.eventTarget Js.t ->
  (Dom_html.keyboardEvent Js.t, 'a) t ->
  ('b, 'c) t