sig
  val point : [> `drawable ] Gobject.obj -> Gdk.gc -> x:int -> y:int -> unit
  val line :
    [> `drawable ] Gobject.obj ->
    Gdk.gc -> x:int -> y:int -> x:int -> y:int -> unit
  val rectangle :
    [> `drawable ] Gobject.obj ->
    Gdk.gc ->
    x:int -> y:int -> width:int -> height:int -> ?filled:bool -> unit -> unit
  val arc :
    [> `drawable ] Gobject.obj ->
    Gdk.gc ->
    x:int ->
    y:int ->
    width:int ->
    height:int ->
    ?filled:bool -> ?start:float -> ?angle:float -> unit -> unit
  val polygon :
    [> `drawable ] Gobject.obj ->
    Gdk.gc -> ?filled:bool -> (int * int) list -> unit
  val string :
    [> `drawable ] Gobject.obj ->
    font:Gdk.font -> Gdk.gc -> x:int -> y:int -> string -> unit
  val layout :
    [> `drawable ] Gobject.obj ->
    Gdk.gc ->
    x:int ->
    y:int -> Pango.layout -> ?fore:Gdk.color -> ?back:Gdk.color -> unit
  val image :
    [> `drawable ] Gobject.obj ->
    Gdk.gc ->
    ?xsrc:int ->
    ?ysrc:int ->
    ?xdest:int ->
    ?ydest:int -> ?width:int -> ?height:int -> Gdk.image -> unit
  val pixmap :
    [> `drawable ] Gobject.obj ->
    Gdk.gc ->
    ?xsrc:int ->
    ?ysrc:int ->
    ?xdest:int ->
    ?ydest:int -> ?width:int -> ?height:int -> Gdk.pixmap -> unit
  val points :
    [> `drawable ] Gobject.obj -> Gdk.gc -> (int * int) list -> unit
  val lines :
    [> `drawable ] Gobject.obj -> Gdk.gc -> (int * int) list -> unit
  val segments :
    [> `drawable ] Gobject.obj ->
    Gdk.gc -> ((int * int) * (int * int)) list -> unit
end