Module Event


module Event: sig .. end
Interface to GUI events (mouse, keyboard, timer). An example of listening for key events:

	open FatCaml.Application
	
	let event_dispatcher = display_singleton#event_dispatcher in
	let listener = new object 
		inherit Event.keyboard_listener
		method key_pressed e =
			if e.Sdlevent.keysym = Sdlkey.KEY_SPACE then
				print_endline "Space key pressed!"
			else
				print_endline "A key other than space was pressed!"
		method key_release _ =
			print_endline "Key released!"
	end
	in event_dispatcher#key#affect listener
Remember, if you have additional methods in your listener you must cast it to a keyboard_listener like so:

	in event_dispatcher#key#affect (listener :> keyboard_listener)


class virtual frame_listener : object .. end
Pass to Event.event_dispatcher.ticker.
class virtual mouse_listener : object .. end
Pass to Event.event_dispatcher.mouse.
class virtual keyboard_listener : object .. end
Pass to Event.event_dispatcher.key.
class event_dispatcher : object .. end
Dispatches events to event listeners.