sig
  val cast : 'Gobject.obj -> Gtk.scrolled_window Gtk.obj
  module P :
    sig
      val hadjustment :
        ([> `scrolledwindow ], Gtk.adjustment Gtk.obj) Gobject.property
      val vadjustment :
        ([> `scrolledwindow ], Gtk.adjustment Gtk.obj) Gobject.property
      val hscrollbar_policy :
        ([> `scrolledwindow ], GtkEnums.policy_type) Gobject.property
      val vscrollbar_policy :
        ([> `scrolledwindow ], GtkEnums.policy_type) Gobject.property
      val window_placement :
        ([> `scrolledwindow ], GtkEnums.corner_type) Gobject.property
      val shadow_type :
        ([> `scrolledwindow ], GtkEnums.shadow_type) Gobject.property
    end
  module S :
    sig
      val move_focus_out :
        ([> `scrolledwindow ], GtkEnums.direction_type -> unit) GtkSignal.t
      val scroll_child :
        ([> `scrolledwindow ], GtkEnums.scroll_type -> bool -> unit)
        GtkSignal.t
    end
  val create :
    Gtk.scrolled_window Gobject.param list -> Gtk.scrolled_window Gtk.obj
  external add_with_viewport :
    [> `scrolledwindow ] Gtk.obj -> [> `widget ] Gtk.obj -> unit
    = "ml_gtk_scrolled_window_add_with_viewport"
  val make_params :
    cont:(([> `scrolledwindow ] as 'a) Gobject.param list -> 'b) ->
    'Gobject.param list ->
    ?hadjustment:Gtk.adjustment Gtk.obj ->
    ?vadjustment:Gtk.adjustment Gtk.obj ->
    ?hpolicy:GtkEnums.policy_type ->
    ?vpolicy:GtkEnums.policy_type ->
    ?placement:GtkEnums.corner_type ->
    ?shadow_type:GtkEnums.shadow_type -> 'b
end