;; -*- scheme -*-

(include "atk-types.defs")

;; From /usr/include/atk-1.0/atk/atkaction.h

(define-function atk_action_get_type
  (c-name "atk_action_get_type")
  (return-type "GType")
  (parameters
  )
)

(define-method do_action
  (of-object "AtkAction")
  (c-name "atk_action_do_action")
  (return-type "gboolean")
  (parameters
    '("gint" "i")
  )
)

(define-method get_n_actions
  (of-object "AtkAction")
  (c-name "atk_action_get_n_actions")
  (return-type "gint")
)

(define-method get_description
  (of-object "AtkAction")
  (c-name "atk_action_get_description")
  (return-type "const-gchar*")
  (parameters
    '("gint" "i")
  )
)

(define-method get_name
  (of-object "AtkAction")
  (c-name "atk_action_get_name")
  (return-type "const-gchar*")
  (parameters
    '("gint" "i")
  )
)

(define-method get_keybinding
  (of-object "AtkAction")
  (c-name "atk_action_get_keybinding")
  (return-type "const-gchar*")
  (parameters
    '("gint" "i")
  )
)

(define-method set_description
  (of-object "AtkAction")
  (c-name "atk_action_set_description")
  (return-type "gboolean")
  (parameters
    '("gint" "i")
    '("const-gchar*" "desc")
  )
)



;; From /usr/include/atk-1.0/atk/atkcomponent.h

(define-function atk_component_get_type
  (c-name "atk_component_get_type")
  (return-type "GType")
  (parameters
  )
)

(define-method add_focus_handler
  (of-object "AtkComponent")
  (c-name "atk_component_add_focus_handler")
  (return-type "guint")
  (parameters
    '("AtkFocusHandler" "handler")
  )
)

(define-method contains
  (of-object "AtkComponent")
  (c-name "atk_component_contains")
  (return-type "gboolean")
  (parameters
    '("gint" "x")
    '("gint" "y")
    '("AtkCoordType" "coord_type")
  )
)

(define-method ref_accessible_at_point
  (of-object "AtkComponent")
  (c-name "atk_component_ref_accessible_at_point")
  (return-type "AtkObject*")
  (parameters
    '("gint" "x")
    '("gint" "y")
    '("AtkCoordType" "coord_type")
  )
)

(define-method get_extents
  (of-object "AtkComponent")
  (c-name "atk_component_get_extents")
  (return-type "none")
  (parameters
    '("gint*" "x")
    '("gint*" "y")
    '("gint*" "width")
    '("gint*" "height")
    '("AtkCoordType" "coord_type")
  )
)

(define-method get_position
  (of-object "AtkComponent")
  (c-name "atk_component_get_position")
  (return-type "none")
  (parameters
    '("gint*" "x")
    '("gint*" "y")
    '("AtkCoordType" "coord_type")
  )
)

(define-method get_size
  (of-object "AtkComponent")
  (c-name "atk_component_get_size")
  (return-type "none")
  (parameters
    '("gint*" "width")
    '("gint*" "height")
  )
)

(define-method grab_focus
  (of-object "AtkComponent")
  (c-name "atk_component_grab_focus")
  (return-type "gboolean")
)

(define-method remove_focus_handler
  (of-object "AtkComponent")
  (c-name "atk_component_remove_focus_handler")
  (return-type "none")
  (parameters
    '("guint" "handler_id")
  )
)

(define-method set_extents
  (of-object "AtkComponent")
  (c-name "atk_component_set_extents")
  (return-type "gboolean")
  (parameters
    '("gint" "x")
    '("gint" "y")
    '("gint" "width")
    '("gint" "height")
    '("AtkCoordType" "coord_type")
  )
)

(define-method set_position
  (of-object "AtkComponent")
  (c-name "atk_component_set_position")
  (return-type "gboolean")
  (parameters
    '("gint" "x")
    '("gint" "y")
    '("AtkCoordType" "coord_type")
  )
)

(define-method set_size
  (of-object "AtkComponent")
  (c-name "atk_component_set_size")
  (return-type "gboolean")
  (parameters
    '("gint" "width")
    '("gint" "height")
  )
)



;; From /usr/include/atk-1.0/atk/atkdocument.h

(define-function atk_document_get_type
  (c-name "atk_document_get_type")
  (return-type "GType")
)

(define-method get_document_type
  (of-object "AtkDocument")
  (c-name "atk_document_get_document_type")
  (return-type "const-gchar*")
)

(define-method get_document
  (of-object "AtkDocument")
  (c-name "atk_document_get_document")
  (return-type "gpointer")
)



