other-licenses/ia2/AccessibleRole.idl

Tue, 06 Jan 2015 21:39:09 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Tue, 06 Jan 2015 21:39:09 +0100
branch
TOR_BUG_9701
changeset 8
97036ab72558
permissions
-rw-r--r--

Conditionally force memory storage according to privacy.thirdparty.isolate;
This solves Tor bug #9701, complying with disk avoidance documented in
https://www.torproject.org/projects/torbrowser/design/#disk-avoidance.

     1 /*************************************************************************
     2  *
     3  *  File Name (AccessibleRole.idl)
     4  * 
     5  *  IAccessible2 IDL Specification 
     6  * 
     7  *  Copyright (c) 2007, 2013 Linux Foundation 
     8  *  Copyright (c) 2006 IBM Corporation 
     9  *  Copyright (c) 2000, 2006 Sun Microsystems, Inc. 
    10  *  All rights reserved. 
    11  *   
    12  *   
    13  *  Redistribution and use in source and binary forms, with or without 
    14  *  modification, are permitted provided that the following conditions 
    15  *  are met: 
    16  *   
    17  *   1. Redistributions of source code must retain the above copyright 
    18  *      notice, this list of conditions and the following disclaimer. 
    19  *   
    20  *   2. Redistributions in binary form must reproduce the above 
    21  *      copyright notice, this list of conditions and the following 
    22  *      disclaimer in the documentation and/or other materials 
    23  *      provided with the distribution. 
    24  *
    25  *   3. Neither the name of the Linux Foundation nor the names of its 
    26  *      contributors may be used to endorse or promote products 
    27  *      derived from this software without specific prior written 
    28  *      permission. 
    29  *   
    30  *  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND 
    31  *  CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, 
    32  *  INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF 
    33  *  MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 
    34  *  DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR 
    35  *  CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 
    36  *  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 
    37  *  NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 
    38  *  LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 
    39  *  HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
    40  *  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR 
    41  *  OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, 
    42  *  EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
    43  *   
    44  *  This BSD License conforms to the Open Source Initiative "Simplified 
    45  *  BSD License" as published at: 
    46  *  http://www.opensource.org/licenses/bsd-license.php 
    47  *   
    48  *  IAccessible2 is a trademark of the Linux Foundation. The IAccessible2 
    49  *  mark may be used in accordance with the Linux Foundation Trademark 
    50  *  Policy to indicate compliance with the IAccessible2 specification. 
    51  * 
    52  ************************************************************************/ 
    54 import "objidl.idl";
    56 /** Collection of roles
    58   This enumerator defines an extended set of accessible roles of objects implementing
    59   the %IAccessible2 interface. These roles are in addition to the MSAA roles obtained
    60   through the MSAA get_accRole method.  Examples are 'footnote', 'heading', and 
    61   'label'. You obtain an object's %IAccessible2 roles by calling IAccessible2::role.
    62 */
    63 enum IA2Role {
    65   /** Unknown role. The object contains some Accessible information, but its 
    66    role is not known.
    67   */
    68   IA2_ROLE_UNKNOWN = 0,
    70   /** An object that can be drawn into and to manage events from the objects
    71    drawn into it.  Also refer to ::IA2_ROLE_FRAME,
    72    ::IA2_ROLE_GLASS_PANE, and ::IA2_ROLE_LAYERED_PANE. 
    73   */
    74   IA2_ROLE_CANVAS = 0x401,
    76   /// A caption describing another object.
    77   IA2_ROLE_CAPTION,
    79   /// Used for check buttons that are menu items.
    80   IA2_ROLE_CHECK_MENU_ITEM,
    82   /// A specialized dialog that lets the user choose a color.
    83   IA2_ROLE_COLOR_CHOOSER,
    85   /// A date editor.
    86   IA2_ROLE_DATE_EDITOR,
    88   /** An iconified internal frame in an ::IA2_ROLE_DESKTOP_PANE. 
    89    Also refer to ::IA2_ROLE_INTERNAL_FRAME.
    90   */
    91   IA2_ROLE_DESKTOP_ICON,
    93   /** A desktop pane. A pane that supports internal frames and iconified 
    94    versions of those internal frames.  Also refer to ::IA2_ROLE_INTERNAL_FRAME.
    95   */
    96   IA2_ROLE_DESKTOP_PANE,
    98   /** A directory pane. A pane that allows the user to navigate through 
    99    and select the contents of a directory. May be used by a file chooser.   
   100    Also refer to ::IA2_ROLE_FILE_CHOOSER.
   101   */
   102   IA2_ROLE_DIRECTORY_PANE,
   104   /** An editable text object in a toolbar. <b>Deprecated.</b>
   105    The edit bar role was meant for a text area in a tool bar. However, to detect
   106    a text area in a tool bar the AT can query the parent.
   107   */
   108   IA2_ROLE_EDITBAR,
   110   /// Embedded (OLE) object.
   111   IA2_ROLE_EMBEDDED_OBJECT,
   113   /// Text that is used as an endnote (footnote at the end of a chapter or section).
   114   IA2_ROLE_ENDNOTE,
   116   /** A file chooser. A specialized dialog that displays the files in the 
   117    directory and lets the user select a file, browse a different directory, 
   118    or specify a filename. May use the directory pane to show the contents of 
   119    a directory.  
   120    Also refer to ::IA2_ROLE_DIRECTORY_PANE.
   121   */
   122   IA2_ROLE_FILE_CHOOSER,
   124   /** A font chooser. A font chooser is a component that lets the user pick 
   125    various attributes for fonts.
   126   */
   127   IA2_ROLE_FONT_CHOOSER,
   129   /** Footer of a document page.
   130    Also refer to ::IA2_ROLE_HEADER.
   131   */
   132   IA2_ROLE_FOOTER,
   134   /// Text that is used as a footnote.  Also refer to ::IA2_ROLE_ENDNOTE.
   135   IA2_ROLE_FOOTNOTE,
   137   /** A container of form controls.  An example of the use of this role is to
   138    represent an HTML FORM tag.
   139   */
   140   IA2_ROLE_FORM,
   142   /** Frame role. A top level window with a title bar, border, menu bar, etc.  
   143    It is often used as the primary window for an application.  Also refer to
   144    ::IA2_ROLE_CANVAS and the MSAA roles of dialog and window.
   145   */
   146   IA2_ROLE_FRAME,
   148   /** A glass pane. A pane that is guaranteed to be painted on top of all panes
   149    beneath it.  Also refer to ::IA2_ROLE_CANVAS, ::IA2_ROLE_INTERNAL_FRAME, and
   150    ::IA2_ROLE_ROOT_PANE.
   151   */
   152   IA2_ROLE_GLASS_PANE,
   154   /** Header of a document page.
   155    Also refer to ::IA2_ROLE_FOOTER.
   156   */
   157   IA2_ROLE_HEADER,
   159   /// Heading.  Use the IAccessible2::attributes level attribute to determine the heading level.
   160   IA2_ROLE_HEADING,
   162   /// A small fixed size picture, typically used to decorate components.
   163   IA2_ROLE_ICON,
   165   /** An image map object.  Usually a graphic with multiple hotspots, where 
   166    each hotspot can be activated resulting in the loading of another document
   167    or section of a document.
   168   */
   169   IA2_ROLE_IMAGE_MAP,
   171   /** An object which is used to allow input of characters not found on a keyboard,
   172    such as the input of Chinese characters on a Western keyboard.
   173   */
   174   IA2_ROLE_INPUT_METHOD_WINDOW,
   176   /** An internal frame. A frame-like object that is clipped by a desktop pane.  
   177    The desktop pane, internal frame, and desktop icon objects are often used to 
   178    create multiple document interfaces within an application.
   179    Also refer to ::IA2_ROLE_DESKTOP_ICON, ::IA2_ROLE_DESKTOP_PANE, and ::IA2_ROLE_FRAME.
   180   */
   181   IA2_ROLE_INTERNAL_FRAME,
   183   /// An object used to present an icon or short string in an interface.
   184   IA2_ROLE_LABEL,
   186   /** A layered pane. A specialized pane that allows its children to be drawn 
   187    in layers, providing a form of stacking order. This is usually the pane that 
   188    holds the menu bar as  well as the pane that contains most of the visual 
   189    components in a window.
   190    Also refer to ::IA2_ROLE_CANVAS, ::IA2_ROLE_GLASS_PANE, and ::IA2_ROLE_ROOT_PANE.
   191   */
   192   IA2_ROLE_LAYERED_PANE,
   194   /** A section whose content is parenthetic or ancillary to the main content
   195    of the resource.
   196   */
   197   IA2_ROLE_NOTE,
   199  /** A specialized pane whose primary use is inside a dialog.
   200    Also refer to MSAA's dialog role.
   201   */
   202   IA2_ROLE_OPTION_PANE,
   204   /** An object representing a page of document content.  It is used in documents
   205    which are accessed by the user on a page by page basis.
   206   */
   207   IA2_ROLE_PAGE,
   209   /// A paragraph of text.
   210   IA2_ROLE_PARAGRAPH,
   212   /** A radio button that is a menu item.
   213    Also refer to MSAA's button and menu item roles.
   214   */
   215   IA2_ROLE_RADIO_MENU_ITEM,
   217   /** An object which is redundant with another object in the accessible hierarchy.
   218    ATs typically ignore objects with this role.
   219   */
   220   IA2_ROLE_REDUNDANT_OBJECT,
   222   /** A root pane. A specialized pane that has a glass pane and a layered pane 
   223    as its children.
   224    Also refer to ::IA2_ROLE_GLASS_PANE and ::IA2_ROLE_LAYERED_PANE
   225   */
   226   IA2_ROLE_ROOT_PANE,
   228   /** A ruler such as those used in word processors.
   229   */
   230   IA2_ROLE_RULER,
   232   /** A scroll pane. An object that allows a user to incrementally view a large 
   233    amount of information.  Its children can include scroll bars and a viewport.
   234    Also refer to ::IA2_ROLE_VIEW_PORT and MSAA's scroll bar role.
   235   */
   236   IA2_ROLE_SCROLL_PANE,
   238   /** A container of document content.  An example of the use of this role is to
   239    represent an HTML DIV tag.  A section may be used as a region.  A region is a 
   240    group of elements that together form a perceivable unit.  A region does not 
   241    necessarily follow the logical structure of the content, but follows the 
   242    perceivable structure of the page.  A region may have an attribute in the set 
   243    of IAccessible2::attributes which indicates that it is "live".  A live region 
   244    is content that is likely to change in response to a timed change, a user 
   245    event, or some other programmed logic or event.
   246   */
   247   IA2_ROLE_SECTION,
   249   /// Object with graphical representation used to represent content on draw pages.
   250   IA2_ROLE_SHAPE,
   252   /** A split pane. A specialized panel that presents two other panels at the 
   253    same time. Between the two panels is a divider the user can manipulate to make 
   254    one panel larger and the other panel smaller.
   255   */
   256   IA2_ROLE_SPLIT_PANE,
   258   /** An object that forms part of a menu system but which can be "undocked" 
   259    from or "torn off" the menu system to exist as a separate window.
   260   */
   261   IA2_ROLE_TEAR_OFF_MENU,
   263   /// An object used as a terminal emulator.
   264   IA2_ROLE_TERMINAL,
   266   /// Collection of objects that constitute a logical text entity.
   267   IA2_ROLE_TEXT_FRAME,
   269   /** A toggle button. A specialized push button that can be checked or unchecked, 
   270    but does not provide a separate indicator for the current state.
   271    Also refer to MSAA's roles of push button, check box, and radio button.
   272    <BR><B>Note:</B> IA2_ROLE_TOGGLE_BUTTON should not be used.  Instead, use MSAA's 
   273    ROLE_SYSTEM_PUSHBUTTON and STATE_SYSTEM_PRESSED.
   274   */
   275   IA2_ROLE_TOGGLE_BUTTON,
   277   /** A viewport. An object usually used in a scroll pane. It represents the 
   278    portion of the entire data that the user can see. As the user manipulates 
   279    the scroll bars, the contents of the viewport can change.
   280    Also refer to ::IA2_ROLE_SCROLL_PANE.
   281   */
   282   IA2_ROLE_VIEW_PORT,
   284   /** An object containing content which is complementary to the main content of
   285    a document, but remains meaningful when separated from the main content.  There
   286    are various types of content that would appropriately have this role.  For example,
   287    in the case where content is delivered via a web portal to a web browser, this may
   288    include but not be limited to show times, current weather, related articles, or
   289    stocks to watch.  The complementary role indicates that contained content is relevant
   290    to the main content.  If the complementary content is completely separable main
   291    content, it may be appropriate to use a more general role.
   292   */
   293   IA2_ROLE_COMPLEMENTARY_CONTENT
   295 };

mercurial