Stop using "in" keyword in IDL files
[WebKit-https.git] / Tools / WebKitTestRunner / InjectedBundle / Bindings / AccessibilityUIElement.idl
1 /*
2  * Copyright (C) 2011 Apple Inc. All rights reserved.
3  *
4  * Redistribution and use in source and binary forms, with or without
5  * modification, are permitted provided that the following conditions
6  * are met:
7  * 1. Redistributions of source code must retain the above copyright
8  *    notice, this list of conditions and the following disclaimer.
9  * 2. Redistributions in binary form must reproduce the above copyright
10  *    notice, this list of conditions and the following disclaimer in the
11  *    documentation and/or other materials provided with the distribution.
12  *
13  * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
14  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
15  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
16  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
17  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
18  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
19  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
20  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
21  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
22  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
23  * THE POSSIBILITY OF SUCH DAMAGE.
24  */
25
26 interface AccessibilityUIElement {
27     boolean isEqual(AccessibilityUIElement otherElement);
28
29     // Document information
30     readonly attribute DOMString documentEncoding;
31     readonly attribute DOMString documentURI;
32
33     // Element access.
34     AccessibilityUIElement elementAtPoint(int x, int y);
35     AccessibilityUIElement childAtIndex(unsigned long index);
36     unsigned long indexOfChild(AccessibilityUIElement child);
37     AccessibilityUIElement linkedUIElementAtIndex(unsigned long index);
38     AccessibilityUIElement selectedChildAtIndex(unsigned long index);
39     void setSelectedChild(AccessibilityUIElement element);
40     AccessibilityUIElement titleUIElement();
41     AccessibilityUIElement parentElement();
42     
43     readonly attribute DOMString role;
44     readonly attribute DOMString subrole;
45     readonly attribute DOMString roleDescription;
46     readonly attribute DOMString title;
47     readonly attribute DOMString description;
48     readonly attribute DOMString language;
49     readonly attribute DOMString helpText;
50     readonly attribute DOMString valueDescription;
51     readonly attribute DOMString url;
52     readonly attribute DOMString speak;
53     readonly attribute DOMString orientation;
54     readonly attribute int insertionPointLineNumber;
55     readonly attribute DOMString selectedTextRange;
56
57     DOMString stringAttributeValue(DOMString attr);
58     double numberAttributeValue(DOMString attr);
59     AccessibilityUIElement uiElementAttributeValue(DOMString attr);  
60     boolean boolAttributeValue(DOMString attr);
61     boolean isAttributeSupported(DOMString attr);
62     boolean isAttributeSettable(DOMString attr);
63     boolean isPressActionSupported();
64     boolean isIncrementActionSupported();
65     boolean isDecrementActionSupported();
66
67     readonly attribute DOMString stringValue;
68     readonly attribute int intValue;
69     readonly attribute int minValue;
70     readonly attribute int maxValue;
71     
72     readonly attribute boolean isEnabled;
73     readonly attribute boolean isRequired;
74     readonly attribute boolean isFocused;
75     readonly attribute boolean isFocusable;
76     readonly attribute boolean isSelected;
77     readonly attribute boolean isMultiSelectable;
78     readonly attribute boolean isExpanded;
79     readonly attribute boolean isChecked;
80     readonly attribute boolean isVisible;
81     readonly attribute boolean isCollapsed;
82     readonly attribute boolean hasPopup;
83     readonly attribute boolean isIgnored;
84     readonly attribute boolean isOffScreen;
85     readonly attribute boolean isValid;
86     readonly attribute int hierarchicalLevel;
87     readonly attribute boolean ariaIsGrabbed;
88     readonly attribute DOMString ariaDropEffects;
89     
90     readonly attribute int x;
91     readonly attribute int y;
92     readonly attribute int width;
93     readonly attribute int height;
94     readonly attribute int clickPointX;
95     readonly attribute int clickPointY;
96
97     readonly attribute int childrenCount;
98     readonly attribute int selectedChildrenCount;
99     readonly attribute int rowCount;
100     readonly attribute int columnCount;
101
102     // Actions.
103     void increment();
104     void decrement();
105     void press();
106     void showMenu();
107
108     // Attribute info.
109     DOMString allAttributes();
110     DOMString attributesOfChildren();
111     DOMString attributesOfLinkedUIElements();
112     DOMString attributesOfDocumentLinks();
113     
114     // Table info.
115     DOMString attributesOfColumnHeaders();
116     DOMString attributesOfRowHeaders();
117     DOMString attributesOfColumns();
118     DOMString attributesOfRows();
119     DOMString attributesOfVisibleCells();
120     DOMString attributesOfHeader();
121     AccessibilityUIElement cellForColumnAndRow(unsigned long column, unsigned long row);
122     AccessibilityUIElement selectedRowAtIndex(unsigned long index);
123     AccessibilityUIElement disclosedByRow();
124     AccessibilityUIElement disclosedRowAtIndex(unsigned long index);
125     AccessibilityUIElement rowAtIndex(unsigned long index);
126     int indexInTable();
127     DOMString rowIndexRange();
128     DOMString columnIndexRange();
129     int rowCount();
130     int columnCount();
131
132     AccessibilityUIElement ariaOwnsElementAtIndex(unsigned long index);
133     AccessibilityUIElement ariaFlowToElementAtIndex(unsigned long index);
134
135     // Paramaterized attributes.
136     DOMString parameterizedAttributeNames();
137     int lineForIndex(int index);
138     DOMString rangeForLine(int index);
139     DOMString rangeForPosition(int x, int y);
140     DOMString boundsForRange(unsigned long location, unsigned long length);
141     DOMString stringForRange(unsigned long location, unsigned long length);
142     DOMString attributedStringForRange(unsigned long location, unsigned long length);
143     boolean attributedStringRangeIsMisspelled(unsigned long location, unsigned long length);
144     [PassContext] AccessibilityUIElement uiElementForSearchPredicate(AccessibilityUIElement startElement, boolean isDirectionNext, object searchKey, DOMString searchText);
145     void setSelectedTextRange(unsigned long location, unsigned long length);
146
147     // Scroll area attributes.
148     readonly attribute AccessibilityUIElement horizontalScrollbar;
149     readonly attribute AccessibilityUIElement verticalScrollbar;
150
151     void scrollToMakeVisible();
152
153     // Text markers.
154     AccessibilityTextMarkerRange textMarkerRangeForElement(AccessibilityUIElement element);    
155     AccessibilityTextMarkerRange textMarkerRangeForMarkers(AccessibilityTextMarker startMarker, AccessibilityTextMarker endMarker);
156     AccessibilityTextMarker startTextMarkerForTextMarkerRange(AccessibilityTextMarkerRange range);
157     AccessibilityTextMarker endTextMarkerForTextMarkerRange(AccessibilityTextMarkerRange range);
158     AccessibilityTextMarker textMarkerForPoint(int x, int y);
159     AccessibilityTextMarker previousTextMarker(AccessibilityTextMarker marker);
160     AccessibilityTextMarker nextTextMarker(AccessibilityTextMarker marker);
161     AccessibilityUIElement accessibilityElementForTextMarker(AccessibilityTextMarker marker);
162     DOMString stringForTextMarkerRange(AccessibilityTextMarkerRange range);
163     int textMarkerRangeLength(AccessibilityTextMarkerRange range);
164     boolean attributedStringForTextMarkerRangeContainsAttribute(DOMString attr, AccessibilityTextMarkerRange range);
165     int indexForTextMarker(AccessibilityTextMarker marker);
166     boolean isTextMarkerValid(AccessibilityTextMarker marker);
167     AccessibilityTextMarker textMarkerForIndex(int textIndex);
168
169     // Returns an ordered list of supported actions for an element.
170     readonly attribute DOMString supportedActions;
171
172     readonly attribute DOMString pathDescription;
173     
174     // Notification support.
175     boolean addNotificationListener(object callbackFunction);
176     boolean removeNotificationListener();
177     
178 };
179