;; From /usr/include/atk-1.0/atk/atkeditabletext.h

(define-function atk_editable_text_get_type
  (c-name "atk_editable_text_get_type")
  (return-type "GType")
)

(define-method set_run_attributes
  (of-object "AtkEditableText")
  (c-name "atk_editable_text_set_run_attributes")
  (return-type "gboolean")
  (parameters
    '("AtkAttributeSet*" "attrib_set")
    '("gint" "start_offset")
    '("gint" "end_offset")
  )
)

(define-method set_text_contents
  (of-object "AtkEditableText")
  (c-name "atk_editable_text_set_text_contents")
  (return-type "none")
  (parameters
    '("const-gchar*" "string")
  )
)

(define-method insert_text
  (of-object "AtkEditableText")
  (c-name "atk_editable_text_insert_text")
  (return-type "none")
  (parameters
    '("const-gchar*" "string")
    '("gint" "length")
    '("gint*" "position")
  )
)

(define-method copy_text
  (of-object "AtkEditableText")
  (c-name "atk_editable_text_copy_text")
  (return-type "none")
  (parameters
    '("gint" "start_pos")
    '("gint" "end_pos")
  )
)

(define-method cut_text
  (of-object "AtkEditableText")
  (c-name "atk_editable_text_cut_text")
  (return-type "none")
  (parameters
    '("gint" "start_pos")
    '("gint" "end_pos")
  )
)

(define-method delete_text
  (of-object "AtkEditableText")
  (c-name "atk_editable_text_delete_text")
  (return-type "none")
  (parameters
    '("gint" "start_pos")
    '("gint" "end_pos")
  )
)

(define-method paste_text
  (of-object "AtkEditableText")
  (c-name "atk_editable_text_paste_text")
  (return-type "none")
  (parameters
    '("gint" "position")
  )
)



;; From /usr/include/atk-1.0/atk/atk.h



;; From /usr/include/atk-1.0/atk/atkhyperlink.h

(define-function atk_hyperlink_get_type
  (c-name "atk_hyperlink_get_type")
  (return-type "GType")
)

(define-method get_uri
  (of-object "AtkHyperlink")
  (c-name "atk_hyperlink_get_uri")
  (return-type "gchar*")
  (parameters
    '("gint" "i")
  )
)

(define-method get_object
  (of-object "AtkHyperlink")
  (c-name "atk_hyperlink_get_object")
  (return-type "AtkObject*")
  (parameters
    '("gint" "i")
  )
)

(define-method get_end_index
  (of-object "AtkHyperlink")
  (c-name "atk_hyperlink_get_end_index")
  (return-type "gint")
)

(define-method get_start_index
  (of-object "AtkHyperlink")
  (c-name "atk_hyperlink_get_start_index")
  (return-type "gint")
)

(define-method is_valid
  (of-object "AtkHyperlink")
  (c-name "atk_hyperlink_is_valid")
  (return-type "gboolean")
)

(define-method get_n_anchors
  (of-object "AtkHyperlink")
  (c-name "atk_hyperlink_get_n_anchors")
  (return-type "gint")
)



;; From /usr/include/atk-1.0/atk/atkhypertext.h

(define-function atk_hypertext_get_type
  (c-name "atk_hypertext_get_type")
  (return-type "GType")
)

(define-method get_link
  (of-object "AtkHypertext")
  (c-name "atk_hypertext_get_link")
  (return-type "AtkHyperlink*")
  (parameters
    '("gint" "link_index")
  )
)

(define-method get_n_links
  (of-object "AtkHypertext")
  (c-name "atk_hypertext_get_n_links")
  (return-type "gint")
)

(define-method get_link_index
  (of-object "AtkHypertext")
  (c-name "atk_hypertext_get_link_index")
  (return-type "gint")
  (parameters
    '("gint" "char_index")
  )
)



;; From /usr/include/atk-1.0/atk/atkimage.h

(define-function atk_image_get_type
  (c-name "atk_image_get_type")
  (return-type "GType")
)

(define-method get_image_description
  (of-object "AtkImage")
  (c-name "atk_image_get_image_description")
  (return-type "const-gchar*")
)

(define-method get_image_size
  (of-object "AtkImage")
  (c-name "atk_image_get_image_size")
  (return-type "none")
  (parameters
    '("gint*" "width")
    '("gint*" "height")
  )
)

(define-method set_image_description
  (of-object "AtkImage")
  (c-name "atk_image_set_image_description")
  (return-type "gboolean")
  (parameters
    '("const-gchar*" "description")
  )
)

