sig
  type ('a, 'b) column =
      ?title:string -> 'b list -> ('-> 'b list) -> GTree.view_column
  class type ['a] columns =
    object
      method add_column_empty : GTree.view_column
      method add_column_pixbuf :
        ('a, GTree.cell_properties_pixbuf) Wtable.column
      method add_column_text : ('a, GTree.cell_properties_text) Wtable.column
      method add_column_toggle :
        ('a, GTree.cell_properties_toggle) Wtable.column
      method coerce : GObj.widget
      method count_selected : int
      method insert_row : '-> unit
      method is_selected : '-> bool
      method iter_selected : ('-> unit) -> unit
      method on_click : ('-> GTree.view_column -> unit) -> unit
      method on_double_click : ('-> GTree.view_column -> unit) -> unit
      method on_right_click : ('-> GTree.view_column -> unit) -> unit
      method on_selection : (unit -> unit) -> unit
      method pack : (GObj.widget -> unit) -> unit
      method reload : unit
      method scroll : GBin.scrolled_window
      method set_focus : '-> GTree.view_column -> unit
      method set_selection_mode : Gtk.Tags.selection_mode -> unit
      method update_all : unit
      method update_row : '-> unit
      method view : GTree.view
    end
  class type ['a] listmodel =
    object
      method get : int -> 'a
      method index : '-> int
      method reload : unit
      method size : int
    end
  class ['a] list :
    ?packing:(GObj.widget -> unit) ->
    ?width:int ->
    ?height:int ->
    ?headers:bool ->
    ?rules:bool ->
    'Wtable.listmodel ->
    object
      method add_column_empty : GTree.view_column
      method add_column_pixbuf : ('a, GTree.cell_properties_pixbuf) column
      method add_column_text : ('a, GTree.cell_properties_text) column
      method add_column_toggle : ('a, GTree.cell_properties_toggle) column
      method coerce : GObj.widget
      method count_selected : int
      method insert_row : '-> unit
      method is_selected : '-> bool
      method iter_selected : ('-> unit) -> unit
      method on_click : ('-> GTree.view_column -> unit) -> unit
      method on_double_click : ('-> GTree.view_column -> unit) -> unit
      method on_right_click : ('-> GTree.view_column -> unit) -> unit
      method on_selection : (unit -> unit) -> unit
      method pack : (GObj.widget -> unit) -> unit
      method reload : unit
      method scroll : GBin.scrolled_window
      method set_focus : '-> GTree.view_column -> unit
      method set_selection_mode : Gtk.Tags.selection_mode -> unit
      method update_all : unit
      method update_row : '-> unit
      method view : GTree.view
    end
  class type ['a] treemodel =
    object
      method child_at : 'a option -> int -> 'a
      method children : 'a option -> int
      method has_child : '-> bool
      method index : '-> int
      method parent : '-> 'a option
      method reload : unit
    end
  class ['a] tree :
    ?packing:(GObj.widget -> unit) ->
    ?width:int ->
    ?height:int ->
    ?headers:bool ->
    ?rules:bool ->
    'Wtable.treemodel ->
    object
      method add_column_empty : GTree.view_column
      method add_column_pixbuf : ('a, GTree.cell_properties_pixbuf) column
      method add_column_text : ('a, GTree.cell_properties_text) column
      method add_column_toggle : ('a, GTree.cell_properties_toggle) column
      method coerce : GObj.widget
      method count_selected : int
      method insert_row : '-> unit
      method is_selected : '-> bool
      method iter_selected : ('-> unit) -> unit
      method on_click : ('-> GTree.view_column -> unit) -> unit
      method on_double_click : ('-> GTree.view_column -> unit) -> unit
      method on_right_click : ('-> GTree.view_column -> unit) -> unit
      method on_selection : (unit -> unit) -> unit
      method pack : (GObj.widget -> unit) -> unit
      method reload : unit
      method scroll : GBin.scrolled_window
      method set_focus : '-> GTree.view_column -> unit
      method set_selection_mode : Gtk.Tags.selection_mode -> unit
      method update_all : unit
      method update_row : '-> unit
      method view : GTree.view
    end
end