sig
  val cast : 'Gobject.obj -> Gtk.toolbar Gtk.obj
  module P :
    sig
      val orientation :
        ([> `toolbar ], GtkEnums.orientation) Gobject.property
      val toolbar_style :
        ([> `toolbar ], GtkEnums.toolbar_style) Gobject.property
      val show_arrow : ([> `toolbar ], bool) Gobject.property
    end
  module S :
    sig
      val orientation_changed :
        ([> `toolbar ], GtkEnums.orientation -> unit) GtkSignal.t
      val style_changed :
        ([> `toolbar ], GtkEnums.toolbar_style -> unit) GtkSignal.t
      val focus_home_or_end : ([> `toolbar ], bool -> bool) GtkSignal.t
      val move_focus :
        ([> `toolbar ], GtkEnums.direction_type -> bool) GtkSignal.t
      val popup_context_menu :
        ([> `toolbar ], int -> int -> int -> bool) GtkSignal.t
    end
  val create : Gtk.toolbar Gobject.param list -> Gtk.toolbar Gtk.obj
  val make_params :
    cont:(([> `toolbar ] as 'a) Gobject.param list -> 'b) ->
    'Gobject.param list ->
    ?orientation:GtkEnums.orientation ->
    ?toolbar_style:GtkEnums.toolbar_style -> ?show_arrow:bool -> 'b
  external insert_space : [> `toolbar ] Gtk.obj -> pos:int -> unit
    = "ml_gtk_toolbar_insert_space"
  val insert_space : [> `toolbar ] Gtk.obj -> ?pos:int -> unit -> unit
  external insert_button :
    [> `toolbar ] Gtk.obj ->
    kind:[ `BUTTON | `RADIOBUTTON | `TOGGLEBUTTON ] ->
    text:string ->
    tooltip:string ->
    tooltip_private:string ->
    icon:[> `widget ] Gtk.optobj -> pos:int -> Gtk.button Gtk.obj
    = "ml_gtk_toolbar_insert_element_bc" "ml_gtk_toolbar_insert_element"
  val insert_button :
    [> `toolbar ] Gtk.obj ->
    ?kind:[ `BUTTON | `RADIOBUTTON | `TOGGLEBUTTON ] ->
    ?text:string ->
    ?tooltip:string ->
    ?tooltip_private:string ->
    ?icon:[> `widget ] Gobject.obj ->
    ?pos:int -> ?callback:(unit -> unit) -> unit -> Gtk.button Gtk.obj
  external insert_widget :
    [> `toolbar ] Gtk.obj ->
    [> `widget ] Gtk.obj ->
    tooltip:string -> tooltip_private:string -> pos:int -> unit
    = "ml_gtk_toolbar_insert_widget"
  val insert_widget :
    [> `toolbar ] Gtk.obj ->
    ?tooltip:string ->
    ?tooltip_private:string -> ?pos:int -> [> `widget ] Gtk.obj -> unit
  external set_tooltips : [> `toolbar ] Gtk.obj -> bool -> unit
    = "ml_gtk_toolbar_set_tooltips"
  external get_tooltips : [> `toolbar ] Gtk.obj -> bool
    = "ml_gtk_toolbar_get_tooltips"
  val set :
    ?orientation:GtkEnums.orientation ->
    ?style:GtkEnums.toolbar_style ->
    ?tooltips:bool -> [> `toolbar ] Gtk.obj -> unit
  external unset_style : [> `toolbar ] Gtk.obj -> unit
    = "ml_gtk_toolbar_unset_style"
  external get_icon_size : [> `toolbar ] Gtk.obj -> Gtk.Tags.icon_size
    = "ml_gtk_toolbar_get_icon_size"
  external set_icon_size :
    [> `toolbar ] Gtk.obj -> Gtk.Tags.icon_size -> unit
    = "ml_gtk_toolbar_set_icon_size"
  external unset_icon_size : [> `toolbar ] Gtk.obj -> unit
    = "ml_gtk_toolbar_unset_icon_size"
  external insert :
    [> `toolbar ] Gtk.obj -> [> `toolitem ] Gtk.obj -> pos:int -> unit
    = "ml_gtk_toolbar_insert"
  external get_item_index :
    [> `toolbar ] Gtk.obj -> [> `toolitem ] Gtk.obj -> int
    = "ml_gtk_toolbar_get_item_index"
  external get_n_items : [> `toolbar ] Gtk.obj -> int
    = "ml_gtk_toolbar_get_n_items"
  external get_nth_item :
    [> `toolbar ] Gtk.obj -> int -> [ `toolitem ] Gtk.obj
    = "ml_gtk_toolbar_get_nth_item"
  external get_drop_index : [> `toolbar ] Gtk.obj -> int -> int -> int
    = "ml_gtk_toolbar_get_drop_index"
  external set_drop_highlight_item :
    [> `toolbar ] Gtk.obj -> [> `toolitem ] Gtk.obj option -> int -> unit
    = "ml_gtk_toolbar_set_drop_highlight_item"
  external get_relief_style : [> `toolbar ] Gtk.obj -> GtkEnums.relief_style
    = "ml_gtk_toolbar_get_relief_style"
end