(define-method get_image_position
  (of-object "AtkImage")
  (c-name "atk_image_get_image_position")
  (return-type "none")
  (parameters
    '("gint*" "x")
    '("gint*" "y")
    '("AtkCoordType" "coord_type")
  )
)



;; From /usr/include/atk-1.0/atk/atknoopobjectfactory.h

(define-function atk_no_op_object_factory_get_type
  (c-name "atk_no_op_object_factory_get_type")
  (return-type "GType")
  (parameters
  )
)

(define-function atk_no_op_object_factory_new
  (c-name "atk_no_op_object_factory_new")
  (return-type "AtkObjectFactory*")
  (is-constructor-of AtkNoOpObjectFactory)
  (parameters
  )
)



;; From /usr/include/atk-1.0/atk/atknoopobject.h

(define-function atk_no_op_object_get_type
  (c-name "atk_no_op_object_get_type")
  (return-type "GType")
)

(define-function atk_no_op_object_new
  (c-name "atk_no_op_object_new")
  (return-type "AtkNoOpObject*")
  (is-constructor-of AtkNoOpObject)
  (parameters
    '("GObject*" "obj")
  )
)



;; From /usr/include/atk-1.0/atk/atkobjectfactory.h

(define-function atk_object_factory_get_type
  (c-name "atk_object_factory_get_type")
  (return-type "GType")
  (parameters
  )
)

(define-method create_accessible
  (of-object "AtkObjectFactory")
  (c-name "atk_object_factory_create_accessible")
  (return-type "AtkObject*")
  (parameters
    '("GObject*" "obj")
  )
)

(define-method invalidate
  (of-object "AtkObjectFactory")
  (c-name "atk_object_factory_invalidate")
  (return-type "none")
)



;; From /usr/include/atk-1.0/atk/atkobject.h

(define-function atk_object_get_type
  (c-name "atk_object_get_type")
  (return-type "GType")
)

(define-function atk_implementor_get_type
  (c-name "atk_implementor_get_type")
  (return-type "GType")
)

(define-method ref_accessible
  (of-object "AtkImplementor")
  (c-name "atk_implementor_ref_accessible")
  (return-type "AtkObject*")
)

(define-method get_name
  (of-object "AtkObject")
  (c-name "atk_object_get_name")
  (return-type "const-gchar*")
)

(define-method get_description
  (of-object "AtkObject")
  (c-name "atk_object_get_description")
  (return-type "const-gchar*")
)

(define-method get_parent
  (of-object "AtkObject")
  (c-name "atk_object_get_parent")
  (return-type "AtkObject*")
)

(define-method get_n_accessible_children
  (of-object "AtkObject")
  (c-name "atk_object_get_n_accessible_children")
  (return-type "gint")
)

(define-method ref_accessible_child
  (of-object "AtkObject")
  (c-name "atk_object_ref_accessible_child")
  (return-type "AtkObject*")
  (parameters
    '("gint" "i")
  )
)

(define-method ref_relation_set
  (of-object "AtkObject")
  (c-name "atk_object_ref_relation_set")
  (return-type "AtkRelationSet*")
)

(define-method get_role
  (of-object "AtkObject")
  (c-name "atk_object_get_role")
  (return-type "AtkRole")
)

(define-method get_layer
  (of-object "AtkObject")
  (c-name "atk_object_get_layer")
  (return-type "AtkLayer")
)

(define-method get_mdi_zorder
  (of-object "AtkObject")
  (c-name "atk_object_get_mdi_zorder")
  (return-type "gint")
)

(define-method ref_state_set
  (of-object "AtkObject")
  (c-name "atk_object_ref_state_set")
  (return-type "AtkStateSet*")
)

(define-method get_index_in_parent
  (of-object "AtkObject")
  (c-name "atk_object_get_index_in_parent")
  (return-type "gint")
)

(define-method set_name
  (of-object "AtkObject")
  (c-name "atk_object_set_name")
  (return-type "none")
  (parameters
    '("const-gchar*" "name")
  )
)

(define-method set_description
  (of-object "AtkObject")
  (c-name "atk_object_set_description")
  (return-type "none")
  (parameters
    '("const-gchar*" "description")
  )
)

(define-method set_parent
  (of-object "AtkObject")
  (c-name "atk_object_set_parent")
  (return-type "none")
  (parameters
    '("AtkObject*" "parent")
  )
)

(define-method set_role
  (of-object "AtkObject")
  (c-name "atk_object_set_role")
  (return-type "none")
  (parameters
    '("AtkRole" "role")
  )
)

