sig
type gctx
type color = { r : int; g : int; b : int; }
val black : Gctx.color
val white : Gctx.color
val red : Gctx.color
val green : Gctx.color
val blue : Gctx.color
val yellow : Gctx.color
val cyan : Gctx.color
val magenta : Gctx.color
val open_graphics : unit -> unit
val top_level : Gctx.gctx
val translate : Gctx.gctx -> int * int -> Gctx.gctx
val with_color : Gctx.gctx -> Gctx.color -> Gctx.gctx
type position = int * int
type dimension = int * int
val draw_line : Gctx.gctx -> Gctx.position -> Gctx.position -> unit
val draw_string : Gctx.gctx -> Gctx.position -> string -> unit
val draw_rect : Gctx.gctx -> Gctx.position -> Gctx.dimension -> unit
val fill_rect : Gctx.gctx -> Gctx.position -> Gctx.dimension -> unit
val draw_ellipse : Gctx.gctx -> Gctx.position -> int -> int -> unit
val text_size : string -> Gctx.dimension
type event
type event_type =
KeyPress of char
| MouseDown
| MouseUp
| MouseMove
| MouseDrag
val event_type : Gctx.event -> Gctx.event_type
val event_pos : Gctx.event -> Gctx.gctx -> Gctx.position
val wait_for_event : unit -> Gctx.event
val make_test_event : Gctx.event_type -> Gctx.position -> Gctx.event
end