sig
  class window_skel :
    ([> Gtk.window ] as 'a) Gtk.obj ->
    object
      val obj : 'Gtk.obj
      method accept_focus : bool
      method activate_default : unit -> bool
      method activate_focus : unit -> bool
      method add : GObj.widget -> unit
      method add_accel_group : Gtk.accel_group -> unit
      method all_children : GObj.widget list
      method allow_grow : bool
      method allow_shrink : bool
      method as_widget : Gtk.widget Gtk.obj
      method as_window : Gtk.window Gtk.obj
      method border_width : int
      method child : GObj.widget
      method children : GObj.widget list
      method coerce : GObj.widget
      method decorated : bool
      method default_height : int
      method default_width : int
      method deiconify : unit -> unit
      method deletable : bool
      method destroy : unit -> unit
      method destroy_with_parent : bool
      method drag : GObj.drag_ops
      method event : GObj.event_ops
      method focus : GContainer.focus
      method focus_on_map : bool
      method get_oid : int
      method gravity : GdkEnums.gravity
      method has_toplevel_focus : bool
      method icon : GdkPixbuf.pixbuf option
      method icon_name : string
      method iconify : unit -> unit
      method is_active : bool
      method kind : Gtk.Tags.window_type
      method misc : GObj.misc_ops
      method modal : bool
      method move : x:int -> y:int -> unit
      method opacity : float
      method parse_geometry : string -> bool
      method position : Gtk.Tags.window_position
      method present : unit -> unit
      method remove : GObj.widget -> unit
      method resizable : bool
      method resize : width:int -> height:int -> unit
      method resize_mode : Gtk.Tags.resize_mode
      method role : string
      method screen : Gdk.screen
      method set_accept_focus : bool -> unit
      method set_allow_grow : bool -> unit
      method set_allow_shrink : bool -> unit
      method set_border_width : int -> unit
      method set_decorated : bool -> unit
      method set_default_height : int -> unit
      method set_default_size : width:int -> height:int -> unit
      method set_default_width : int -> unit
      method set_deletable : bool -> unit
      method set_destroy_with_parent : bool -> unit
      method set_focus_on_map : bool -> unit
      method set_geometry_hints :
        ?min_size:int * int ->
        ?max_size:int * int ->
        ?base_size:int * int ->
        ?aspect:float * float ->
        ?resize_inc:int * int ->
        ?win_gravity:Gdk.Tags.gravity ->
        ?pos:bool -> ?user_pos:bool -> ?user_size:bool -> GObj.widget -> unit
      method set_gravity : Gdk.Tags.gravity -> unit
      method set_icon : GdkPixbuf.pixbuf option -> unit
      method set_icon_name : string -> unit
      method set_modal : bool -> unit
      method set_opacity : float -> unit
      method set_position : Gtk.Tags.window_position -> unit
      method set_resizable : bool -> unit
      method set_resize_mode : Gtk.Tags.resize_mode -> unit
      method set_role : string -> unit
      method set_screen : Gdk.screen -> unit
      method set_skip_pager_hint : bool -> unit
      method set_skip_taskbar_hint : bool -> unit
      method set_title : string -> unit
      method set_transient_for : Gtk.window Gtk.obj -> unit
      method set_type_hint : Gdk.Tags.window_type_hint -> unit
      method set_urgency_hint : bool -> unit
      method set_wm_class : string -> unit
      method set_wm_name : string -> unit
      method show : unit -> unit
      method skip_pager_hint : bool
      method skip_taskbar_hint : bool
      method title : string
      method type_hint : Gdk.Tags.window_type_hint
      method urgency_hint : bool
    end
  class window :
    ([> Gtk.window ] as 'a) Gtk.obj ->
    object
      val obj : 'Gtk.obj
      method accept_focus : bool
      method activate_default : unit -> bool
      method activate_focus : unit -> bool
      method add : GObj.widget -> unit
      method add_accel_group : Gtk.accel_group -> unit
      method all_children : GObj.widget list
      method allow_grow : bool
      method allow_shrink : bool
      method as_widget : Gtk.widget Gtk.obj
      method as_window : Gtk.window Gtk.obj
      method border_width : int
      method child : GObj.widget
      method children : GObj.widget list
      method coerce : GObj.widget
      method connect : GContainer.container_signals
      method decorated : bool
      method default_height : int
      method default_width : int
      method deiconify : unit -> unit
      method deletable : bool
      method destroy : unit -> unit
      method destroy_with_parent : bool
      method drag : GObj.drag_ops
      method event : GObj.event_ops
      method focus : GContainer.focus
      method focus_on_map : bool
      method fullscreen : unit -> unit
      method get_oid : int
      method gravity : GdkEnums.gravity
      method has_toplevel_focus : bool
      method icon : GdkPixbuf.pixbuf option
      method icon_name : string
      method iconify : unit -> unit
      method is_active : bool
      method kind : Gtk.Tags.window_type
      method maximize : unit -> unit
      method misc : GObj.misc_ops
      method modal : bool
      method move : x:int -> y:int -> unit
      method opacity : float
      method parse_geometry : string -> bool
      method position : Gtk.Tags.window_position
      method present : unit -> unit
      method remove : GObj.widget -> unit
      method resizable : bool
      method resize : width:int -> height:int -> unit
      method resize_mode : Gtk.Tags.resize_mode
      method role : string
      method screen : Gdk.screen
      method set_accept_focus : bool -> unit
      method set_allow_grow : bool -> unit
      method set_allow_shrink : bool -> unit
      method set_border_width : int -> unit
      method set_decorated : bool -> unit
      method set_default_height : int -> unit
      method set_default_size : width:int -> height:int -> unit
      method set_default_width : int -> unit
      method set_deletable : bool -> unit
      method set_destroy_with_parent : bool -> unit
      method set_focus_on_map : bool -> unit
      method set_geometry_hints :
        ?min_size:int * int ->
        ?max_size:int * int ->
        ?base_size:int * int ->
        ?aspect:float * float ->
        ?resize_inc:int * int ->
        ?win_gravity:Gdk.Tags.gravity ->
        ?pos:bool -> ?user_pos:bool -> ?user_size:bool -> GObj.widget -> unit
      method set_gravity : Gdk.Tags.gravity -> unit
      method set_icon : GdkPixbuf.pixbuf option -> unit
      method set_icon_name : string -> unit
      method set_modal : bool -> unit
      method set_opacity : float -> unit
      method set_position : Gtk.Tags.window_position -> unit
      method set_resizable : bool -> unit
      method set_resize_mode : Gtk.Tags.resize_mode -> unit
      method set_role : string -> unit
      method set_screen : Gdk.screen -> unit
      method set_skip_pager_hint : bool -> unit
      method set_skip_taskbar_hint : bool -> unit
      method set_title : string -> unit
      method set_transient_for : Gtk.window Gtk.obj -> unit
      method set_type_hint : Gdk.Tags.window_type_hint -> unit
      method set_urgency_hint : bool -> unit
      method set_wm_class : string -> unit
      method set_wm_name : string -> unit
      method show : unit -> unit
      method skip_pager_hint : bool
      method skip_taskbar_hint : bool
      method stick : unit -> unit
      method title : string
      method type_hint : Gdk.Tags.window_type_hint
      method unfullscreen : unit -> unit
      method unmaximize : unit -> unit
      method unstick : unit -> unit
      method urgency_hint : bool
    end
  val window :
    ?kind:Gtk.Tags.window_type ->
    ?title:string ->
    ?allow_grow:bool ->
    ?allow_shrink:bool ->
    ?decorated:bool ->
    ?deletable:bool ->
    ?focus_on_map:bool ->
    ?icon:GdkPixbuf.pixbuf ->
    ?icon_name:string ->
    ?modal:bool ->
    ?position:Gtk.Tags.window_position ->
    ?resizable:bool ->
    ?screen:Gdk.screen ->
    ?type_hint:Gdk.Tags.window_type_hint ->
    ?urgency_hint:bool ->
    ?wm_name:string ->
    ?wm_class:string ->
    ?border_width:int ->
    ?width:int -> ?height:int -> ?show:bool -> unit -> GWindow.window
  val toplevel : #GObj.widget -> GWindow.window option
  class ['a] dialog_signals :
    ([> Gtk.dialog ] as 'c) Gtk.obj ->
    decode:(int -> 'a) ->
    object ('b)
      val obj : 'Gtk.obj
      method add : callback:(GObj.widget -> unit) -> GtkSignal.id
      method after : 'b
      method close : callback:(unit -> unit) -> GtkSignal.id
      method destroy : callback:(unit -> unit) -> GtkSignal.id
      method remove : callback:(GObj.widget -> unit) -> GtkSignal.id
      method response : callback:('-> unit) -> GtkSignal.id
    end
  class ['a] dialog_skel :
    ([> Gtk.dialog ] as 'b) Gtk.obj ->
    object
      constraint 'a = [> `DELETE_EVENT ]
      val obj : 'Gtk.obj
      method accept_focus : bool
      method action_area : GPack.button_box
      method activate_default : unit -> bool
      method activate_focus : unit -> bool
      method add : GObj.widget -> unit
      method add_accel_group : Gtk.accel_group -> unit
      method all_children : GObj.widget list
      method allow_grow : bool
      method allow_shrink : bool
      method as_widget : Gtk.widget Gtk.obj
      method as_window : Gtk.window Gtk.obj
      method border_width : int
      method child : GObj.widget
      method children : GObj.widget list
      method coerce : GObj.widget
      method private decode : int -> 'a
      method decorated : bool
      method default_height : int
      method default_width : int
      method deiconify : unit -> unit
      method deletable : bool
      method destroy : unit -> unit
      method destroy_with_parent : bool
      method drag : GObj.drag_ops
      method private encode : '-> int
      method event : GObj.event_ops
      method focus : GContainer.focus
      method focus_on_map : bool
      method get_oid : int
      method gravity : GdkEnums.gravity
      method has_separator : bool
      method has_toplevel_focus : bool
      method icon : GdkPixbuf.pixbuf option
      method icon_name : string
      method iconify : unit -> unit
      method is_active : bool
      method kind : Gtk.Tags.window_type
      method misc : GObj.misc_ops
      method modal : bool
      method move : x:int -> y:int -> unit
      method opacity : float
      method parse_geometry : string -> bool
      method position : Gtk.Tags.window_position
      method present : unit -> unit
      method remove : GObj.widget -> unit
      method resizable : bool
      method resize : width:int -> height:int -> unit
      method resize_mode : Gtk.Tags.resize_mode
      method response : '-> unit
      method role : string
      method run : unit -> 'a
      method screen : Gdk.screen
      method set_accept_focus : bool -> unit
      method set_allow_grow : bool -> unit
      method set_allow_shrink : bool -> unit
      method set_border_width : int -> unit
      method set_decorated : bool -> unit
      method set_default_height : int -> unit
      method set_default_response : '-> unit
      method set_default_size : width:int -> height:int -> unit
      method set_default_width : int -> unit
      method set_deletable : bool -> unit
      method set_destroy_with_parent : bool -> unit
      method set_focus_on_map : bool -> unit
      method set_geometry_hints :
        ?min_size:int * int ->
        ?max_size:int * int ->
        ?base_size:int * int ->
        ?aspect:float * float ->
        ?resize_inc:int * int ->
        ?win_gravity:Gdk.Tags.gravity ->
        ?pos:bool -> ?user_pos:bool -> ?user_size:bool -> GObj.widget -> unit
      method set_gravity : Gdk.Tags.gravity -> unit
      method set_has_separator : bool -> unit
      method set_icon : GdkPixbuf.pixbuf option -> unit
      method set_icon_name : string -> unit
      method set_modal : bool -> unit
      method set_opacity : float -> unit
      method set_position : Gtk.Tags.window_position -> unit
      method set_resizable : bool -> unit
      method set_resize_mode : Gtk.Tags.resize_mode -> unit
      method set_response_sensitive : '-> bool -> unit
      method set_role : string -> unit
      method set_screen : Gdk.screen -> unit
      method set_skip_pager_hint : bool -> unit
      method set_skip_taskbar_hint : bool -> unit
      method set_title : string -> unit
      method set_transient_for : Gtk.window Gtk.obj -> unit
      method set_type_hint : Gdk.Tags.window_type_hint -> unit
      method set_urgency_hint : bool -> unit
      method set_wm_class : string -> unit
      method set_wm_name : string -> unit
      method show : unit -> unit
      method skip_pager_hint : bool
      method skip_taskbar_hint : bool
      method title : string
      method type_hint : Gdk.Tags.window_type_hint
      method urgency_hint : bool
      method vbox : GPack.box
    end
  class ['a] dialog_ext :
    [> Gtk.dialog ] Gtk.obj ->
    object
      constraint 'a = [> `DELETE_EVENT ]
      val obj : [> Gtk.dialog ] Gtk.obj
      method accept_focus : bool
      method action_area : GPack.button_box
      method activate_default : unit -> bool
      method activate_focus : unit -> bool
      method add : GObj.widget -> unit
      method add_accel_group : Gtk.accel_group -> unit
      method add_button : string -> '-> unit
      method add_button_stock : GtkStock.id -> '-> unit
      method all_children : GObj.widget list
      method allow_grow : bool
      method allow_shrink : bool
      method as_widget : Gtk.widget Gtk.obj
      method as_window : Gtk.window Gtk.obj
      method border_width : int
      method child : GObj.widget
      method children : GObj.widget list
      method coerce : GObj.widget
      method private decode : int -> 'a
      method decorated : bool
      method default_height : int
      method default_width : int
      method deiconify : unit -> unit
      method deletable : bool
      method destroy : unit -> unit
      method destroy_with_parent : bool
      method drag : GObj.drag_ops
      method private encode : '-> int
      method event : GObj.event_ops
      method focus : GContainer.focus
      method focus_on_map : bool
      method get_oid : int
      method gravity : GdkEnums.gravity
      method has_separator : bool
      method has_toplevel_focus : bool
      method icon : GdkPixbuf.pixbuf option
      method icon_name : string
      method iconify : unit -> unit
      method is_active : bool
      method kind : Gtk.Tags.window_type
      method misc : GObj.misc_ops
      method modal : bool
      method move : x:int -> y:int -> unit
      method opacity : float
      method parse_geometry : string -> bool
      method position : Gtk.Tags.window_position
      method present : unit -> unit
      method remove : GObj.widget -> unit
      method resizable : bool
      method resize : width:int -> height:int -> unit
      method resize_mode : Gtk.Tags.resize_mode
      method response : '-> unit
      method role : string
      method run : unit -> 'a
      method screen : Gdk.screen
      method set_accept_focus : bool -> unit
      method set_allow_grow : bool -> unit
      method set_allow_shrink : bool -> unit
      method set_border_width : int -> unit
      method set_decorated : bool -> unit
      method set_default_height : int -> unit
      method set_default_response : '-> unit
      method set_default_size : width:int -> height:int -> unit
      method set_default_width : int -> unit
      method set_deletable : bool -> unit
      method set_destroy_with_parent : bool -> unit
      method set_focus_on_map : bool -> unit
      method set_geometry_hints :
        ?min_size:int * int ->
        ?max_size:int * int ->
        ?base_size:int * int ->
        ?aspect:float * float ->
        ?resize_inc:int * int ->
        ?win_gravity:Gdk.Tags.gravity ->
        ?pos:bool -> ?user_pos:bool -> ?user_size:bool -> GObj.widget -> unit
      method set_gravity : Gdk.Tags.gravity -> unit
      method set_has_separator : bool -> unit
      method set_icon : GdkPixbuf.pixbuf option -> unit
      method set_icon_name : string -> unit
      method set_modal : bool -> unit
      method set_opacity : float -> unit
      method set_position : Gtk.Tags.window_position -> unit
      method set_resizable : bool -> unit
      method set_resize_mode : Gtk.Tags.resize_mode -> unit
      method set_response_sensitive : '-> bool -> unit
      method set_role : string -> unit
      method set_screen : Gdk.screen -> unit
      method set_skip_pager_hint : bool -> unit
      method set_skip_taskbar_hint : bool -> unit
      method set_title : string -> unit
      method set_transient_for : Gtk.window Gtk.obj -> unit
      method set_type_hint : Gdk.Tags.window_type_hint -> unit
      method set_urgency_hint : bool -> unit
      method set_wm_class : string -> unit
      method set_wm_name : string -> unit
      method show : unit -> unit
      method skip_pager_hint : bool
      method skip_taskbar_hint : bool
      method title : string
      method type_hint : Gdk.Tags.window_type_hint
      method urgency_hint : bool
      method vbox : GPack.box
    end
  class ['a] dialog :
    [> Gtk.dialog ] Gtk.obj ->
    object
      constraint 'a = [> `DELETE_EVENT ]
      val obj : [> Gtk.dialog ] Gtk.obj
      method accept_focus : bool
      method action_area : GPack.button_box
      method activate_default : unit -> bool
      method activate_focus : unit -> bool
      method add : GObj.widget -> unit
      method add_accel_group : Gtk.accel_group -> unit
      method add_button : string -> '-> unit
      method add_button_stock : GtkStock.id -> '-> unit
      method all_children : GObj.widget list
      method allow_grow : bool
      method allow_shrink : bool
      method as_widget : Gtk.widget Gtk.obj
      method as_window : Gtk.window Gtk.obj
      method border_width : int
      method child : GObj.widget
      method children : GObj.widget list
      method coerce : GObj.widget
      method connect : 'GWindow.dialog_signals
      method private decode : int -> 'a
      method decorated : bool
      method default_height : int
      method default_width : int
      method deiconify : unit -> unit
      method deletable : bool
      method destroy : unit -> unit
      method destroy_with_parent : bool
      method drag : GObj.drag_ops
      method private encode : '-> int
      method event : GObj.event_ops
      method focus : GContainer.focus
      method focus_on_map : bool
      method get_oid : int
      method gravity : GdkEnums.gravity
      method has_separator : bool
      method has_toplevel_focus : bool
      method icon : GdkPixbuf.pixbuf option
      method icon_name : string
      method iconify : unit -> unit
      method is_active : bool
      method kind : Gtk.Tags.window_type
      method misc : GObj.misc_ops
      method modal : bool
      method move : x:int -> y:int -> unit
      method opacity : float
      method parse_geometry : string -> bool
      method position : Gtk.Tags.window_position
      method present : unit -> unit
      method remove : GObj.widget -> unit
      method resizable : bool
      method resize : width:int -> height:int -> unit
      method resize_mode : Gtk.Tags.resize_mode
      method response : '-> unit
      method role : string
      method run : unit -> 'a
      method screen : Gdk.screen
      method set_accept_focus : bool -> unit
      method set_allow_grow : bool -> unit
      method set_allow_shrink : bool -> unit
      method set_border_width : int -> unit
      method set_decorated : bool -> unit
      method set_default_height : int -> unit
      method set_default_response : '-> unit
      method set_default_size : width:int -> height:int -> unit
      method set_default_width : int -> unit
      method set_deletable : bool -> unit
      method set_destroy_with_parent : bool -> unit
      method set_focus_on_map : bool -> unit
      method set_geometry_hints :
        ?min_size:int * int ->
        ?max_size:int * int ->
        ?base_size:int * int ->
        ?aspect:float * float ->
        ?resize_inc:int * int ->
        ?win_gravity:Gdk.Tags.gravity ->
        ?pos:bool -> ?user_pos:bool -> ?user_size:bool -> GObj.widget -> unit
      method set_gravity : Gdk.Tags.gravity -> unit
      method set_has_separator : bool -> unit
      method set_icon : GdkPixbuf.pixbuf option -> unit
      method set_icon_name : string -> unit
      method set_modal : bool -> unit
      method set_opacity : float -> unit
      method set_position : Gtk.Tags.window_position -> unit
      method set_resizable : bool -> unit
      method set_resize_mode : Gtk.Tags.resize_mode -> unit
      method set_response_sensitive : '-> bool -> unit
      method set_role : string -> unit
      method set_screen : Gdk.screen -> unit
      method set_skip_pager_hint : bool -> unit
      method set_skip_taskbar_hint : bool -> unit
      method set_title : string -> unit
      method set_transient_for : Gtk.window Gtk.obj -> unit
      method set_type_hint : Gdk.Tags.window_type_hint -> unit
      method set_urgency_hint : bool -> unit
      method set_wm_class : string -> unit
      method set_wm_name : string -> unit
      method show : unit -> unit
      method skip_pager_hint : bool
      method skip_taskbar_hint : bool
      method title : string
      method type_hint : Gdk.Tags.window_type_hint
      method urgency_hint : bool
      method vbox : GPack.box
    end
  val dialog :
    ?no_separator:bool ->
    ?parent:#GWindow.window_skel ->
    ?destroy_with_parent:bool ->
    ?title:string ->
    ?allow_grow:bool ->
    ?allow_shrink:bool ->
    ?decorated:bool ->
    ?deletable:bool ->
    ?focus_on_map:bool ->
    ?icon:GdkPixbuf.pixbuf ->
    ?icon_name:string ->
    ?modal:bool ->
    ?position:Gtk.Tags.window_position ->
    ?resizable:bool ->
    ?screen:Gdk.screen ->
    ?type_hint:Gdk.Tags.window_type_hint ->
    ?urgency_hint:bool ->
    ?wm_name:string ->
    ?wm_class:string ->
    ?border_width:int ->
    ?width:int ->
    ?height:int -> ?show:bool -> unit -> [> `DELETE_EVENT ] GWindow.dialog
  type any_response =
      [ `ACCEPT
      | `APPLY
      | `CANCEL
      | `CLOSE
      | `DELETE_EVENT
      | `HELP
      | `NO
      | `NONE
      | `OK
      | `OTHER of int
      | `REJECT
      | `YES ]
  class dialog_any : [> Gtk.dialog ] Gtk.obj -> [GWindow.any_response] dialog
  type 'a buttons
  module Buttons :
    sig
      val ok : [> `OK ] GWindow.buttons
      val close : [> `CLOSE ] GWindow.buttons
      val yes_no : [> `NO | `YES ] GWindow.buttons
      val ok_cancel : [> `CANCEL | `OK ] GWindow.buttons
      type color_selection = [ `CANCEL | `DELETE_EVENT | `HELP | `OK ]
      type file_selection = [ `CANCEL | `DELETE_EVENT | `HELP | `OK ]
      type font_selection = [ `APPLY | `CANCEL | `DELETE_EVENT | `OK ]
      type about = [ `CANCEL | `CLOSE | `DELETE_EVENT ]
    end
  class type ['a] message_dialog =
    object
      constraint 'a = [> `DELETE_EVENT ]
      val obj : [> Gtk.message_dialog ] Gtk.obj
      method accept_focus : bool
      method action_area : GPack.button_box
      method activate_default : unit -> bool
      method activate_focus : unit -> bool
      method add : GObj.widget -> unit
      method add_accel_group : Gtk.accel_group -> unit
      method all_children : GObj.widget list
      method allow_grow : bool
      method allow_shrink : bool
      method as_widget : Gtk.widget Gtk.obj
      method as_window : Gtk.window Gtk.obj
      method border_width : int
      method child : GObj.widget
      method children : GObj.widget list
      method coerce : GObj.widget
      method connect : 'GWindow.dialog_signals
      method private decode : int -> 'a
      method decorated : bool
      method default_height : int
      method default_width : int
      method deiconify : unit -> unit
      method deletable : bool
      method destroy : unit -> unit
      method destroy_with_parent : bool
      method drag : GObj.drag_ops
      method private encode : '-> int
      method event : GObj.event_ops
      method focus : GContainer.focus
      method focus_on_map : bool
      method get_oid : int
      method gravity : GdkEnums.gravity
      method has_separator : bool
      method has_toplevel_focus : bool
      method icon : GdkPixbuf.pixbuf option
      method icon_name : string
      method iconify : unit -> unit
      method is_active : bool
      method kind : Gtk.Tags.window_type
      method message_type : Gtk.Tags.message_type
      method misc : GObj.misc_ops
      method modal : bool
      method move : x:int -> y:int -> unit
      method opacity : float
      method parse_geometry : string -> bool
      method position : Gtk.Tags.window_position
      method present : unit -> unit
      method remove : GObj.widget -> unit
      method resizable : bool
      method resize : width:int -> height:int -> unit
      method resize_mode : Gtk.Tags.resize_mode
      method response : '-> unit
      method role : string
      method run : unit -> 'a
      method screen : Gdk.screen
      method set_accept_focus : bool -> unit
      method set_allow_grow : bool -> unit
      method set_allow_shrink : bool -> unit
      method set_border_width : int -> unit
      method set_decorated : bool -> unit
      method set_default_height : int -> unit
      method set_default_response : '-> unit
      method set_default_size : width:int -> height:int -> unit
      method set_default_width : int -> unit
      method set_deletable : bool -> unit
      method set_destroy_with_parent : bool -> unit
      method set_focus_on_map : bool -> unit
      method set_geometry_hints :
        ?min_size:int * int ->
        ?max_size:int * int ->
        ?base_size:int * int ->
        ?aspect:float * float ->
        ?resize_inc:int * int ->
        ?win_gravity:Gdk.Tags.gravity ->
        ?pos:bool -> ?user_pos:bool -> ?user_size:bool -> GObj.widget -> unit
      method set_gravity : Gdk.Tags.gravity -> unit
      method set_has_separator : bool -> unit
      method set_icon : GdkPixbuf.pixbuf option -> unit
      method set_icon_name : string -> unit
      method set_markup : string -> unit
      method set_message_type : Gtk.Tags.message_type -> unit
      method set_modal : bool -> unit
      method set_opacity : float -> unit
      method set_position : Gtk.Tags.window_position -> unit
      method set_resizable : bool -> unit
      method set_resize_mode : Gtk.Tags.resize_mode -> unit
      method set_response_sensitive : '-> bool -> unit
      method set_role : string -> unit
      method set_screen : Gdk.screen -> unit
      method set_skip_pager_hint : bool -> unit
      method set_skip_taskbar_hint : bool -> unit
      method set_title : string -> unit
      method set_transient_for : Gtk.window Gtk.obj -> unit
      method set_type_hint : Gdk.Tags.window_type_hint -> unit
      method set_urgency_hint : bool -> unit
      method set_wm_class : string -> unit
      method set_wm_name : string -> unit
      method show : unit -> unit
      method skip_pager_hint : bool
      method skip_taskbar_hint : bool
      method title : string
      method type_hint : Gdk.Tags.window_type_hint
      method urgency_hint : bool
      method vbox : GPack.box
    end
  val message_dialog :
    ?message:string ->
    ?use_markup:bool ->
    message_type:Gtk.Tags.message_type ->
    buttons:([> `DELETE_EVENT ] as 'a) GWindow.buttons ->
    ?parent:#GWindow.window_skel ->
    ?destroy_with_parent:bool ->
    ?title:string ->
    ?allow_grow:bool ->
    ?allow_shrink:bool ->
    ?decorated:bool ->
    ?deletable:bool ->
    ?focus_on_map:bool ->
    ?icon:GdkPixbuf.pixbuf ->
    ?icon_name:string ->
    ?modal:bool ->
    ?position:Gtk.Tags.window_position ->
    ?resizable:bool ->
    ?screen:Gdk.screen ->
    ?type_hint:Gdk.Tags.window_type_hint ->
    ?urgency_hint:bool ->
    ?wm_name:string ->
    ?wm_class:string ->
    ?border_width:int ->
    ?width:int ->
    ?height:int -> ?show:bool -> unit -> 'GWindow.message_dialog
  class about_dialog :
    ([> Gtk.about_dialog ] as 'a) Gtk.obj ->
    object
      val obj : 'Gtk.obj
      method accept_focus : bool
      method action_area : GPack.button_box
      method activate_default : unit -> bool
      method activate_focus : unit -> bool
      method add : GObj.widget -> unit
      method add_accel_group : Gtk.accel_group -> unit
      method all_children : GObj.widget list
      method allow_grow : bool
      method allow_shrink : bool
      method artists : string list
      method as_widget : Gtk.widget Gtk.obj
      method as_window : Gtk.window Gtk.obj
      method authors : string list
      method border_width : int
      method child : GObj.widget
      method children : GObj.widget list
      method coerce : GObj.widget
      method comments : string
      method connect : GWindow.Buttons.about GWindow.dialog_signals
      method copyright : string
      method private decode : int -> Buttons.about
      method decorated : bool
      method default_height : int
      method default_width : int
      method deiconify : unit -> unit
      method deletable : bool
      method destroy : unit -> unit
      method destroy_with_parent : bool
      method documenters : string list
      method drag : GObj.drag_ops
      method private encode : Buttons.about -> int
      method event : GObj.event_ops
      method focus : GContainer.focus
      method focus_on_map : bool
      method get_oid : int
      method gravity : GdkEnums.gravity
      method has_separator : bool
      method has_toplevel_focus : bool
      method icon : GdkPixbuf.pixbuf option
      method icon_name : string
      method iconify : unit -> unit
      method is_active : bool
      method kind : Gtk.Tags.window_type
      method license : string
      method logo : GdkPixbuf.pixbuf
      method logo_icon_name : string
      method misc : GObj.misc_ops
      method modal : bool
      method move : x:int -> y:int -> unit
      method name : string
      method opacity : float
      method parse_geometry : string -> bool
      method position : Gtk.Tags.window_position
      method present : unit -> unit
      method remove : GObj.widget -> unit
      method resizable : bool
      method resize : width:int -> height:int -> unit
      method resize_mode : Gtk.Tags.resize_mode
      method response : Buttons.about -> unit
      method role : string
      method run : unit -> Buttons.about
      method screen : Gdk.screen
      method set_accept_focus : bool -> unit
      method set_allow_grow : bool -> unit
      method set_allow_shrink : bool -> unit
      method set_artists : string list -> unit
      method set_authors : string list -> unit
      method set_border_width : int -> unit
      method set_comments : string -> unit
      method set_copyright : string -> unit
      method set_decorated : bool -> unit
      method set_default_height : int -> unit
      method set_default_response : Buttons.about -> unit
      method set_default_size : width:int -> height:int -> unit
      method set_default_width : int -> unit
      method set_deletable : bool -> unit
      method set_destroy_with_parent : bool -> unit
      method set_documenters : string list -> unit
      method set_focus_on_map : bool -> unit
      method set_geometry_hints :
        ?min_size:int * int ->
        ?max_size:int * int ->
        ?base_size:int * int ->
        ?aspect:float * float ->
        ?resize_inc:int * int ->
        ?win_gravity:Gdk.Tags.gravity ->
        ?pos:bool -> ?user_pos:bool -> ?user_size:bool -> GObj.widget -> unit
      method set_gravity : Gdk.Tags.gravity -> unit
      method set_has_separator : bool -> unit
      method set_icon : GdkPixbuf.pixbuf option -> unit
      method set_icon_name : string -> unit
      method set_license : string -> unit
      method set_logo : GdkPixbuf.pixbuf -> unit
      method set_logo_icon_name : string -> unit
      method set_modal : bool -> unit
      method set_name : string -> unit
      method set_opacity : float -> unit
      method set_position : Gtk.Tags.window_position -> unit
      method set_resizable : bool -> unit
      method set_resize_mode : Gtk.Tags.resize_mode -> unit
      method set_response_sensitive : Buttons.about -> bool -> unit
      method set_role : string -> unit
      method set_screen : Gdk.screen -> unit
      method set_skip_pager_hint : bool -> unit
      method set_skip_taskbar_hint : bool -> unit
      method set_title : string -> unit
      method set_transient_for : Gtk.window Gtk.obj -> unit
      method set_translator_credits : string -> unit
      method set_type_hint : Gdk.Tags.window_type_hint -> unit
      method set_urgency_hint : bool -> unit
      method set_version : string -> unit
      method set_website : string -> unit
      method set_website_label : string -> unit
      method set_wm_class : string -> unit
      method set_wm_name : string -> unit
      method set_wrap_license : bool -> unit
      method show : unit -> unit
      method skip_pager_hint : bool
      method skip_taskbar_hint : bool
      method title : string
      method translator_credits : string
      method type_hint : Gdk.Tags.window_type_hint
      method urgency_hint : bool
      method vbox : GPack.box
      method version : string
      method website : string
      method website_label : string
      method wrap_license : bool
    end
  val about_dialog :
    ?authors:string list ->
    ?comments:string ->
    ?copyright:string ->
    ?license:string ->
    ?logo:GdkPixbuf.pixbuf ->
    ?logo_icon_name:string ->
    ?name:string ->
    ?translator_credits:string ->
    ?version:string ->
    ?website:string ->
    ?website_label:string ->
    ?wrap_license:bool ->
    ?parent:#GWindow.window_skel ->
    ?destroy_with_parent:bool ->
    ?title:string ->
    ?allow_grow:bool ->
    ?allow_shrink:bool ->
    ?decorated:bool ->
    ?deletable:bool ->
    ?focus_on_map:bool ->
    ?icon:GdkPixbuf.pixbuf ->
    ?icon_name:string ->
    ?modal:bool ->
    ?position:Gtk.Tags.window_position ->
    ?resizable:bool ->
    ?screen:Gdk.screen ->
    ?type_hint:Gdk.Tags.window_type_hint ->
    ?urgency_hint:bool ->
    ?wm_name:string ->
    ?wm_class:string ->
    ?border_width:int ->
    ?width:int -> ?height:int -> ?show:bool -> unit -> GWindow.about_dialog
  class ['a] file_chooser_dialog_signals :
    ([> `bin | `container | `dialog | `filechooser | `gtk | `widget | `window ]
     as 'c)
    Gtk.obj ->
    decode:(int -> 'a) ->
    object ('b)
      val obj : 'Gtk.obj
      method add : callback:(GObj.widget -> unit) -> GtkSignal.id
      method after : 'b
      method close : callback:(unit -> unit) -> GtkSignal.id
      method confirm_overwrite :
        callback:(unit -> GtkEnums.file_chooser_confirmation) -> GtkSignal.id
      method current_folder_changed : callback:(unit -> unit) -> GtkSignal.id
      method destroy : callback:(unit -> unit) -> GtkSignal.id
      method file_activated : callback:(unit -> unit) -> GtkSignal.id
      method remove : callback:(GObj.widget -> unit) -> GtkSignal.id
      method response : callback:('-> unit) -> GtkSignal.id
      method selection_changed : callback:(unit -> unit) -> GtkSignal.id
      method update_preview : callback:(unit -> unit) -> GtkSignal.id
    end
  class ['a] file_chooser_dialog :
    ([> `bin | `container | `dialog | `filechooser | `gtk | `widget | `window ]
     as 'b)
    Gtk.obj ->
    object
      constraint 'a = [> `DELETE_EVENT ]
      val obj : 'Gtk.obj
      method accept_focus : bool
      method action : GtkEnums.file_chooser_action
      method action_area : GPack.button_box
      method activate_default : unit -> bool
      method activate_focus : unit -> bool
      method add : GObj.widget -> unit
      method add_accel_group : Gtk.accel_group -> unit
      method add_button : string -> '-> unit
      method add_button_stock : GtkStock.id -> '-> unit
      method add_filter : GFile.filter -> unit
      method add_select_button : string -> '-> unit
      method add_select_button_stock : GtkStock.id -> '-> unit
      method add_shortcut_folder : string -> unit
      method add_shortcut_folder_uri : string -> unit
      method all_children : GObj.widget list
      method allow_grow : bool
      method allow_shrink : bool
      method as_widget : Gtk.widget Gtk.obj
      method as_window : Gtk.window Gtk.obj
      method border_width : int
      method child : GObj.widget
      method children : GObj.widget list
      method coerce : GObj.widget
      method connect : 'GWindow.file_chooser_dialog_signals
      method current_folder : string option
      method current_folder_uri : string
      method private decode : int -> 'a
      method decorated : bool
      method default_height : int
      method default_width : int
      method deiconify : unit -> unit
      method deletable : bool
      method destroy : unit -> unit
      method destroy_with_parent : bool
      method do_overwrite_confirmation : bool
      method drag : GObj.drag_ops
      method private encode : '-> int
      method event : GObj.event_ops
      method extra_widget : GObj.widget
      method filename : string option
      method filter : GFile.filter
      method focus : GContainer.focus
      method focus_on_map : bool
      method get_filenames : string list
      method get_oid : int
      method get_uris : string list
      method gravity : GdkEnums.gravity
      method has_separator : bool
      method has_toplevel_focus : bool
      method icon : GdkPixbuf.pixbuf option
      method icon_name : string
      method iconify : unit -> unit
      method is_active : bool
      method kind : Gtk.Tags.window_type
      method list_filters : GFile.filter list
      method list_shortcut_folder_uris : string list
      method list_shortcut_folders : string list
      method local_only : bool
      method misc : GObj.misc_ops
      method modal : bool
      method move : x:int -> y:int -> unit
      method opacity : float
      method parse_geometry : string -> bool
      method position : Gtk.Tags.window_position
      method present : unit -> unit
      method preview_filename : string option
      method preview_uri : string option
      method preview_widget : GObj.widget
      method preview_widget_active : bool
      method remove : GObj.widget -> unit
      method remove_filter : GFile.filter -> unit
      method remove_shortcut_folder : string -> unit
      method remove_shortcut_folder_uri : string -> unit
      method resizable : bool
      method resize : width:int -> height:int -> unit
      method resize_mode : Gtk.Tags.resize_mode
      method response : '-> unit
      method role : string
      method run : unit -> 'a
      method screen : Gdk.screen
      method select_all : unit
      method select_filename : string -> bool
      method select_multiple : bool
      method select_uri : string -> bool
      method set_accept_focus : bool -> unit
      method set_action : GtkEnums.file_chooser_action -> unit
      method set_allow_grow : bool -> unit
      method set_allow_shrink : bool -> unit
      method set_border_width : int -> unit
      method set_current_folder : string -> bool
      method set_current_folder_uri : string -> bool
      method set_current_name : string -> unit
      method set_decorated : bool -> unit
      method set_default_height : int -> unit
      method set_default_response : '-> unit
      method set_default_size : width:int -> height:int -> unit
      method set_default_width : int -> unit
      method set_deletable : bool -> unit
      method set_destroy_with_parent : bool -> unit
      method set_do_overwrite_confirmation : bool -> unit
      method set_extra_widget : GObj.widget -> unit
      method set_filename : string -> bool
      method set_filter : GFile.filter -> unit
      method set_focus_on_map : bool -> unit
      method set_geometry_hints :
        ?min_size:int * int ->
        ?max_size:int * int ->
        ?base_size:int * int ->
        ?aspect:float * float ->
        ?resize_inc:int * int ->
        ?win_gravity:Gdk.Tags.gravity ->
        ?pos:bool -> ?user_pos:bool -> ?user_size:bool -> GObj.widget -> unit
      method set_gravity : Gdk.Tags.gravity -> unit
      method set_has_separator : bool -> unit
      method set_icon : GdkPixbuf.pixbuf option -> unit
      method set_icon_name : string -> unit
      method set_local_only : bool -> unit
      method set_modal : bool -> unit
      method set_opacity : float -> unit
      method set_position : Gtk.Tags.window_position -> unit
      method set_preview_widget : GObj.widget -> unit
      method set_preview_widget_active : bool -> unit
      method set_resizable : bool -> unit
      method set_resize_mode : Gtk.Tags.resize_mode -> unit
      method set_response_sensitive : '-> bool -> unit
      method set_role : string -> unit
      method set_screen : Gdk.screen -> unit
      method set_select_multiple : bool -> unit
      method set_show_hidden : bool -> unit
      method set_skip_pager_hint : bool -> unit
      method set_skip_taskbar_hint : bool -> unit
      method set_title : string -> unit
      method set_transient_for : Gtk.window Gtk.obj -> unit
      method set_type_hint : Gdk.Tags.window_type_hint -> unit
      method set_urgency_hint : bool -> unit
      method set_uri : string -> bool
      method set_use_preview_label : bool -> unit
      method set_wm_class : string -> unit
      method set_wm_name : string -> unit
      method show : unit -> unit
      method show_hidden : bool
      method skip_pager_hint : bool
      method skip_taskbar_hint : bool
      method title : string
      method type_hint : Gdk.Tags.window_type_hint
      method unselect_all : unit
      method unselect_filename : string -> unit
      method unselect_uri : string -> unit
      method urgency_hint : bool
      method uri : string option
      method use_preview_label : bool
      method vbox : GPack.box
    end
  val file_chooser_dialog :
    action:GtkEnums.file_chooser_action ->
    ?backend:string ->
    ?parent:#GWindow.window_skel ->
    ?destroy_with_parent:bool ->
    ?title:string ->
    ?allow_grow:bool ->
    ?allow_shrink:bool ->
    ?decorated:bool ->
    ?deletable:bool ->
    ?focus_on_map:bool ->
    ?icon:GdkPixbuf.pixbuf ->
    ?icon_name:string ->
    ?modal:bool ->
    ?position:Gtk.Tags.window_position ->
    ?resizable:bool ->
    ?screen:Gdk.screen ->
    ?type_hint:Gdk.Tags.window_type_hint ->
    ?urgency_hint:bool ->
    ?wm_name:string ->
    ?wm_class:string ->
    ?border_width:int ->
    ?width:int ->
    ?height:int ->
    ?show:bool -> unit -> [> `DELETE_EVENT ] GWindow.file_chooser_dialog
  class color_selection_dialog :
    Gtk.color_selection_dialog Gtk.obj ->
    object
      val obj : Gtk.color_selection_dialog Gtk.obj
      method accept_focus : bool
      method action_area : GPack.button_box
      method activate_default : unit -> bool
      method activate_focus : unit -> bool
      method add : GObj.widget -> unit
      method add_accel_group : Gtk.accel_group -> unit
      method all_children : GObj.widget list
      method allow_grow : bool
      method allow_shrink : bool
      method as_widget : Gtk.widget Gtk.obj
      method as_window : Gtk.window Gtk.obj
      method border_width : int
      method cancel_button : GButton.button
      method child : GObj.widget
      method children : GObj.widget list
      method coerce : GObj.widget
      method colorsel : GMisc.color_selection
      method connect : GWindow.Buttons.color_selection GWindow.dialog_signals
      method private decode : int -> Buttons.color_selection
      method decorated : bool
      method default_height : int
      method default_width : int
      method deiconify : unit -> unit
      method deletable : bool
      method destroy : unit -> unit
      method destroy_with_parent : bool
      method drag : GObj.drag_ops
      method private encode : Buttons.color_selection -> int
      method event : GObj.event_ops
      method focus : GContainer.focus
      method focus_on_map : bool
      method get_oid : int
      method gravity : GdkEnums.gravity
      method has_separator : bool
      method has_toplevel_focus : bool
      method help_button : GButton.button
      method icon : GdkPixbuf.pixbuf option
      method icon_name : string
      method iconify : unit -> unit
      method is_active : bool
      method kind : Gtk.Tags.window_type
      method misc : GObj.misc_ops
      method modal : bool
      method move : x:int -> y:int -> unit
      method ok_button : GButton.button
      method opacity : float
      method parse_geometry : string -> bool
      method position : Gtk.Tags.window_position
      method present : unit -> unit
      method remove : GObj.widget -> unit
      method resizable : bool
      method resize : width:int -> height:int -> unit
      method resize_mode : Gtk.Tags.resize_mode
      method response : Buttons.color_selection -> unit
      method role : string
      method run : unit -> Buttons.color_selection
      method screen : Gdk.screen
      method set_accept_focus : bool -> unit
      method set_allow_grow : bool -> unit
      method set_allow_shrink : bool -> unit
      method set_border_width : int -> unit
      method set_decorated : bool -> unit
      method set_default_height : int -> unit
      method set_default_response : Buttons.color_selection -> unit
      method set_default_size : width:int -> height:int -> unit
      method set_default_width : int -> unit
      method set_deletable : bool -> unit
      method set_destroy_with_parent : bool -> unit
      method set_focus_on_map : bool -> unit
      method set_geometry_hints :
        ?min_size:int * int ->
        ?max_size:int * int ->
        ?base_size:int * int ->
        ?aspect:float * float ->
        ?resize_inc:int * int ->
        ?win_gravity:Gdk.Tags.gravity ->
        ?pos:bool -> ?user_pos:bool -> ?user_size:bool -> GObj.widget -> unit
      method set_gravity : Gdk.Tags.gravity -> unit
      method set_has_separator : bool -> unit
      method set_icon : GdkPixbuf.pixbuf option -> unit
      method set_icon_name : string -> unit
      method set_modal : bool -> unit
      method set_opacity : float -> unit
      method set_position : Gtk.Tags.window_position -> unit
      method set_resizable : bool -> unit
      method set_resize_mode : Gtk.Tags.resize_mode -> unit
      method set_response_sensitive : Buttons.color_selection -> bool -> unit
      method set_role : string -> unit
      method set_screen : Gdk.screen -> unit
      method set_skip_pager_hint : bool -> unit
      method set_skip_taskbar_hint : bool -> unit
      method set_title : string -> unit
      method set_transient_for : Gtk.window Gtk.obj -> unit
      method set_type_hint : Gdk.Tags.window_type_hint -> unit
      method set_urgency_hint : bool -> unit
      method set_wm_class : string -> unit
      method set_wm_name : string -> unit
      method show : unit -> unit
      method skip_pager_hint : bool
      method skip_taskbar_hint : bool
      method title : string
      method type_hint : Gdk.Tags.window_type_hint
      method urgency_hint : bool
      method vbox : GPack.box
    end
  val color_selection_dialog :
    ?title:string ->
    ?parent:#GWindow.window_skel ->
    ?destroy_with_parent:bool ->
    ?allow_grow:bool ->
    ?allow_shrink:bool ->
    ?decorated:bool ->
    ?deletable:bool ->
    ?focus_on_map:bool ->
    ?icon:GdkPixbuf.pixbuf ->
    ?icon_name:string ->
    ?modal:bool ->
    ?position:Gtk.Tags.window_position ->
    ?screen:Gdk.screen ->
    ?type_hint:Gdk.Tags.window_type_hint ->
    ?urgency_hint:bool ->
    ?wm_name:string ->
    ?wm_class:string ->
    ?border_width:int ->
    ?width:int ->
    ?height:int -> ?show:bool -> unit -> GWindow.color_selection_dialog
  class file_selection :
    Gtk.file_selection Gtk.obj ->
    object
      val obj : Gtk.file_selection Gtk.obj
      method accept_focus : bool
      method action_area : GPack.button_box
      method activate_default : unit -> bool
      method activate_focus : unit -> bool
      method add : GObj.widget -> unit
      method add_accel_group : Gtk.accel_group -> unit
      method all_children : GObj.widget list
      method allow_grow : bool
      method allow_shrink : bool
      method as_widget : Gtk.widget Gtk.obj
      method as_window : Gtk.window Gtk.obj
      method border_width : int
      method cancel_button : GButton.button
      method child : GObj.widget
      method children : GObj.widget list
      method coerce : GObj.widget
      method complete : filter:string -> unit
      method connect : GWindow.Buttons.file_selection GWindow.dialog_signals
      method private decode : int -> Buttons.file_selection
      method decorated : bool
      method default_height : int
      method default_width : int
      method deiconify : unit -> unit
      method deletable : bool
      method destroy : unit -> unit
      method destroy_with_parent : bool
      method dir_list : string GList.clist
      method drag : GObj.drag_ops
      method private encode : Buttons.file_selection -> int
      method event : GObj.event_ops
      method file_list : string GList.clist
      method filename : string
      method focus : GContainer.focus
      method focus_on_map : bool
      method get_oid : int
      method get_selections : string list
      method gravity : GdkEnums.gravity
      method has_separator : bool
      method has_toplevel_focus : bool
      method help_button : GButton.button
      method icon : GdkPixbuf.pixbuf option
      method icon_name : string
      method iconify : unit -> unit
      method is_active : bool
      method kind : Gtk.Tags.window_type
      method misc : GObj.misc_ops
      method modal : bool
      method move : x:int -> y:int -> unit
      method ok_button : GButton.button
      method opacity : float
      method parse_geometry : string -> bool
      method position : Gtk.Tags.window_position
      method present : unit -> unit
      method remove : GObj.widget -> unit
      method resizable : bool
      method resize : width:int -> height:int -> unit
      method resize_mode : Gtk.Tags.resize_mode
      method response : Buttons.file_selection -> unit
      method role : string
      method run : unit -> Buttons.file_selection
      method screen : Gdk.screen
      method select_multiple : bool
      method set_accept_focus : bool -> unit
      method set_allow_grow : bool -> unit
      method set_allow_shrink : bool -> unit
      method set_border_width : int -> unit
      method set_decorated : bool -> unit
      method set_default_height : int -> unit
      method set_default_response : Buttons.file_selection -> unit
      method set_default_size : width:int -> height:int -> unit
      method set_default_width : int -> unit
      method set_deletable : bool -> unit
      method set_destroy_with_parent : bool -> unit
      method set_filename : string -> unit
      method set_focus_on_map : bool -> unit
      method set_geometry_hints :
        ?min_size:int * int ->
        ?max_size:int * int ->
        ?base_size:int * int ->
        ?aspect:float * float ->
        ?resize_inc:int * int ->
        ?win_gravity:Gdk.Tags.gravity ->
        ?pos:bool -> ?user_pos:bool -> ?user_size:bool -> GObj.widget -> unit
      method set_gravity : Gdk.Tags.gravity -> unit
      method set_has_separator : bool -> unit
      method set_icon : GdkPixbuf.pixbuf option -> unit
      method set_icon_name : string -> unit
      method set_modal : bool -> unit
      method set_opacity : float -> unit
      method set_position : Gtk.Tags.window_position -> unit
      method set_resizable : bool -> unit
      method set_resize_mode : Gtk.Tags.resize_mode -> unit
      method set_response_sensitive : Buttons.file_selection -> bool -> unit
      method set_role : string -> unit
      method set_screen : Gdk.screen -> unit
      method set_select_multiple : bool -> unit
      method set_show_fileops : bool -> unit
      method set_skip_pager_hint : bool -> unit
      method set_skip_taskbar_hint : bool -> unit
      method set_title : string -> unit
      method set_transient_for : Gtk.window Gtk.obj -> unit
      method set_type_hint : Gdk.Tags.window_type_hint -> unit
      method set_urgency_hint : bool -> unit
      method set_wm_class : string -> unit
      method set_wm_name : string -> unit
      method show : unit -> unit
      method show_fileops : bool
      method skip_pager_hint : bool
      method skip_taskbar_hint : bool
      method title : string
      method type_hint : Gdk.Tags.window_type_hint
      method urgency_hint : bool
      method vbox : GPack.box
    end
  val file_selection :
    ?title:string ->
    ?show_fileops:bool ->
    ?filename:string ->
    ?select_multiple:bool ->
    ?parent:#GWindow.window_skel ->
    ?destroy_with_parent:bool ->
    ?allow_grow:bool ->
    ?allow_shrink:bool ->
    ?decorated:bool ->
    ?deletable:bool ->
    ?focus_on_map:bool ->
    ?icon:GdkPixbuf.pixbuf ->
    ?icon_name:string ->
    ?modal:bool ->
    ?position:Gtk.Tags.window_position ->
    ?resizable:bool ->
    ?screen:Gdk.screen ->
    ?type_hint:Gdk.Tags.window_type_hint ->
    ?urgency_hint:bool ->
    ?wm_name:string ->
    ?wm_class:string ->
    ?border_width:int ->
    ?width:int -> ?height:int -> ?show:bool -> unit -> GWindow.file_selection
  class font_selection_dialog :
    Gtk.font_selection_dialog Gtk.obj ->
    object
      val obj : Gtk.font_selection_dialog Gtk.obj
      method accept_focus : bool
      method action_area : GPack.button_box
      method activate_default : unit -> bool
      method activate_focus : unit -> bool
      method add : GObj.widget -> unit
      method add_accel_group : Gtk.accel_group -> unit
      method all_children : GObj.widget list
      method allow_grow : bool
      method allow_shrink : bool
      method apply_button : GButton.button
      method as_widget : Gtk.widget Gtk.obj
      method as_window : Gtk.window Gtk.obj
      method border_width : int
      method cancel_button : GButton.button
      method child : GObj.widget
      method children : GObj.widget list
      method coerce : GObj.widget
      method connect : GWindow.Buttons.font_selection GWindow.dialog_signals
      method private decode : int -> Buttons.font_selection
      method decorated : bool
      method default_height : int
      method default_width : int
      method deiconify : unit -> unit
      method deletable : bool
      method destroy : unit -> unit
      method destroy_with_parent : bool
      method drag : GObj.drag_ops
      method private encode : Buttons.font_selection -> int
      method event : GObj.event_ops
      method focus : GContainer.focus
      method focus_on_map : bool
      method get_oid : int
      method gravity : GdkEnums.gravity
      method has_separator : bool
      method has_toplevel_focus : bool
      method icon : GdkPixbuf.pixbuf option
      method icon_name : string
      method iconify : unit -> unit
      method is_active : bool
      method kind : Gtk.Tags.window_type
      method misc : GObj.misc_ops
      method modal : bool
      method move : x:int -> y:int -> unit
      method ok_button : GButton.button
      method opacity : float
      method parse_geometry : string -> bool
      method position : Gtk.Tags.window_position
      method present : unit -> unit
      method remove : GObj.widget -> unit
      method resizable : bool
      method resize : width:int -> height:int -> unit
      method resize_mode : Gtk.Tags.resize_mode
      method response : Buttons.font_selection -> unit
      method role : string
      method run : unit -> Buttons.font_selection
      method screen : Gdk.screen
      method selection : GMisc.font_selection
      method set_accept_focus : bool -> unit
      method set_allow_grow : bool -> unit
      method set_allow_shrink : bool -> unit
      method set_border_width : int -> unit
      method set_decorated : bool -> unit
      method set_default_height : int -> unit
      method set_default_response : Buttons.font_selection -> unit
      method set_default_size : width:int -> height:int -> unit
      method set_default_width : int -> unit
      method set_deletable : bool -> unit
      method set_destroy_with_parent : bool -> unit
      method set_focus_on_map : bool -> unit
      method set_geometry_hints :
        ?min_size:int * int ->
        ?max_size:int * int ->
        ?base_size:int * int ->
        ?aspect:float * float ->
        ?resize_inc:int * int ->
        ?win_gravity:Gdk.Tags.gravity ->
        ?pos:bool -> ?user_pos:bool -> ?user_size:bool -> GObj.widget -> unit
      method set_gravity : Gdk.Tags.gravity -> unit
      method set_has_separator : bool -> unit
      method set_icon : GdkPixbuf.pixbuf option -> unit
      method set_icon_name : string -> unit
      method set_modal : bool -> unit
      method set_opacity : float -> unit
      method set_position : Gtk.Tags.window_position -> unit
      method set_resizable : bool -> unit
      method set_resize_mode : Gtk.Tags.resize_mode -> unit
      method set_response_sensitive : Buttons.font_selection -> bool -> unit
      method set_role : string -> unit
      method set_screen : Gdk.screen -> unit
      method set_skip_pager_hint : bool -> unit
      method set_skip_taskbar_hint : bool -> unit
      method set_title : string -> unit
      method set_transient_for : Gtk.window Gtk.obj -> unit
      method set_type_hint : Gdk.Tags.window_type_hint -> unit
      method set_urgency_hint : bool -> unit
      method set_wm_class : string -> unit
      method set_wm_name : string -> unit
      method show : unit -> unit
      method skip_pager_hint : bool
      method skip_taskbar_hint : bool
      method title : string
      method type_hint : Gdk.Tags.window_type_hint
      method urgency_hint : bool
      method vbox : GPack.box
    end
  val font_selection_dialog :
    ?title:string ->
    ?parent:#GWindow.window_skel ->
    ?destroy_with_parent:bool ->
    ?allow_grow:bool ->
    ?allow_shrink:bool ->
    ?decorated:bool ->
    ?deletable:bool ->
    ?focus_on_map:bool ->
    ?icon:GdkPixbuf.pixbuf ->
    ?icon_name:string ->
    ?modal:bool ->
    ?position:Gtk.Tags.window_position ->
    ?resizable:bool ->
    ?screen:Gdk.screen ->
    ?type_hint:Gdk.Tags.window_type_hint ->
    ?urgency_hint:bool ->
    ?wm_name:string ->
    ?wm_class:string ->
    ?border_width:int ->
    ?width:int ->
    ?height:int -> ?show:bool -> unit -> GWindow.font_selection_dialog
  class plug_signals :
    ([> Gtk.plug ] as 'b) Gtk.obj ->
    object ('a)
      val obj : 'Gtk.obj
      method add : callback:(GObj.widget -> unit) -> GtkSignal.id
      method after : 'a
      method destroy : callback:(unit -> unit) -> GtkSignal.id
      method embedded : callback:(unit -> unit) -> GtkSignal.id
      method remove : callback:(GObj.widget -> unit) -> GtkSignal.id
    end
  class plug :
    Gtk.plug Gtk.obj ->
    object
      val obj : Gtk.plug Gtk.obj
      method accept_focus : bool
      method activate_default : unit -> bool
      method activate_focus : unit -> bool
      method add : GObj.widget -> unit
      method add_accel_group : Gtk.accel_group -> unit
      method all_children : GObj.widget list
      method allow_grow : bool
      method allow_shrink : bool
      method as_widget : Gtk.widget Gtk.obj
      method as_window : Gtk.window Gtk.obj
      method border_width : int
      method child : GObj.widget
      method children : GObj.widget list
      method coerce : GObj.widget
      method connect : GWindow.plug_signals
      method decorated : bool
      method default_height : int
      method default_width : int
      method deiconify : unit -> unit
      method deletable : bool
      method destroy : unit -> unit
      method destroy_with_parent : bool
      method drag : GObj.drag_ops
      method event : GObj.event_ops
      method focus : GContainer.focus
      method focus_on_map : bool
      method get_oid : int
      method gravity : GdkEnums.gravity
      method has_toplevel_focus : bool
      method icon : GdkPixbuf.pixbuf option
      method icon_name : string
      method iconify : unit -> unit
      method is_active : bool
      method kind : Gtk.Tags.window_type
      method misc : GObj.misc_ops
      method modal : bool
      method move : x:int -> y:int -> unit
      method opacity : float
      method parse_geometry : string -> bool
      method position : Gtk.Tags.window_position
      method present : unit -> unit
      method remove : GObj.widget -> unit
      method resizable : bool
      method resize : width:int -> height:int -> unit
      method resize_mode : Gtk.Tags.resize_mode
      method role : string
      method screen : Gdk.screen
      method set_accept_focus : bool -> unit
      method set_allow_grow : bool -> unit
      method set_allow_shrink : bool -> unit
      method set_border_width : int -> unit
      method set_decorated : bool -> unit
      method set_default_height : int -> unit
      method set_default_size : width:int -> height:int -> unit
      method set_default_width : int -> unit
      method set_deletable : bool -> unit
      method set_destroy_with_parent : bool -> unit
      method set_focus_on_map : bool -> unit
      method set_geometry_hints :
        ?min_size:int * int ->
        ?max_size:int * int ->
        ?base_size:int * int ->
        ?aspect:float * float ->
        ?resize_inc:int * int ->
        ?win_gravity:Gdk.Tags.gravity ->
        ?pos:bool -> ?user_pos:bool -> ?user_size:bool -> GObj.widget -> unit
      method set_gravity : Gdk.Tags.gravity -> unit
      method set_icon : GdkPixbuf.pixbuf option -> unit
      method set_icon_name : string -> unit
      method set_modal : bool -> unit
      method set_opacity : float -> unit
      method set_position : Gtk.Tags.window_position -> unit
      method set_resizable : bool -> unit
      method set_resize_mode : Gtk.Tags.resize_mode -> unit
      method set_role : string -> unit
      method set_screen : Gdk.screen -> unit
      method set_skip_pager_hint : bool -> unit
      method set_skip_taskbar_hint : bool -> unit
      method set_title : string -> unit
      method set_transient_for : Gtk.window Gtk.obj -> unit
      method set_type_hint : Gdk.Tags.window_type_hint -> unit
      method set_urgency_hint : bool -> unit
      method set_wm_class : string -> unit
      method set_wm_name : string -> unit
      method show : unit -> unit
      method skip_pager_hint : bool
      method skip_taskbar_hint : bool
      method title : string
      method type_hint : Gdk.Tags.window_type_hint
      method urgency_hint : bool
    end
  val plug :
    window:Gdk.xid ->
    ?border_width:int ->
    ?width:int -> ?height:int -> ?show:bool -> unit -> GWindow.plug
  class socket_signals :
    ([> Gtk.socket ] as 'b) Gtk.obj ->
    object ('a)
      val obj : 'Gtk.obj
      method add : callback:(GObj.widget -> unit) -> GtkSignal.id
      method after : 'a
      method destroy : callback:(unit -> unit) -> GtkSignal.id
      method plug_added : callback:(unit -> unit) -> GtkSignal.id
      method plug_removed : callback:(unit -> unit) -> GtkSignal.id
      method remove : callback:(GObj.widget -> unit) -> GtkSignal.id
    end
  class socket :
    Gtk.socket Gtk.obj ->
    object
      val obj : Gtk.socket Gtk.obj
      method add : GObj.widget -> unit
      method all_children : GObj.widget list
      method as_widget : Gtk.widget Gtk.obj
      method border_width : int
      method children : GObj.widget list
      method coerce : GObj.widget
      method connect : GWindow.socket_signals
      method destroy : unit -> unit
      method drag : GObj.drag_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 set_border_width : int -> unit
      method set_resize_mode : Gtk.Tags.resize_mode -> unit
      method steal : Gdk.xid -> unit
      method xwindow : Gdk.xid
    end
  val socket :
    ?border_width:int ->
    ?width:int ->
    ?height:int ->
    ?packing:(GObj.widget -> unit) -> ?show:bool -> unit -> GWindow.socket
end