sig
  val cast : 'Gobject.obj -> Gtk.clist Gtk.obj
  module P :
    sig
      val n_columns : ([> `clist ], int) Gobject.property
      val sort_type : ([> `clist ], GtkEnums.sort_type) Gobject.property
      val reorderable : ([> `clist ], bool) Gobject.property
      val row_height : ([> `clist ], int) Gobject.property
      val selection_mode :
        ([> `clist ], GtkEnums.selection_mode) Gobject.property
      val shadow_type : ([> `clist ], GtkEnums.shadow_type) Gobject.property
      val titles_active : ([> `clist ], bool) Gobject.property
      val use_drag_icons : ([> `clist ], bool) Gobject.property
    end
  module S :
    sig
      val click_column : ([> `clist ], int -> unit) GtkSignal.t
      val resize_column : ([> `clist ], int -> int -> unit) GtkSignal.t
      val scroll_horizontal :
        ([> `clist ], GtkEnums.scroll_type -> pos:float -> unit) GtkSignal.t
      val scroll_vertical :
        ([> `clist ], GtkEnums.scroll_type -> pos:float -> unit) GtkSignal.t
      val select_all : ([> `clist ], unit -> unit) GtkSignal.t
      val select_row :
        ([> `clist ],
         row:int -> column:int -> event:GdkEvent.Button.t option -> unit)
        GtkSignal.t
      val unselect_all : ([> `clist ], unit -> unit) GtkSignal.t
      val unselect_row :
        ([> `clist ],
         row:int -> column:int -> event:GdkEvent.Button.t option -> unit)
        GtkSignal.t
    end
  val make_params :
    cont:(([> `clist ] as 'a) Gobject.param list -> 'b) ->
    'Gobject.param list ->
    ?sort_type:GtkEnums.sort_type ->
    ?reorderable:bool ->
    ?row_height:int ->
    ?selection_mode:GtkEnums.selection_mode ->
    ?shadow_type:GtkEnums.shadow_type ->
    ?titles_active:bool -> ?use_drag_icons:bool -> 'b
end