1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/other-licenses/ia2/AccessibleRole.idl Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,295 @@ 1.4 +/************************************************************************* 1.5 + * 1.6 + * File Name (AccessibleRole.idl) 1.7 + * 1.8 + * IAccessible2 IDL Specification 1.9 + * 1.10 + * Copyright (c) 2007, 2013 Linux Foundation 1.11 + * Copyright (c) 2006 IBM Corporation 1.12 + * Copyright (c) 2000, 2006 Sun Microsystems, Inc. 1.13 + * All rights reserved. 1.14 + * 1.15 + * 1.16 + * Redistribution and use in source and binary forms, with or without 1.17 + * modification, are permitted provided that the following conditions 1.18 + * are met: 1.19 + * 1.20 + * 1. Redistributions of source code must retain the above copyright 1.21 + * notice, this list of conditions and the following disclaimer. 1.22 + * 1.23 + * 2. Redistributions in binary form must reproduce the above 1.24 + * copyright notice, this list of conditions and the following 1.25 + * disclaimer in the documentation and/or other materials 1.26 + * provided with the distribution. 1.27 + * 1.28 + * 3. Neither the name of the Linux Foundation nor the names of its 1.29 + * contributors may be used to endorse or promote products 1.30 + * derived from this software without specific prior written 1.31 + * permission. 1.32 + * 1.33 + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND 1.34 + * CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, 1.35 + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF 1.36 + * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 1.37 + * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR 1.38 + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 1.39 + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 1.40 + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 1.41 + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 1.42 + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 1.43 + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR 1.44 + * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, 1.45 + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 1.46 + * 1.47 + * This BSD License conforms to the Open Source Initiative "Simplified 1.48 + * BSD License" as published at: 1.49 + * http://www.opensource.org/licenses/bsd-license.php 1.50 + * 1.51 + * IAccessible2 is a trademark of the Linux Foundation. The IAccessible2 1.52 + * mark may be used in accordance with the Linux Foundation Trademark 1.53 + * Policy to indicate compliance with the IAccessible2 specification. 1.54 + * 1.55 + ************************************************************************/ 1.56 + 1.57 +import "objidl.idl"; 1.58 + 1.59 +/** Collection of roles 1.60 + 1.61 + This enumerator defines an extended set of accessible roles of objects implementing 1.62 + the %IAccessible2 interface. These roles are in addition to the MSAA roles obtained 1.63 + through the MSAA get_accRole method. Examples are 'footnote', 'heading', and 1.64 + 'label'. You obtain an object's %IAccessible2 roles by calling IAccessible2::role. 1.65 +*/ 1.66 +enum IA2Role { 1.67 + 1.68 + /** Unknown role. The object contains some Accessible information, but its 1.69 + role is not known. 1.70 + */ 1.71 + IA2_ROLE_UNKNOWN = 0, 1.72 + 1.73 + /** An object that can be drawn into and to manage events from the objects 1.74 + drawn into it. Also refer to ::IA2_ROLE_FRAME, 1.75 + ::IA2_ROLE_GLASS_PANE, and ::IA2_ROLE_LAYERED_PANE. 1.76 + */ 1.77 + IA2_ROLE_CANVAS = 0x401, 1.78 + 1.79 + /// A caption describing another object. 1.80 + IA2_ROLE_CAPTION, 1.81 + 1.82 + /// Used for check buttons that are menu items. 1.83 + IA2_ROLE_CHECK_MENU_ITEM, 1.84 + 1.85 + /// A specialized dialog that lets the user choose a color. 1.86 + IA2_ROLE_COLOR_CHOOSER, 1.87 + 1.88 + /// A date editor. 1.89 + IA2_ROLE_DATE_EDITOR, 1.90 + 1.91 + /** An iconified internal frame in an ::IA2_ROLE_DESKTOP_PANE. 1.92 + Also refer to ::IA2_ROLE_INTERNAL_FRAME. 1.93 + */ 1.94 + IA2_ROLE_DESKTOP_ICON, 1.95 + 1.96 + /** A desktop pane. A pane that supports internal frames and iconified 1.97 + versions of those internal frames. Also refer to ::IA2_ROLE_INTERNAL_FRAME. 1.98 + */ 1.99 + IA2_ROLE_DESKTOP_PANE, 1.100 + 1.101 + /** A directory pane. A pane that allows the user to navigate through 1.102 + and select the contents of a directory. May be used by a file chooser. 1.103 + Also refer to ::IA2_ROLE_FILE_CHOOSER. 1.104 + */ 1.105 + IA2_ROLE_DIRECTORY_PANE, 1.106 + 1.107 + /** An editable text object in a toolbar. <b>Deprecated.</b> 1.108 + The edit bar role was meant for a text area in a tool bar. However, to detect 1.109 + a text area in a tool bar the AT can query the parent. 1.110 + */ 1.111 + IA2_ROLE_EDITBAR, 1.112 + 1.113 + /// Embedded (OLE) object. 1.114 + IA2_ROLE_EMBEDDED_OBJECT, 1.115 + 1.116 + /// Text that is used as an endnote (footnote at the end of a chapter or section). 1.117 + IA2_ROLE_ENDNOTE, 1.118 + 1.119 + /** A file chooser. A specialized dialog that displays the files in the 1.120 + directory and lets the user select a file, browse a different directory, 1.121 + or specify a filename. May use the directory pane to show the contents of 1.122 + a directory. 1.123 + Also refer to ::IA2_ROLE_DIRECTORY_PANE. 1.124 + */ 1.125 + IA2_ROLE_FILE_CHOOSER, 1.126 + 1.127 + /** A font chooser. A font chooser is a component that lets the user pick 1.128 + various attributes for fonts. 1.129 + */ 1.130 + IA2_ROLE_FONT_CHOOSER, 1.131 + 1.132 + /** Footer of a document page. 1.133 + Also refer to ::IA2_ROLE_HEADER. 1.134 + */ 1.135 + IA2_ROLE_FOOTER, 1.136 + 1.137 + /// Text that is used as a footnote. Also refer to ::IA2_ROLE_ENDNOTE. 1.138 + IA2_ROLE_FOOTNOTE, 1.139 + 1.140 + /** A container of form controls. An example of the use of this role is to 1.141 + represent an HTML FORM tag. 1.142 + */ 1.143 + IA2_ROLE_FORM, 1.144 + 1.145 + /** Frame role. A top level window with a title bar, border, menu bar, etc. 1.146 + It is often used as the primary window for an application. Also refer to 1.147 + ::IA2_ROLE_CANVAS and the MSAA roles of dialog and window. 1.148 + */ 1.149 + IA2_ROLE_FRAME, 1.150 + 1.151 + /** A glass pane. A pane that is guaranteed to be painted on top of all panes 1.152 + beneath it. Also refer to ::IA2_ROLE_CANVAS, ::IA2_ROLE_INTERNAL_FRAME, and 1.153 + ::IA2_ROLE_ROOT_PANE. 1.154 + */ 1.155 + IA2_ROLE_GLASS_PANE, 1.156 + 1.157 + /** Header of a document page. 1.158 + Also refer to ::IA2_ROLE_FOOTER. 1.159 + */ 1.160 + IA2_ROLE_HEADER, 1.161 + 1.162 + /// Heading. Use the IAccessible2::attributes level attribute to determine the heading level. 1.163 + IA2_ROLE_HEADING, 1.164 + 1.165 + /// A small fixed size picture, typically used to decorate components. 1.166 + IA2_ROLE_ICON, 1.167 + 1.168 + /** An image map object. Usually a graphic with multiple hotspots, where 1.169 + each hotspot can be activated resulting in the loading of another document 1.170 + or section of a document. 1.171 + */ 1.172 + IA2_ROLE_IMAGE_MAP, 1.173 + 1.174 + /** An object which is used to allow input of characters not found on a keyboard, 1.175 + such as the input of Chinese characters on a Western keyboard. 1.176 + */ 1.177 + IA2_ROLE_INPUT_METHOD_WINDOW, 1.178 + 1.179 + /** An internal frame. A frame-like object that is clipped by a desktop pane. 1.180 + The desktop pane, internal frame, and desktop icon objects are often used to 1.181 + create multiple document interfaces within an application. 1.182 + Also refer to ::IA2_ROLE_DESKTOP_ICON, ::IA2_ROLE_DESKTOP_PANE, and ::IA2_ROLE_FRAME. 1.183 + */ 1.184 + IA2_ROLE_INTERNAL_FRAME, 1.185 + 1.186 + /// An object used to present an icon or short string in an interface. 1.187 + IA2_ROLE_LABEL, 1.188 + 1.189 + /** A layered pane. A specialized pane that allows its children to be drawn 1.190 + in layers, providing a form of stacking order. This is usually the pane that 1.191 + holds the menu bar as well as the pane that contains most of the visual 1.192 + components in a window. 1.193 + Also refer to ::IA2_ROLE_CANVAS, ::IA2_ROLE_GLASS_PANE, and ::IA2_ROLE_ROOT_PANE. 1.194 + */ 1.195 + IA2_ROLE_LAYERED_PANE, 1.196 + 1.197 + /** A section whose content is parenthetic or ancillary to the main content 1.198 + of the resource. 1.199 + */ 1.200 + IA2_ROLE_NOTE, 1.201 + 1.202 + /** A specialized pane whose primary use is inside a dialog. 1.203 + Also refer to MSAA's dialog role. 1.204 + */ 1.205 + IA2_ROLE_OPTION_PANE, 1.206 + 1.207 + /** An object representing a page of document content. It is used in documents 1.208 + which are accessed by the user on a page by page basis. 1.209 + */ 1.210 + IA2_ROLE_PAGE, 1.211 + 1.212 + /// A paragraph of text. 1.213 + IA2_ROLE_PARAGRAPH, 1.214 + 1.215 + /** A radio button that is a menu item. 1.216 + Also refer to MSAA's button and menu item roles. 1.217 + */ 1.218 + IA2_ROLE_RADIO_MENU_ITEM, 1.219 + 1.220 + /** An object which is redundant with another object in the accessible hierarchy. 1.221 + ATs typically ignore objects with this role. 1.222 + */ 1.223 + IA2_ROLE_REDUNDANT_OBJECT, 1.224 + 1.225 + /** A root pane. A specialized pane that has a glass pane and a layered pane 1.226 + as its children. 1.227 + Also refer to ::IA2_ROLE_GLASS_PANE and ::IA2_ROLE_LAYERED_PANE 1.228 + */ 1.229 + IA2_ROLE_ROOT_PANE, 1.230 + 1.231 + /** A ruler such as those used in word processors. 1.232 + */ 1.233 + IA2_ROLE_RULER, 1.234 + 1.235 + /** A scroll pane. An object that allows a user to incrementally view a large 1.236 + amount of information. Its children can include scroll bars and a viewport. 1.237 + Also refer to ::IA2_ROLE_VIEW_PORT and MSAA's scroll bar role. 1.238 + */ 1.239 + IA2_ROLE_SCROLL_PANE, 1.240 + 1.241 + /** A container of document content. An example of the use of this role is to 1.242 + represent an HTML DIV tag. A section may be used as a region. A region is a 1.243 + group of elements that together form a perceivable unit. A region does not 1.244 + necessarily follow the logical structure of the content, but follows the 1.245 + perceivable structure of the page. A region may have an attribute in the set 1.246 + of IAccessible2::attributes which indicates that it is "live". A live region 1.247 + is content that is likely to change in response to a timed change, a user 1.248 + event, or some other programmed logic or event. 1.249 + */ 1.250 + IA2_ROLE_SECTION, 1.251 + 1.252 + /// Object with graphical representation used to represent content on draw pages. 1.253 + IA2_ROLE_SHAPE, 1.254 + 1.255 + /** A split pane. A specialized panel that presents two other panels at the 1.256 + same time. Between the two panels is a divider the user can manipulate to make 1.257 + one panel larger and the other panel smaller. 1.258 + */ 1.259 + IA2_ROLE_SPLIT_PANE, 1.260 + 1.261 + /** An object that forms part of a menu system but which can be "undocked" 1.262 + from or "torn off" the menu system to exist as a separate window. 1.263 + */ 1.264 + IA2_ROLE_TEAR_OFF_MENU, 1.265 + 1.266 + /// An object used as a terminal emulator. 1.267 + IA2_ROLE_TERMINAL, 1.268 + 1.269 + /// Collection of objects that constitute a logical text entity. 1.270 + IA2_ROLE_TEXT_FRAME, 1.271 + 1.272 + /** A toggle button. A specialized push button that can be checked or unchecked, 1.273 + but does not provide a separate indicator for the current state. 1.274 + Also refer to MSAA's roles of push button, check box, and radio button. 1.275 + <BR><B>Note:</B> IA2_ROLE_TOGGLE_BUTTON should not be used. Instead, use MSAA's 1.276 + ROLE_SYSTEM_PUSHBUTTON and STATE_SYSTEM_PRESSED. 1.277 + */ 1.278 + IA2_ROLE_TOGGLE_BUTTON, 1.279 + 1.280 + /** A viewport. An object usually used in a scroll pane. It represents the 1.281 + portion of the entire data that the user can see. As the user manipulates 1.282 + the scroll bars, the contents of the viewport can change. 1.283 + Also refer to ::IA2_ROLE_SCROLL_PANE. 1.284 + */ 1.285 + IA2_ROLE_VIEW_PORT, 1.286 + 1.287 + /** An object containing content which is complementary to the main content of 1.288 + a document, but remains meaningful when separated from the main content. There 1.289 + are various types of content that would appropriately have this role. For example, 1.290 + in the case where content is delivered via a web portal to a web browser, this may 1.291 + include but not be limited to show times, current weather, related articles, or 1.292 + stocks to watch. The complementary role indicates that contained content is relevant 1.293 + to the main content. If the complementary content is completely separable main 1.294 + content, it may be appropriate to use a more general role. 1.295 + */ 1.296 + IA2_ROLE_COMPLEMENTARY_CONTENT 1.297 + 1.298 +};