(define-method connect_property_change_handler
  (of-object "AtkObject")
  (c-name "atk_object_connect_property_change_handler")
  (return-type "guint")
  (parameters
    '("AtkPropertyChangeHandler*" "handler")
  )
)

(define-method remove_property_change_handler
  (of-object "AtkObject")
  (c-name "atk_object_remove_property_change_handler")
  (return-type "none")
  (parameters
    '("guint" "handler_id")
  )
)

(define-method notify_state_change
  (of-object "AtkObject")
  (c-name "atk_object_notify_state_change")
  (return-type "none")
  (parameters
    '("AtkState" "state")
    '("gboolean" "value")
  )
)



;; From /usr/include/atk-1.0/atk/atkregistry.h

(define-function atk_registry_get_type
  (c-name "atk_registry_get_type")
  (return-type "GType")
)

(define-method set_factory_type
  (of-object "AtkRegistry")
  (c-name "atk_registry_set_factory_type")
  (return-type "none")
  (parameters
    '("GType" "type")
    '("GType" "factory_type")
  )
)

(define-method get_factory_type
  (of-object "AtkRegistry")
  (c-name "atk_registry_get_factory_type")
  (return-type "GType")
  (parameters
    '("GType" "type")
  )
)

(define-method get_factory
  (of-object "AtkRegistry")
  (c-name "atk_registry_get_factory")
  (return-type "AtkObjectFactory*")
  (parameters
    '("GType" "type")
  )
)

(define-function get_default_registry
  (c-name "atk_get_default_registry")
  (return-type "AtkRegistry*")
  (parameters
  )
)



;; From /usr/include/atk-1.0/atk/atkrelation.h

(define-function atk_relation_get_type
  (c-name "atk_relation_get_type")
  (return-type "GType")
)

(define-function relation_type_register
  (c-name "atk_relation_type_register")
  (return-type "AtkRelationType")
  (parameters
    '("const-gchar*" "name")
  )
)

(define-method get_name
  (of-object "AtkRelationType")
  (c-name "atk_relation_type_get_name")
  (return-type "const-gchar*")
)

(define-function relation_type_for_name
  (c-name "atk_relation_type_for_name")
  (return-type "AtkRelationType")
  (parameters
    '("const-gchar*" "name")
  )
)

(define-function relation_new
  (c-name "atk_relation_new")
  (return-type "AtkRelation*")
  (is-constructor-of AtkRelation)
  (parameters
    '("AtkObject**" "targets")
    '("gint" "n_targets")
    '("AtkRelationType" "relationship")
  )
)

(define-method get_relation_type
  (of-object "AtkRelation")
  (c-name "atk_relation_get_relation_type")
  (return-type "AtkRelationType")
)

(define-method get_target
  (of-object "AtkRelation")
  (c-name "atk_relation_get_target")
  (return-type "GPtrArray*")
)



;; From /usr/include/atk-1.0/atk/atkrelationset.h

(define-function atk_relation_set_get_type
  (c-name "atk_relation_set_get_type")
  (return-type "GType")
)

(define-function relation_set_new
  (c-name "atk_relation_set_new")
  (is-constructor-of AtkRelationSet)
  (return-type "AtkRelationSet*")
)

(define-method contains
  (of-object "AtkRelationSet")
  (c-name "atk_relation_set_contains")
  (return-type "gboolean")
  (parameters
    '("AtkRelationType" "relationship")
  )
)

(define-method remove
  (of-object "AtkRelationSet")
  (c-name "atk_relation_set_remove")
  (return-type "none")
  (parameters
    '("AtkRelation*" "relation")
  )
)

(define-method add
  (of-object "AtkRelationSet")
  (c-name "atk_relation_set_add")
  (return-type "none")
  (parameters
    '("AtkRelation*" "relation")
  )
)

(define-method get_n_relations
  (of-object "AtkRelationSet")
  (c-name "atk_relation_set_get_n_relations")
  (return-type "gint")
)

(define-method get_relation
  (of-object "AtkRelationSet")
  (c-name "atk_relation_set_get_relation")
  (return-type "AtkRelation*")
  (parameters
    '("gint" "i")
  )
)

(define-method get_relation_by_type
  (of-object "AtkRelationSet")
  (c-name "atk_relation_set_get_relation_by_type")
  (return-type "AtkRelation*")
  (parameters
    '("AtkRelationType" "relationship")
  )
)



;; From /usr/include/atk-1.0/atk/atkselection.h

(define-function atk_selection_get_type
  (c-name "atk_selection_get_type")
  (return-type "GType")
  (parameters
  )
)

