sig
  val cast : 'Gobject.obj -> Gtk.statusbar Gtk.obj
  module P :
    sig val has_resize_grip : ([> `statusbar ], bool) Gobject.property end
  module S :
    sig
      val text_popped : ([> `statusbar ], int -> string -> unit) GtkSignal.t
      val text_pushed : ([> `statusbar ], int -> string -> unit) GtkSignal.t
    end
  val create : Gtk.statusbar Gobject.param list -> Gtk.statusbar Gtk.obj
  external get_context_id :
    [> `statusbar ] Gtk.obj -> string -> Gtk.statusbar_context
    = "ml_gtk_statusbar_get_context_id"
  external push :
    [> `statusbar ] Gtk.obj ->
    Gtk.statusbar_context -> text:string -> Gtk.statusbar_message
    = "ml_gtk_statusbar_push"
  external pop : [> `statusbar ] Gtk.obj -> Gtk.statusbar_context -> unit
    = "ml_gtk_statusbar_pop"
  external remove :
    [> `statusbar ] Gtk.obj ->
    Gtk.statusbar_context -> Gtk.statusbar_message -> unit
    = "ml_gtk_statusbar_remove"
  val make_params :
    cont:(([> `statusbar ] as 'a) Gobject.param list -> 'b) ->
    'Gobject.param list -> ?has_resize_grip:bool -> 'b
end