sig
  type item
  val cursor_set : Evas.obj -> string -> unit
  val cursor_get : Evas.obj -> string
  val cursor_unset : Evas.obj -> unit
  val cursor_style_set : Evas.obj -> string -> unit
  val cursor_style_get : Evas.obj -> string
  val cursor_theme_search_enabled_set : Evas.obj -> bool -> unit
  val cursor_theme_search_enabled_get : Evas.obj -> bool
  val tree_dump : Evas.obj -> unit
  val tree_dot_dump : Evas.obj -> string -> unit
  val focus_get : Evas.obj -> bool
  val focus_set : Evas.obj -> bool -> unit
  val focus_allow_set : Evas.obj -> bool -> unit
  val focus_allow_get : Evas.obj -> bool
  val focus_custom_chain_set : Evas.obj -> Evas.obj list -> unit
  val focus_custom_chain_unset : Evas.obj -> unit
  val focus_custom_chain_get : Evas.obj -> Evas.obj list
  val focus_custom_chain_append :
    Evas.obj -> Evas.obj -> Evas.obj option -> unit
  val focus_custom_chain_prepend :
    Evas.obj -> Evas.obj -> Evas.obj option -> unit
  val focus_next : Evas.obj -> Elm.focus_direction -> unit
  val focus_next_object_get :
    Evas.obj -> Elm.focus_direction -> Evas.obj option
  val focus_next_object_set :
    Evas.obj -> Evas.obj option -> Elm.focus_direction -> unit
  val focused_object_get : Evas.obj -> Evas.obj option
  val tree_focus_allow_get : Evas.obj -> bool
  val tree_focus_allow_set : Evas.obj -> bool -> unit
  val focus_highlight_style_set : Evas.obj -> string -> bool
  val focus_highlight_style_get : Evas.obj -> string
  val focused_item_get : Evas.obj -> Elm_object.item option
  val item_focus_set : Elm_object.item -> bool -> unit
  val item_focus_get : Elm_object.item -> bool
  val focus_next_item_get :
    Evas.obj -> Elm.focus_direction -> Elm_object.item option
  val focus_next_item_set :
    Evas.obj -> Elm_object.item -> Elm.focus_direction -> unit
  val focus_move_policy_set : Evas.obj -> Elm.focus_move_policy -> unit
  val focus_move_policy_get : Evas.obj -> Elm.focus_move_policy
  val focus_region_show_mode_set :
    Evas.obj -> Elm.focus_region_show_mode -> unit
  val focus_region_show_mode_get : Evas.obj -> Elm.focus_region_show_mode
  val focus_move_policy_automatic_set : Evas.obj -> bool -> unit
  val focus_move_policy_automatic_get : Evas.obj -> bool
  type select_mode = [ `always | `default | `display_only | `max | `none ]
  type item_signal_cb = Elm_object.item -> string -> string -> unit
  val item_of_ptr : Evas.ptr -> Elm_object.item
  val domain_translatable_part_text_set :
    Evas.obj ->
    ?part:string -> ?domain:string -> ?text:string -> unit -> unit
  val translatable_part_text_get : Evas.obj -> ?p:string -> unit -> string
  val domain_part_text_translatable_set :
    Evas.obj -> ?part:string -> ?domain:string -> bool -> unit
  val text_set : Evas.obj -> string -> unit
  val part_text_set : Evas.obj -> ?p:string -> string -> unit
  val text_get : Evas.obj -> string
  val part_text_get : Evas.obj -> ?p:string -> unit -> string
  val content_set : Evas.obj -> Evas.obj -> unit
  val part_content_set : Evas.obj -> ?p:string -> Evas.obj -> unit
  val part_content_set_null : Evas.obj -> ?p:string -> unit -> unit
  val part_content_get : Evas.obj -> ?p:string -> unit -> Evas.obj
  val content_unset : Evas.obj -> Evas.obj
  val part_content_unset : Evas.obj -> ?p:string -> unit -> Evas.obj
  val access_info_set : Evas.obj -> string -> unit
  val access_info_get : Evas.obj -> string
  val name_find : Evas.obj -> string -> int -> Evas.obj option
  val signal_emit : Evas.obj -> string -> string -> unit
  val signal_callback_add :
    Evas.obj -> string -> string -> Edje.signal_cb -> unit
  val event_callback_add : Evas.obj -> Elm.event_cb -> unit
  val orientation_mode_disabled_set : Evas.obj -> bool -> unit
  val orientation_mode_disabled_get : Evas.obj -> bool
  val item_widget_get : Elm_object.item -> Evas.obj
  val item_content_set : Elm_object.item -> Evas.obj -> unit
  val item_part_content_set :
    Elm_object.item -> ?p:string -> Evas.obj -> unit
  val item_part_content_get :
    Elm_object.item -> ?p:string -> unit -> Evas.obj
  val item_part_content_unset :
    Elm_object.item -> ?p:string -> unit -> Evas.obj
  val item_text_set : Elm_object.item -> string -> unit
  val item_part_text_set : Elm_object.item -> ?p:string -> string -> unit
  val item_text_get : Elm_object.item -> string
  val item_part_text_get : Elm_object.item -> ?p:string -> unit -> string
  val item_domain_translatable_part_text_set :
    Elm_object.item -> ?p:string -> ?d:string -> ?t:string -> unit -> unit
  val item_translatable_part_text_get :
    Elm_object.item -> ?p:string -> unit -> string
  val item_domain_part_text_translatable_set :
    Elm_object.item -> ?p:string -> ?d:string -> bool -> unit
  val item_access_info_set : Elm_object.item -> string -> unit
  val item_access_register : Elm_object.item -> Evas.obj
  val item_access_unregister : Elm_object.item -> unit
  val item_access_object_get : Elm_object.item -> Evas.obj
  val item_access_order_set : Elm_object.item -> Evas.obj list -> unit
  val item_access_order_get : Elm_object.item -> Evas.obj list
  val item_access_order_unset : Elm_object.item -> unit
  val item_signal_emit : Elm_object.item -> string -> string -> unit
  val item_signal_callback_add :
    Elm_object.item -> string -> string -> Elm_object.item_signal_cb -> unit
  val item_del : Elm_object.item -> unit
  val item_tooltip_text_set : Elm_object.item -> string -> unit
  val item_tooltip_content_cb_set :
    Elm_object.item -> Elm_object.item Elm.tooltip_item_content_cb -> unit
  val item_tooltip_unset : Elm_object.item -> unit
  val item_tooltip_style_set : Elm_object.item -> string -> unit
  val item_tooltip_style_get : Elm_object.item -> string
  val item_cursor_set : Evas.obj -> string -> unit
  val item_cursor_unset : Evas.obj -> unit
  val item_cursor_style_set : Elm_object.item -> string -> unit
  val item_cursor_style_get : Elm_object.item -> string
  val item_cursor_engine_only_set : Elm_object.item -> bool -> unit
  val item_cursor_engine_only_get : Elm_object.item -> bool
  val item_track : Elm_object.item -> Evas.obj
  val item_untrack : Elm_object.item -> unit
  val item_track_get : Elm_object.item -> int
  val item_style_set : Elm_object.item -> string -> unit
  val item_style_get : Elm_object.item -> string
  type t_addx =
      ?size_hint:Evas_object.size_hint list ->
      ?size:int * int ->
      ?pos:int * int ->
      ?win:Evas.obj ->
      ?inwin:Evas.obj ->
      ?box:Evas.obj ->
      ?content_of:Evas.obj ->
      ?packing:(Evas.obj -> unit) ->
      ?text:string ->
      ?content:Evas.obj ->
      ?style:string ->
      ?color:int * int * int * int ->
      ?part_text:(string * string) list ->
      ?part_content:(string * Evas.obj) list ->
      ?cb:Evas_object_smart.sig_with_cb list ->
      ?show:bool -> Evas.obj -> Evas.obj
  val create_addx : (Evas.obj -> Evas.obj) -> Elm_object.t_addx
  val scroll_hold_push : Evas.obj -> unit
  val scroll_hold_pop : Evas.obj -> unit
  val scroll_hold_get : Evas.obj -> int
  val scroll_freeze_push : Evas.obj -> unit
  val scroll_freeze_pop : Evas.obj -> unit
  val scroll_freeze_get : Evas.obj -> int
  val scroll_lock_x_set : Evas.obj -> bool -> unit
  val scroll_lock_y_set : Evas.obj -> bool -> unit
  val scroll_lock_x_get : Evas.obj -> bool
  val scroll_lock_y_get : Evas.obj -> bool
  val scroll_item_loop_enabled_set : Evas.obj -> bool -> unit
  val scroll_item_loop_enabled_get : Evas.obj -> bool
  val mirrored_get : Evas.obj -> bool
  val mirrored_set : Evas.obj -> bool -> unit
  val mirrored_automatic_get : Evas.obj -> bool
  val mirrored_automatic_set : Evas.obj -> bool -> unit
  val scale_set : Evas.obj -> float -> unit
  val scale_get : Evas.obj -> float
  val style_set : Evas.obj -> string -> bool
  val style_get : Evas.obj -> string
  val disabled_set : Evas.obj -> bool -> unit
  val disabled_get : Evas.obj -> bool
  val item_disabled_set : Elm_object.item -> bool -> unit
  val item_disabled_get : Elm_object.item -> bool
  val theme_set : Evas.obj -> Elm.theme option -> unit
  val theme_get : Evas.obj -> Elm.theme option
  val widget_check : Evas.obj -> bool
  val parent_widget_get : Evas.obj -> Evas.obj option
  val top_widget_get : Evas.obj -> Evas.obj option
  val widget_type_get : Evas.obj -> string option
  val tooltip_move_freeze_push : Evas.obj -> unit
  val tooltip_move_freeze_pop : Evas.obj -> unit
  val tooltip_move_freeze_get : Evas.obj -> int
  val tooltip_show : Evas.obj -> unit
  val tooltip_hide : Evas.obj -> unit
  val tooltip_text_set : Evas.obj -> string -> unit
  val tooltip_content_cb_set : Evas.obj -> Elm.tooltip_content_cb -> unit
  val tooltip_unset : Evas.obj -> unit
  val tooltip_style_set : Evas.obj -> string -> unit
  val tooltip_style_get : Evas.obj -> string
  val tooltip_window_mode_set : Evas.obj -> bool -> bool
  val tooltip_window_mode_get : Evas.obj -> bool
  val tooltip_orient_set : Evas.obj -> Elm.tooltip_orient -> unit
  val tooltip_orient_get : Evas.obj -> Elm.tooltip_orient
end