(define-method add_selection
  (of-object "AtkSelection")
  (c-name "atk_selection_add_selection")
  (return-type "gboolean")
  (parameters
    '("gint" "i")
  )
)

(define-method clear_selection
  (of-object "AtkSelection")
  (c-name "atk_selection_clear_selection")
  (return-type "gboolean")
)

(define-method ref_selection
  (of-object "AtkSelection")
  (c-name "atk_selection_ref_selection")
  (return-type "AtkObject*")
  (parameters
    '("gint" "i")
  )
)

(define-method get_selection_count
  (of-object "AtkSelection")
  (c-name "atk_selection_get_selection_count")
  (return-type "gint")
)

(define-method is_child_selected
  (of-object "AtkSelection")
  (c-name "atk_selection_is_child_selected")
  (return-type "gboolean")
  (parameters
    '("gint" "i")
  )
)

(define-method remove_selection
  (of-object "AtkSelection")
  (c-name "atk_selection_remove_selection")
  (return-type "gboolean")
  (parameters
    '("gint" "i")
  )
)

(define-method select_all_selection
  (of-object "AtkSelection")
  (c-name "atk_selection_select_all_selection")
  (return-type "gboolean")
)



;; From /usr/include/atk-1.0/atk/atkstate.h

(define-method get_name
  (of-object "AtkStateType")
  (c-name "atk_state_type_get_name")
  (return-type "const-gchar*")
)

(define-function state_type_for_name
  (c-name "atk_state_type_for_name")
  (return-type "AtkStateType")
  (parameters
    '("const-gchar*" "name")
  )
)



;; From /usr/include/atk-1.0/atk/atkstateset.h

(define-function atk_state_set_get_type
  (c-name "atk_state_set_get_type")
  (return-type "GType")
)

(define-function atk_state_set_new
  (c-name "atk_state_set_new")
  (return-type "AtkStateSet*")
  (is-constructor-of AtkSetSet)
)

(define-method is_empty
  (of-object "AtkStateSet")
  (c-name "atk_state_set_is_empty")
  (return-type "gboolean")
)

(define-method add_state
  (of-object "AtkStateSet")
  (c-name "atk_state_set_add_state")
  (return-type "gboolean")
  (parameters
    '("AtkStateType" "type")
  )
)

(define-method add_states
  (of-object "AtkStateSet")
  (c-name "atk_state_set_add_states")
  (return-type "none")
  (parameters
    '("AtkStateType*" "types")
    '("gint" "n_types")
  )
)

(define-method clear_states
  (of-object "AtkStateSet")
  (c-name "atk_state_set_clear_states")
  (return-type "none")
)

(define-method contains_state
  (of-object "AtkStateSet")
  (c-name "atk_state_set_contains_state")
  (return-type "gboolean")
  (parameters
    '("AtkStateType" "type")
  )
)

(define-method contains_states
  (of-object "AtkStateSet")
  (c-name "atk_state_set_contains_states")
  (return-type "gboolean")
  (parameters
    '("AtkStateType*" "types")
    '("gint" "n_types")
  )
)

(define-method remove_state
  (of-object "AtkStateSet")
  (c-name "atk_state_set_remove_state")
  (return-type "gboolean")
  (parameters
    '("AtkStateType" "type")
  )
)

(define-method and_sets
  (of-object "AtkStateSet")
  (c-name "atk_state_set_and_sets")
  (return-type "AtkStateSet*")
  (parameters
    '("AtkStateSet*" "compare_set")
  )
)

(define-method or_sets
  (of-object "AtkStateSet")
  (c-name "atk_state_set_or_sets")
  (return-type "AtkStateSet*")
  (parameters
    '("AtkStateSet*" "compare_set")
  )
)

(define-method xor_sets
  (of-object "AtkStateSet")
  (c-name "atk_state_set_xor_sets")
  (return-type "AtkStateSet*")
  (parameters
    '("AtkStateSet*" "compare_set")
  )
)



;; From /usr/include/atk-1.0/atk/atkstreamablecontent.h

(define-function atk_streamable_content_get_type
  (c-name "atk_streamable_content_get_type")
  (return-type "GType")
)

(define-method get_n_mime_types
  (of-object "AtkStreamableContent")
  (c-name "atk_streamable_content_get_n_mime_types")
  (return-type "gint")
)

(define-method get_mime_type
  (of-object "AtkStreamableContent")
  (c-name "atk_streamable_content_get_mime_type")
  (return-type "const-gchar*")
  (parameters
    '("gint" "i")
  )
)

