sig
  val cast : 'Gobject.obj -> Gtk.adjustment Gtk.obj
  module S :
    sig
      val changed : ([> `adjustment ], unit -> unit) GtkSignal.t
      val value_changed : ([> `adjustment ], unit -> unit) GtkSignal.t
    end
  val create : Gtk.adjustment Gobject.param list -> Gtk.adjustment Gtk.obj
  external create :
    value:float ->
    lower:float ->
    upper:float ->
    step_incr:float ->
    page_incr:float -> page_size:float -> Gtk.adjustment Gtk.obj
    = "ml_gtk_adjustment_new_bc" "ml_gtk_adjustment_new"
  external set_value : [> `adjustment ] Gtk.obj -> float -> unit
    = "ml_gtk_adjustment_set_value"
  external clamp_page :
    [> `adjustment ] Gtk.obj -> lower:float -> upper:float -> unit
    = "ml_gtk_adjustment_clamp_page"
  external get_lower : [> `adjustment ] Gtk.obj -> float
    = "ml_gtk_adjustment_get_lower"
  external get_upper : [> `adjustment ] Gtk.obj -> float
    = "ml_gtk_adjustment_get_upper"
  external get_value : [> `adjustment ] Gtk.obj -> float
    = "ml_gtk_adjustment_get_value"
  external get_step_increment : [> `adjustment ] Gtk.obj -> float
    = "ml_gtk_adjustment_get_step_increment"
  external get_page_increment : [> `adjustment ] Gtk.obj -> float
    = "ml_gtk_adjustment_get_page_increment"
  external get_page_size : [> `adjustment ] Gtk.obj -> float
    = "ml_gtk_adjustment_get_page_size"
  external set :
    ?lower:float ->
    ?upper:float ->
    ?step_incr:float ->
    ?page_incr:float -> ?page_size:float -> [> `adjustment ] Gtk.obj -> unit
    = "ml_gtk_adjustment_set_bc" "ml_gtk_adjustment_set"
  val set_bounds :
    [> `adjustment ] Gtk.obj ->
    ?lower:float ->
    ?upper:float ->
    ?step_incr:float -> ?page_incr:float -> ?page_size:float -> unit -> unit
end