sig
  val cast : 'Gobject.obj -> Gtk.button_box Gtk.obj
  module P :
    sig
      val layout_style :
        ([> `buttonbox ], GtkEnums.button_box_style) Gobject.property
    end
  val create :
    Gtk.Tags.orientation ->
    Gtk.button_box Gobject.param list -> Gtk.button_box Gtk.obj
  external get_child_secondary :
    [> `buttonbox ] Gtk.obj -> [> `widget ] Gtk.obj -> bool
    = "ml_gtk_button_box_get_child_secondary"
  external set_child_secondary :
    [> `buttonbox ] Gtk.obj -> [> `widget ] Gtk.obj -> bool -> unit
    = "ml_gtk_button_box_set_child_secondary"
  type bbox_style = [ `DEFAULT_STYLE | `EDGE | `END | `SPREAD | `START ]
  external get_child_width : [> `buttonbox ] Gtk.obj -> int
    = "ml_gtk_button_box_get_child_min_width"
  external get_child_height : [> `buttonbox ] Gtk.obj -> int
    = "ml_gtk_button_box_get_child_min_height"
  external get_child_ipadx : [> `buttonbox ] Gtk.obj -> int
    = "ml_gtk_button_box_get_child_ipad_x"
  external get_child_ipady : [> `buttonbox ] Gtk.obj -> int
    = "ml_gtk_button_box_get_child_ipad_y"
  external set_child_size :
    [> `buttonbox ] Gtk.obj -> width:int -> height:int -> unit
    = "ml_gtk_button_box_set_child_size"
  external set_child_ipadding :
    [> `buttonbox ] Gtk.obj -> x:int -> y:int -> unit
    = "ml_gtk_button_box_set_child_ipadding"
  val set_child_size :
    [> `buttonbox ] Gtk.obj -> ?width:int -> ?height:int -> unit -> unit
  val set_child_ipadding :
    [> `buttonbox ] Gtk.obj -> ?x:int -> ?y:int -> unit -> unit
  val set :
    ?child_width:int ->
    ?child_height:int ->
    ?child_ipadx:int ->
    ?child_ipady:int ->
    ?layout:GtkEnums.button_box_style -> [> `buttonbox ] Gtk.obj -> unit
end