(define-method get_stream
  (of-object "AtkStreamableContent")
  (c-name "atk_streamable_content_get_stream")
  (return-type "GIOChannel*")
  (parameters
    '("const-gchar*" "mime_type")
  )
)



;; From /usr/include/atk-1.0/atk/atktable.h

(define-function atk_table_get_type
  (c-name "atk_table_get_type")
  (return-type "GType")
  (parameters
  )
)

(define-method ref_at
  (of-object "AtkTable")
  (c-name "atk_table_ref_at")
  (return-type "AtkObject*")
  (parameters
    '("gint" "row")
    '("gint" "column")
  )
)

(define-method get_index_at
  (of-object "AtkTable")
  (c-name "atk_table_get_index_at")
  (return-type "gint")
  (parameters
    '("gint" "row")
    '("gint" "column")
  )
)

(define-method get_column_at_index
  (of-object "AtkTable")
  (c-name "atk_table_get_column_at_index")
  (return-type "gint")
  (parameters
    '("gint" "index")
  )
)

(define-method get_row_at_index
  (of-object "AtkTable")
  (c-name "atk_table_get_row_at_index")
  (return-type "gint")
  (parameters
    '("gint" "index")
  )
)

(define-method get_n_columns
  (of-object "AtkTable")
  (c-name "atk_table_get_n_columns")
  (return-type "gint")
)

(define-method get_n_rows
  (of-object "AtkTable")
  (c-name "atk_table_get_n_rows")
  (return-type "gint")
)

(define-method get_column_extent_at
  (of-object "AtkTable")
  (c-name "atk_table_get_column_extent_at")
  (return-type "gint")
  (parameters
    '("gint" "row")
    '("gint" "column")
  )
)

(define-method get_row_extent_at
  (of-object "AtkTable")
  (c-name "atk_table_get_row_extent_at")
  (return-type "gint")
  (parameters
    '("gint" "row")
    '("gint" "column")
  )
)

(define-method get_caption
  (of-object "AtkTable")
  (c-name "atk_table_get_caption")
  (return-type "AtkObject*")
)

(define-method get_column_description
  (of-object "AtkTable")
  (c-name "atk_table_get_column_description")
  (return-type "const-gchar*")
  (parameters
    '("gint" "column")
  )
)

(define-method get_column_header
  (of-object "AtkTable")
  (c-name "atk_table_get_column_header")
  (return-type "AtkObject*")
  (parameters
    '("gint" "column")
  )
)

(define-method get_row_description
  (of-object "AtkTable")
  (c-name "atk_table_get_row_description")
  (return-type "const-gchar*")
  (parameters
    '("gint" "row")
  )
)

(define-method get_row_header
  (of-object "AtkTable")
  (c-name "atk_table_get_row_header")
  (return-type "AtkObject*")
  (parameters
    '("gint" "row")
  )
)

(define-method get_summary
  (of-object "AtkTable")
  (c-name "atk_table_get_summary")
  (return-type "AtkObject*")
)

(define-method set_caption
  (of-object "AtkTable")
  (c-name "atk_table_set_caption")
  (return-type "none")
  (parameters
    '("AtkObject*" "caption")
  )
)

(define-method set_column_description
  (of-object "AtkTable")
  (c-name "atk_table_set_column_description")
  (return-type "none")
  (parameters
    '("gint" "column")
    '("const-gchar*" "description")
  )
)

(define-method set_column_header
  (of-object "AtkTable")
  (c-name "atk_table_set_column_header")
  (return-type "none")
  (parameters
    '("gint" "column")
    '("AtkObject*" "header")
  )
)

(define-method set_row_description
  (of-object "AtkTable")
  (c-name "atk_table_set_row_description")
  (return-type "none")
  (parameters
    '("gint" "row")
    '("const-gchar*" "description")
  )
)

(define-method set_row_header
  (of-object "AtkTable")
  (c-name "atk_table_set_row_header")
  (return-type "none")
  (parameters
    '("gint" "row")
    '("AtkObject*" "header")
  )
)

(define-method set_summary
  (of-object "AtkTable")
  (c-name "atk_table_set_summary")
  (return-type "none")
  (parameters
    '("AtkObject*" "accessible")
  )
)

(define-method get_selected_columns
  (of-object "AtkTable")
  (c-name "atk_table_get_selected_columns")
  (return-type "gint")
  (parameters
    '("gint**" "selected")
  )
)

(define-method get_selected_rows
  (of-object "AtkTable")
  (c-name "atk_table_get_selected_rows")
  (return-type "gint")
  (parameters
    '("gint**" "selected")
  )
)

