sig
  val cast : 'Gobject.obj -> Gtk.dialog Gtk.obj
  module P :
    sig val has_separator : ([> `dialog ], bool) Gobject.property end
  module S :
    sig
      val close : ([> `dialog ], unit -> unit) GtkSignal.t
      val response : ([> `dialog ], int -> unit) GtkSignal.t
    end
  val create : Gtk.dialog Gobject.param list -> Gtk.dialog Gtk.obj
  external action_area : [> `dialog ] Gtk.obj -> Gtk.button_box Gtk.obj
    = "ml_GtkDialog_action_area"
  external vbox : [> `dialog ] Gtk.obj -> Gtk.box Gtk.obj
    = "ml_GtkDialog_vbox"
  external add_button : [> `dialog ] Gtk.obj -> string -> int -> unit
    = "ml_gtk_dialog_add_button"
  external response : [> `dialog ] Gtk.obj -> int -> unit
    = "ml_gtk_dialog_response"
  external set_response_sensitive :
    [> `dialog ] Gtk.obj -> int -> bool -> unit
    = "ml_gtk_dialog_set_response_sensitive"
  external set_default_response : [> `dialog ] Gtk.obj -> int -> unit
    = "ml_gtk_dialog_set_default_response"
  external run : [> `dialog ] Gtk.obj -> int = "ml_gtk_dialog_run"
  val std_response : GtkEnums.response -> int
  val decode_response : int -> GtkEnums.response
end