Class Manipulators.trackball


class trackball : < mouse : < affect : Event.mouse_listener -> unit; .. >;
ticker : < affect : Event.frame_listener -> 'a; .. >; .. > ->
object .. end
A prototype 2D manipulator. Drag the mouse to modify a scaleable_2d. Typically that would be Scene.rotation_actuator.

** note: trackball is broken because the actuator system is in need of upkeeping **

The following code creates a cube that can be rotated by dragging the mouse.


	open FatCaml.Application
	
	let event_dispatcher = display_singleton#event_dispatcher in
	
	let cube = new cube and
	    rotation = new rotation_actuator and
	    trackball = new trackball event_dispatcher in

	trackball#affect (rotation :> scaleable_2d)
	rotation#affect  (cube :> gl_node) ;
	

Inherits
val mutable autospin : bool
val mutable dx : int
val mutable dy : int
method mouse_pressed : Sdlevent.mousebutton_event -> unit
method mouse_released : Sdlevent.mousebutton_event -> unit
method mouse_moved : Sdlevent.mousemotion_event -> unit
method mouse_dragged : Sdlevent.mousemotion_event -> unit
method do_tick : unit