efl/src/lib/elementary/elm_interface_atspi_accessi...

446 lines
11 KiB
Plaintext
Raw Normal View History

/* FIXME: This definitely shouldn't be here. */
type Efl_Event_Cb: __undefined_type;
enum Elm.Atspi.Type
{
[[Type of accessibility object]]
regular, [[default accessibile object]]
disabled, [[skip object and its children in accessibility hierarchy]]
skipped [[skip object in accessibility hierarchy]]
}
enum Elm.Atspi.Role
{
[[Describes the role of an object visible to AT-SPI Clients.]]
invalid,
accelerator_label,
alert,
animation,
arrow,
calendar,
canvas,
check_box,
check_menu_item,
color_chooser,
column_header,
combo_box,
date_editor,
desktop_icon,
desktop_frame,
dial,
dialog,
directory_pane,
drawing_area,
file_chooser,
filler,
focus_traversable,
font_chooser,
frame,
glass_pane,
html_container,
icon,
image,
internal_frame,
label,
layered_pane,
list,
list_item,
menu,
menu_bar,
menu_item,
option_pane,
page_tab,
page_tab_list,
panel,
password_text,
popup_menu,
progress_bar,
push_button,
radio_button,
radio_menu_item,
root_pane,
row_header,
scroll_bar,
scroll_pane,
separator,
slider,
spin_button,
split_pane,
status_bar,
table,
table_cell,
table_column_header,
table_row_header,
tearoff_menu_item,
terminal,
text,
toggle_button,
tool_bar,
tool_tip,
tree,
tree_table,
unknown,
viewport,
window,
extended,
header,
footer,
paragraph,
ruler,
application,
autocomplete,
editbar,
embedded,
entry,
chart,
caption,
document_frame,
heading,
page,
section,
redundant_object,
form,
link,
input_method_window,
table_row,
tree_item,
document_spreadsheet,
document_presentation,
document_text,
document_web,
document_email,
comment,
list_box,
grouping,
image_map,
notification,
info_bar,
last_defined,
}
enum Elm.Atspi.State_Type
{
[[Describes a possible states of an object visible to AT-SPI clients.]]
legacy: elm_atspi_state;
invalid,
active,
armed,
busy,
checked,
collapsed,
defunct,
editable,
enabled,
expandable,
expanded,
focusable,
focused,
has_tooltip,
horizontal,
iconified,
modal,
multi_line,
multiselectable,
opaque,
pressed,
resizable,
selectable,
selected,
sensitive,
showing,
single_line,
stale,
transient,
vertical,
visible,
manages_descendants,
indeterminate,
required,
truncated,
animated,
invalid_entry,
supports_autocompletion,
selectable_text,
is_default,
visited,
last_defined,
}
enum Elm.Atspi.Relation_Type
{
[[Describes relation between two objects.]]
legacy: elm_atspi_relation;
null,
label_for,
labelled_by,
controller_for,
controlled_by,
member_of,
tooltip_for,
node_child_of,
node_parent_of,
extended,
flows_to,
flows_from,
subwindow_of,
embeds,
embedded_by,
popup_for,
parent_window_of,
description_for,
described_by,
last_defined,
}
type Elm.Atspi.State_Set: uint64; [[ATSPI object state set.]]
struct Elm.Atspi.Event.Handler; [[ATSPI event listener]]
struct Elm.Atspi.Event.State_Changed.Data
{
[[ATSPI state changed event data]]
type: Elm.Atspi.State_Type; [[Type of the state changed event]]
new_value: bool; [[New value]]
}
struct Elm.Atspi.Event.Geometry_Changed.Data
{
[[ATSPI geometry changed event data]]
x: int; [[X coordinate]]
y: int; [[Y coordinate]]
width: int; [[Width]]
height: int; [[Height]]
}
struct Elm.Atspi.Event.Children_Changed.Data
{
[[ATSPI children changed event data]]
is_added: bool; [[Child is added or not]]
child: Efl.Object; [[Child object]]
}
struct Elm.Atspi.Attribute
{
[[ATSPI Attribute]]
key: string; [[Attribute key]]
value: string; [[Attribute value]]
}
struct Elm.Atspi.Relation
{
[[ATSPI Relation]]
type: Elm.Atspi.Relation_Type; [[Relation type]]
objects: list<Efl.Object>; [[List with relation objects]]
}
type Elm.Atspi.Relation_Set: list<Elm.Atspi.Relation *>;
mixin Elm.Interface.Atspi_Accessible ()
{
[[ATSPI accessible mixin]]
eo_prefix: elm_interface_atspi_accessible;
data: Elm_Interface_Atspi_Accessible_Data;
2015-05-07 09:32:53 -07:00
methods {
@property localized_role_name @protected {
[[Gets an localized string describing ATSPI widget role name.]]
get {
}
values {
localized_name: string; [[Localized widget role name]]
}
}
@property name {
[[String describing ATSPI widget role name. Should be free by a user.]]
get {
}
set {
}
values {
name: char*; [[Object name]]
}
}
2015-05-07 09:32:53 -07:00
@property relation_set @protected {
[[Gets an string describing ATSPI widget role name. Lists and elements Should be free by a user.]]
get {
}
values {
relations: Elm.Atspi.Relation_Set; [[Widget relation set]]
}
}
@property role {
[[The role of the widget in ATSPI Accessibility domain.]]
get {
}
set {
}
values {
role: Elm.Atspi.Role; [[Widget role]]
}
}
2015-05-07 09:32:53 -07:00
@property children @protected {
[[Gets widget's accessible children.]]
get {
}
values {
children: free(own(list<Elm.Interface.Atspi_Accessible>), eina_list_free); [[List of widget's children]]
}
}
2015-05-07 09:32:53 -07:00
@property role_name @protected {
[[Gets human-readable string indentifying widget accessibility role.]]
get {
}
values {
role_name: string; [[Widget role name]]
}
}
2015-05-07 09:32:53 -07:00
@property attributes @protected {
[[Gets key-value pairs indentifying widget extra attributes. Must be free by a user.]]
get {
}
values {
attributes: free(own(list<own(Elm.Atspi.Attribute *)>), elm_atspi_attributes_list_free); [[List of widget attributes]]
}
}
2015-05-07 09:32:53 -07:00
@property index_in_parent @protected {
[[Gets index of the child in parent's children list.]]
get {
}
values {
idx: int; [[Index in children list]]
}
}
@property description {
[[Widget contextual information.]]
get {
}
set {
}
values {
description: string; [[Widget contextual information]]
}
}
@property parent {
[[Widget accessible parent.]]
get {
}
set {
}
values {
parent: Elm.Interface.Atspi_Accessible; [[Widget parent]]
}
}
2015-05-07 09:32:53 -07:00
@property state_set @protected {
[[Gets set describing widget accessible states.]]
get {
}
values {
states: Elm.Atspi.State_Set; [[Widget states]]
}
}
event_handler_add @class @protected {
[[Register accessibility event listener]]
params {
@in cb: Efl_Event_Cb; [[callback]]
@in data: void_ptr; [[data]]
}
return: Elm.Atspi.Event.Handler*; [[Event handler]]
}
event_handler_del @class @protected {
[[Deregister accessibility event listener]]
params {
@in handler: Elm.Atspi.Event.Handler *; [[Event handler]]
}
}
event_emit @class @protected {
params {
@in accessible: Elm.Interface.Atspi_Accessible; [[Accessibility object.]]
@in event: const(Efl.Event.Description)*; [[Accessibility event type.]]
@in event_info: void_ptr; [[Accessibility event details.]]
}
}
@property translation_domain {
[[Sets the translation domain of "name" and "description"
properties.
Translation domain should be set if application wants to support i18n
for accessibily "name" and "description" properties.
When translation domain is set values of "name" and "description"
properties will be translated with dgettext function using
current translation domain as "domainname" parameter.
It is application developer responsibility to ensure that
translation files are loaded and binded to translation domain
when accessibility is enabled.]]
get {
}
set {
}
values {
domain: string; [[Translation domain]]
}
}
@property type {
[[Type of accessibility object]]
get {
}
set {
}
values {
type: Elm.Atspi.Type; [[Object type]]
}
}
relationship_append {
[[Defines the relationship between two accessible objects.
Adds unique relation between source object and relation_object of a
given type.
Relationships can be queried by Assistive Technology clients to
provide customized feedback, improving overall user experience.
Relationship_append API is asymmetric, which means that
appending, for example, relation ELM_ATSPI_RELATION_FLOWS_TO from object A to B,
do NOT append relation ELM_ATSPI_RELATION_FLOWS_FROM from object B to
object A.]]
return: bool; [[EINA_TRUE is relationship was successfully appended, EINA_FALSE otherwise]]
params {
@in type: Elm.Atspi.Relation_Type; [[Relation type]]
@in relation_object: const(Elm.Interface.Atspi_Accessible); [[Object to relate to]]
}
}
relationship_remove {
[[Removes the relationship between two accessible objects.
If relation_object is NULL function removes all relations
of given type.
]]
params {
@in type: Elm.Atspi.Relation_Type; [[Relation type]]
@in relation_object: const(Elm.Interface.Atspi_Accessible); [[Object to remove relation from]]
}
}
relationships_clear {
[[Removes all relationships in accessible object.]]
}
@property root @class {
get {
[[Get root object of accessible object hierarchy]]
values {
ret: Efl.Object; [[Root object]]
}
}
}
}
events {
property,changed: string;
children,changed: Elm.Atspi.Event.Children_Changed.Data;
state,changed: Elm.Atspi.Event.State_Changed.Data;
bounds,changed: Elm.Atspi.Event.Geometry_Changed.Data;
visible,data,changed;
2015-10-19 04:39:56 -07:00
active,descendant,changed;
added;
removed;
}
}