(define-method is_column_selected
  (of-object "AtkTable")
  (c-name "atk_table_is_column_selected")
  (return-type "gboolean")
  (parameters
    '("gint" "column")
  )
)

(define-method is_row_selected
  (of-object "AtkTable")
  (c-name "atk_table_is_row_selected")
  (return-type "gboolean")
  (parameters
    '("gint" "row")
  )
)

(define-method is_selected
  (of-object "AtkTable")
  (c-name "atk_table_is_selected")
  (return-type "gboolean")
  (parameters
    '("gint" "row")
    '("gint" "column")
  )
)

(define-method add_row_selection
  (of-object "AtkTable")
  (c-name "atk_table_add_row_selection")
  (return-type "gboolean")
  (parameters
    '("gint" "row")
  )
)

(define-method remove_row_selection
  (of-object "AtkTable")
  (c-name "atk_table_remove_row_selection")
  (return-type "gboolean")
  (parameters
    '("gint" "row")
  )
)

(define-method add_column_selection
  (of-object "AtkTable")
  (c-name "atk_table_add_column_selection")
  (return-type "gboolean")
  (parameters
    '("gint" "column")
  )
)

(define-method remove_column_selection
  (of-object "AtkTable")
  (c-name "atk_table_remove_column_selection")
  (return-type "gboolean")
  (parameters
    '("gint" "column")
  )
)



;; From /usr/include/atk-1.0/atk/atktext.h

(define-function atk_text_get_type
  (c-name "atk_text_get_type")
  (return-type "GType")
)

(define-method get_text
  (of-object "AtkText")
  (c-name "atk_text_get_text")
  (return-type "gchar*")
  (parameters
    '("gint" "start_offset")
    '("gint" "end_offset")
  )
)

(define-method get_character_at_offset
  (of-object "AtkText")
  (c-name "atk_text_get_character_at_offset")
  (return-type "gunichar")
  (parameters
    '("gint" "offset")
  )
)

(define-method get_text_after_offset
  (of-object "AtkText")
  (c-name "atk_text_get_text_after_offset")
  (return-type "gchar*")
  (parameters
    '("gint" "offset")
    '("AtkTextBoundary" "boundary_type")
    '("gint*" "start_offset")
    '("gint*" "end_offset")
  )
)

(define-method get_text_at_offset
  (of-object "AtkText")
  (c-name "atk_text_get_text_at_offset")
  (return-type "gchar*")
  (parameters
    '("gint" "offset")
    '("AtkTextBoundary" "boundary_type")
    '("gint*" "start_offset")
    '("gint*" "end_offset")
  )
)

(define-method get_text_before_offset
  (of-object "AtkText")
  (c-name "atk_text_get_text_before_offset")
  (return-type "gchar*")
  (parameters
    '("gint" "offset")
    '("AtkTextBoundary" "boundary_type")
    '("gint*" "start_offset")
    '("gint*" "end_offset")
  )
)

(define-method get_caret_offset
  (of-object "AtkText")
  (c-name "atk_text_get_caret_offset")
  (return-type "gint")
)

(define-method get_character_extents
  (of-object "AtkText")
  (c-name "atk_text_get_character_extents")
  (return-type "none")
  (parameters
    '("gint" "offset")
    '("gint*" "x")
    '("gint*" "y")
    '("gint*" "width")
    '("gint*" "height")
    '("AtkCoordType" "coords")
  )
)

(define-method get_run_attributes
  (of-object "AtkText")
  (c-name "atk_text_get_run_attributes")
  (return-type "AtkAttributeSet*")
  (parameters
    '("gint" "offset")
    '("gint*" "start_offset")
    '("gint*" "end_offset")
  )
)

(define-method get_default_attributes
  (of-object "AtkText")
  (c-name "atk_text_get_default_attributes")
  (return-type "AtkAttributeSet*")
)

(define-method get_character_count
  (of-object "AtkText")
  (c-name "atk_text_get_character_count")
  (return-type "gint")
)

(define-method get_offset_at_point
  (of-object "AtkText")
  (c-name "atk_text_get_offset_at_point")
  (return-type "gint")
  (parameters
    '("gint" "x")
    '("gint" "y")
    '("AtkCoordType" "coords")
  )
)

(define-method get_n_selections
  (of-object "AtkText")
  (c-name "atk_text_get_n_selections")
  (return-type "gint")
)

(define-method get_selection
  (of-object "AtkText")
  (c-name "atk_text_get_selection")
  (return-type "gchar*")
  (parameters
    '("gint" "selection_num")
    '("gint*" "start_offset")
    '("gint*" "end_offset")
  )
)

