sig
  class list_item :
    Gtk.list_item Gtk.obj ->
    object
      val obj : Gtk.list_item Gtk.obj
      method add : GObj.widget -> unit
      method all_children : GObj.widget list
      method as_item : Gtk.list_item Gtk.obj
      method as_widget : Gtk.widget Gtk.obj
      method border_width : int
      method children : GObj.widget list
      method coerce : GObj.widget
      method connect : GContainer.item_signals
      method deselect : unit -> unit
      method destroy : unit -> unit
      method drag : GObj.drag_ops
      method event : GObj.event_ops
      method focus : GContainer.focus
      method get_oid : int
      method misc : GObj.misc_ops
      method remove : GObj.widget -> unit
      method resize_mode : Gtk.Tags.resize_mode
      method select : unit -> unit
      method set_border_width : int -> unit
      method set_resize_mode : Gtk.Tags.resize_mode -> unit
      method toggle : unit -> unit
    end
  val list_item :
    ?label:string ->
    ?packing:(GList.list_item -> unit) ->
    ?show:bool -> unit -> GList.list_item
  class liste_signals :
    Gtk.liste Gtk.obj ->
    object ('a)
      val obj : Gtk.liste Gtk.obj
      method add : callback:(GObj.widget -> unit) -> GtkSignal.id
      method after : 'a
      method destroy : callback:(unit -> unit) -> GtkSignal.id
      method remove : callback:(GObj.widget -> unit) -> GtkSignal.id
      method select_child :
        callback:(GList.list_item -> unit) -> GtkSignal.id
      method selection_changed : callback:(unit -> unit) -> GtkSignal.id
      method unselect_child :
        callback:(GList.list_item -> unit) -> GtkSignal.id
    end
  class liste :
    Gtk.liste Gtk.obj ->
    object
      val obj : Gtk.liste Gtk.obj
      method add : GList.list_item -> unit
      method all_children : GList.list_item list
      method append : GList.list_item -> unit
      method as_widget : Gtk.widget Gtk.obj
      method border_width : int
      method child_position : GList.list_item -> int
      method children : GList.list_item list
      method clear_items : start:int -> stop:int -> unit
      method coerce : GObj.widget
      method connect : GList.liste_signals
      method destroy : unit -> unit
      method drag : GObj.drag_ops
      method focus : GContainer.focus
      method get_oid : int
      method insert : GList.list_item -> pos:int -> unit
      method misc : GObj.misc_ops
      method prepend : GList.list_item -> unit
      method remove : GList.list_item -> unit
      method resize_mode : Gtk.Tags.resize_mode
      method select_item : pos:int -> unit
      method selection_mode : Gtk.Tags.selection_mode
      method set_border_width : int -> unit
      method set_resize_mode : Gtk.Tags.resize_mode -> unit
      method set_selection_mode : Gtk.Tags.selection_mode -> unit
      method unselect_item : pos:int -> unit
      method private wrap : Gtk.widget Gtk.obj -> GList.list_item
    end
  val liste :
    ?selection_mode:Gtk.Tags.selection_mode ->
    ?border_width:int ->
    ?width:int ->
    ?height:int ->
    ?packing:(GObj.widget -> unit) -> ?show:bool -> unit -> GList.liste
  class clist_signals :
    ([> Gtk.clist ] as 'b) Gtk.obj ->
    object ('a)
      val obj : 'Gtk.obj
      method add : callback:(GObj.widget -> unit) -> GtkSignal.id
      method after : 'a
      method click_column : callback:(int -> unit) -> GtkSignal.id
      method destroy : callback:(unit -> unit) -> GtkSignal.id
      method remove : callback:(GObj.widget -> unit) -> GtkSignal.id
      method resize_column : callback:(int -> int -> unit) -> GtkSignal.id
      method scroll_horizontal :
        callback:(Gtk.Tags.scroll_type -> pos:Gtk.clampf -> unit) ->
        GtkSignal.id
      method scroll_vertical :
        callback:(Gtk.Tags.scroll_type -> pos:Gtk.clampf -> unit) ->
        GtkSignal.id
      method select_all : callback:(unit -> unit) -> GtkSignal.id
      method select_row :
        callback:(row:int ->
                  column:int -> event:GdkEvent.Button.t option -> unit) ->
        GtkSignal.id
      method unselect_all : callback:(unit -> unit) -> GtkSignal.id
      method unselect_row :
        callback:(row:int ->
                  column:int -> event:GdkEvent.Button.t option -> unit) ->
        GtkSignal.id
    end
  class ['a] clist :
    Gtk.clist Gtk.obj ->
    object
      val obj : Gtk.clist Gtk.obj
      method append : string list -> int
      method as_widget : Gtk.widget Gtk.obj
      method cell_pixmap : int -> int -> GDraw.pixmap option
      method cell_style : int -> int -> GObj.style option
      method cell_text : int -> int -> string
      method cell_type : int -> int -> Gtk.Tags.cell_type
      method clear : unit -> unit
      method coerce : GObj.widget
      method column_title : int -> string
      method column_widget : int -> GObj.widget
      method columns : int
      method columns_autosize : unit -> unit
      method connect : GList.clist_signals
      method destroy : unit -> unit
      method drag : GObj.drag_ops
      method event : GObj.event_ops
      method focus_row : int
      method freeze : unit -> unit
      method get_oid : int
      method get_row_column : x:int -> y:int -> int * int
      method get_row_data : int -> 'a
      method get_row_state : int -> Gtk.Tags.state_type
      method hadjustment : GData.adjustment
      method insert : row:int -> string list -> int
      method misc : GObj.misc_ops
      method moveto :
        ?row_align:Gtk.clampf -> ?col_align:Gtk.clampf -> int -> int -> unit
      method optimal_column_width : int -> int
      method prepend : string list -> int
      method remove : row:int -> unit
      method row_is_visible : int -> Gtk.Tags.visibility
      method row_move : int -> dst:int -> unit
      method row_selectable : int -> bool
      method row_style : int -> GObj.style option
      method rows : int
      method scroll_horizontal :
        Gtk.Tags.scroll_type -> pos:Gtk.clampf -> unit
      method scroll_vertical : Gtk.Tags.scroll_type -> pos:Gtk.clampf -> unit
      method select : int -> int -> unit
      method select_all : unit -> unit
      method set_border_width : int -> unit
      method set_button_actions : int -> Gtk.Tags.button_action list -> unit
      method set_cell :
        ?text:string ->
        ?pixmap:GDraw.pixmap ->
        ?spacing:int -> ?style:GObj.style -> int -> int -> unit
      method set_column :
        ?widget:GObj.widget ->
        ?title:string ->
        ?title_active:bool ->
        ?justification:Gtk.Tags.justification ->
        ?visibility:bool ->
        ?resizeable:bool ->
        ?auto_resize:bool ->
        ?width:int -> ?min_width:int -> ?max_width:int -> int -> unit
      method set_hadjustment : GData.adjustment -> unit
      method set_reorderable : bool -> unit
      method set_row :
        ?foreground:GDraw.optcolor ->
        ?background:GDraw.optcolor ->
        ?selectable:bool -> ?style:GObj.style -> int -> unit
      method set_row_data : int -> data:'-> unit
      method set_row_height : int -> unit
      method set_selection_mode : Gtk.Tags.selection_mode -> unit
      method set_shadow_type : Gtk.Tags.shadow_type -> unit
      method set_shift : int -> int -> vertical:int -> horizontal:int -> unit
      method set_sort :
        ?auto:bool -> ?column:int -> ?dir:Gtk.Tags.sort_type -> unit -> unit
      method set_titles_active : bool -> unit
      method set_titles_show : bool -> unit
      method set_use_drag_icons : bool -> unit
      method set_vadjustment : GData.adjustment -> unit
      method sort : unit -> unit
      method swap_rows : int -> int -> unit
      method thaw : unit -> unit
      method unselect : int -> int -> unit
      method unselect_all : unit -> unit
      method vadjustment : GData.adjustment
    end
  val clist :
    ?columns:int ->
    ?hadjustment:GData.adjustment ->
    ?vadjustment:GData.adjustment ->
    ?titles:string list ->
    ?button_actions:(int * Gtk.Tags.button_action list) list ->
    ?titles_show:bool ->
    ?auto_sort:bool ->
    ?sort_column:int ->
    ?sort_type:Gtk.Tags.sort_type ->
    ?reorderable:bool ->
    ?row_height:int ->
    ?selection_mode:Gtk.Tags.selection_mode ->
    ?shadow_type:Gtk.Tags.shadow_type ->
    ?titles_active:bool ->
    ?use_drag_icons:bool ->
    ?border_width:int ->
    ?width:int ->
    ?height:int ->
    ?packing:(GObj.widget -> unit) ->
    ?show:bool -> unit -> string GList.clist
  val clist_poly :
    ?columns:int ->
    ?hadjustment:GData.adjustment ->
    ?vadjustment:GData.adjustment ->
    ?titles:string list ->
    ?button_actions:(int * Gtk.Tags.button_action list) list ->
    ?titles_show:bool ->
    ?auto_sort:bool ->
    ?sort_column:int ->
    ?sort_type:Gtk.Tags.sort_type ->
    ?reorderable:bool ->
    ?row_height:int ->
    ?selection_mode:Gtk.Tags.selection_mode ->
    ?shadow_type:Gtk.Tags.shadow_type ->
    ?titles_active:bool ->
    ?use_drag_icons:bool ->
    ?border_width:int ->
    ?width:int ->
    ?height:int ->
    ?packing:(GObj.widget -> unit) -> ?show:bool -> unit -> 'GList.clist
end