(define-method add_selection
  (of-object "AtkText")
  (c-name "atk_text_add_selection")
  (return-type "gboolean")
  (parameters
    '("gint" "start_offset")
    '("gint" "end_offset")
  )
)

(define-method remove_selection
  (of-object "AtkText")
  (c-name "atk_text_remove_selection")
  (return-type "gboolean")
  (parameters
    '("gint" "selection_num")
  )
)

(define-method set_selection
  (of-object "AtkText")
  (c-name "atk_text_set_selection")
  (return-type "gboolean")
  (parameters
    '("gint" "selection_num")
    '("gint" "start_offset")
    '("gint" "end_offset")
  )
)

(define-method set_caret_offset
  (of-object "AtkText")
  (c-name "atk_text_set_caret_offset")
  (return-type "gboolean")
  (parameters
    '("gint" "offset")
  )
)

(define-method free
  (of-object "AtkAttributeSet")
  (c-name "atk_attribute_set_free")
  (return-type "none")
)

(define-function text_attribute_get_name
  (c-name "atk_text_attribute_get_name")
  (return-type "const-gchar*")
  (parameters
    '("AtkTextAttribute" "attr")
  )
)

(define-function text_attribute_get_value
  (c-name "atk_text_attribute_get_value")
  (return-type "const-gchar*")
  (parameters
    '("AtkTextAttribute" "attr")
    '("gint" "index")
  )
)



;; From /usr/include/atk-1.0/atk/atkutil.h

(define-function atk_util_get_type
  (c-name "atk_util_get_type")
  (return-type "GType")
)

(define-function add_focus_tracker
  (c-name "atk_add_focus_tracker")
  (return-type "guint")
  (parameters
    '("AtkEventListener" "focus_tracker")
  )
)

(define-function remove_focus_tracker
  (c-name "atk_remove_focus_tracker")
  (return-type "none")
  (parameters
    '("guint" "tracker_id")
  )
)

(define-function focus_tracker_init
  (c-name "atk_focus_tracker_init")
  (return-type "none")
  (parameters
    '("AtkEventListenerInit" "add_function")
  )
)

(define-function focus_tracker_notify
  (c-name "atk_focus_tracker_notify")
  (return-type "none")
  (parameters
    '("AtkObject*" "object")
  )
)

(define-function add_global_event_listener
  (c-name "atk_add_global_event_listener")
  (return-type "guint")
  (parameters
    '("GSignalEmissionHook" "listener")
    '("const-gchar*" "event_type")
  )
)

(define-function remove_global_event_listener
  (c-name "atk_remove_global_event_listener")
  (return-type "none")
  (parameters
    '("guint" "listener_id")
  )
)

(define-function add_key_event_listener
  (c-name "atk_add_key_event_listener")
  (return-type "guint")
  (parameters
    '("AtkKeySnoopFunc" "listener")
    '("gpointer" "data")
  )
)

(define-function remove_key_event_listener
  (c-name "atk_remove_key_event_listener")
  (return-type "none")
  (parameters
    '("guint" "listener_id")
  )
)

(define-function get_root
  (c-name "atk_get_root")
  (return-type "AtkObject*")
)

(define-function get_toolkit_name
  (c-name "atk_get_toolkit_name")
  (return-type "const-gchar*")
)

(define-function get_toolkit_version
  (c-name "atk_get_toolkit_version")
  (return-type "const-gchar*")
)



;; From /usr/include/atk-1.0/atk/atkvalue.h

(define-function atk_value_get_type
  (c-name "atk_value_get_type")
  (return-type "GType")
)

(define-method get_current_value
  (of-object "AtkValue")
  (c-name "atk_value_get_current_value")
  (return-type "none")
  (parameters
    '("GValue*" "value")
  )
)

(define-method get_maximum_value
  (of-object "AtkValue")
  (c-name "atk_value_get_maximum_value")
  (return-type "none")
  (parameters
    '("GValue*" "value")
  )
)

(define-method get_minimum_value
  (of-object "AtkValue")
  (c-name "atk_value_get_minimum_value")
  (return-type "none")
  (parameters
    '("GValue*" "value")
  )
)

(define-method set_current_value
  (of-object "AtkValue")
  (c-name "atk_value_set_current_value")
  (return-type "gboolean")
  (parameters
    '("const-GValue*" "value")
  )
)

(define-method get_name
  (of-object "AtkRole")
  (c-name "atk_role_get_name")
  (return-type "const-gchar*")
)

(define-function role_for_name
  (c-name "atk_role_for_name")
  (return-type "AtkRole")
  (parameters
    '("const-gchar*" "name")
  )
)

