accessible/src/base/Role.h

changeset 0
6474c204b198
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/accessible/src/base/Role.h	Wed Dec 31 06:09:35 2014 +0100
     1.3 @@ -0,0 +1,796 @@
     1.4 +/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
     1.5 +/* vim: set ts=2 et sw=2 tw=80: */
     1.6 +/* This Source Code Form is subject to the terms of the Mozilla Public
     1.7 + * License, v. 2.0. If a copy of the MPL was not distributed with this
     1.8 + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
     1.9 +
    1.10 +#ifndef _role_h_
    1.11 +#define _role_h_
    1.12 +
    1.13 +/**
    1.14 + * @note Make sure to update the localized role names when changing the list.
    1.15 + * @note When adding a new role, be sure to also add it to base/RoleMap.h and
    1.16 + *       update nsIAccessibleRole.
    1.17 + */
    1.18 +
    1.19 +namespace mozilla {
    1.20 +namespace a11y {
    1.21 +namespace roles {
    1.22 +
    1.23 +enum Role {
    1.24 +  /**
    1.25 +   * Used when accessible hans't strong defined role.
    1.26 +   */
    1.27 +  NOTHING = 0,
    1.28 +
    1.29 +  /**
    1.30 +   * Represents a title or caption bar for a window. It is used by MSAA only,
    1.31 +   * supported automatically by MS Windows.
    1.32 +   */
    1.33 +  TITLEBAR = 1,
    1.34 +
    1.35 +  /**
    1.36 +   * Represents the menu bar (positioned beneath the title bar of a window)
    1.37 +   * from which menus are selected by the user. The role is used by
    1.38 +   * xul:menubar or role="menubar".
    1.39 +   */
    1.40 +  MENUBAR = 2,
    1.41 +
    1.42 +  /**
    1.43 +   * Represents a vertical or horizontal scroll bar, which is part of the client
    1.44 +   * area or used in a control.
    1.45 +   */
    1.46 +  SCROLLBAR = 3,
    1.47 +
    1.48 +  /**
    1.49 +   * Represents a special mouse pointer, which allows a user to manipulate user
    1.50 +   * interface elements such as windows. For example, a user clicks and drags
    1.51 +   * a sizing grip in the lower-right corner of a window to resize it.
    1.52 +   */
    1.53 +  GRIP = 4,
    1.54 +
    1.55 +  /**
    1.56 +   * Represents a system sound, which is associated with various system events.
    1.57 +   */
    1.58 +  SOUND = 5,
    1.59 +
    1.60 +  /**
    1.61 +   * Represents the system mouse pointer.
    1.62 +   */
    1.63 +  CURSOR = 6,
    1.64 +
    1.65 +  /**
    1.66 +   * Represents the system caret. The role is supported for caret.
    1.67 +   */
    1.68 +  CARET = 7,
    1.69 +
    1.70 +  /**
    1.71 +   * Represents an alert or a condition that a user should be notified about.
    1.72 +   * Assistive Technologies typically respond to the role by reading the entire
    1.73 +   * onscreen contents of containers advertising this role. Should be used for
    1.74 +   * warning dialogs, etc. The role is used by xul:browsermessage,
    1.75 +   * role="alert".
    1.76 +   */
    1.77 +  ALERT = 8,
    1.78 +
    1.79 +  /**
    1.80 +   * Represents the window frame, which contains child objects such as
    1.81 +   * a title bar, client, and other objects contained in a window. The role
    1.82 +   * is supported automatically by MS Windows.
    1.83 +   */
    1.84 +  WINDOW = 9,
    1.85 +
    1.86 +  /**
    1.87 +   * A sub-document (<frame> or <iframe>)
    1.88 +   */
    1.89 +  INTERNAL_FRAME = 10,
    1.90 +
    1.91 +  /**
    1.92 +   * Represents a menu, which presents a list of options from which the user can
    1.93 +   * make a selection to perform an action. It is used for role="menu".
    1.94 +   */
    1.95 +  MENUPOPUP = 11,
    1.96 +
    1.97 +  /**
    1.98 +   * Represents a menu item, which is an entry in a menu that a user can choose
    1.99 +   * to carry out a command, select an option. It is used for xul:menuitem,
   1.100 +   * role="menuitem".
   1.101 +   */
   1.102 +  MENUITEM = 12,
   1.103 +
   1.104 +  /**
   1.105 +   * Represents a ToolTip that provides helpful hints.
   1.106 +   */
   1.107 +  TOOLTIP = 13,
   1.108 +
   1.109 +  /**
   1.110 +   * Represents a main window for an application. It is used for
   1.111 +   * role="application". Also refer to APP_ROOT
   1.112 +   */
   1.113 +  APPLICATION = 14,
   1.114 +
   1.115 +  /**
   1.116 +   * Represents a document window. A document window is always contained within
   1.117 +   * an application window. It is used for role="document".
   1.118 +   */
   1.119 +  DOCUMENT = 15,
   1.120 +
   1.121 +  /**
   1.122 +   * Represents a pane within a frame or document window. Users can navigate
   1.123 +   * between panes and within the contents of the current pane, but cannot
   1.124 +   * navigate between items in different panes. Thus, panes represent a level
   1.125 +   * of grouping lower than frame windows or documents, but above individual
   1.126 +   * controls. It is used for the first child of a <frame> or <iframe>.
   1.127 +   */
   1.128 +  PANE = 16,
   1.129 +
   1.130 +  /**
   1.131 +   * Represents a graphical image used to represent data.
   1.132 +   */
   1.133 +  CHART = 17,
   1.134 +
   1.135 +  /**
   1.136 +   * Represents a dialog box or message box. It is used for xul:dialog, 
   1.137 +   * role="dialog".
   1.138 +   */
   1.139 +  DIALOG = 18,
   1.140 +
   1.141 +  /**
   1.142 +   * Represents a window border.
   1.143 +   */
   1.144 +  BORDER = 19,
   1.145 +
   1.146 +  /**
   1.147 +   * Logically groups other objects. There is not always a parent-child
   1.148 +   * relationship between the grouping object and the objects it contains. It
   1.149 +   * is used for html:textfield, xul:groupbox, role="group".
   1.150 +   */
   1.151 +  GROUPING = 20,
   1.152 +
   1.153 +  /**
   1.154 +   * Used to visually divide a space into two regions, such as a separator menu
   1.155 +   * item or a bar that divides split panes within a window. It is used for
   1.156 +   * xul:separator, html:hr, role="separator".
   1.157 +   */
   1.158 +  SEPARATOR = 21,
   1.159 +
   1.160 +  /**
   1.161 +   * Represents a toolbar, which is a grouping of controls (push buttons or
   1.162 +   * toggle buttons) that provides easy access to frequently used features. It
   1.163 +   * is used for xul:toolbar, role="toolbar".
   1.164 +   */
   1.165 +  TOOLBAR = 22,
   1.166 +
   1.167 +  /**
   1.168 +   * Represents a status bar, which is an area at the bottom of a window that
   1.169 +   * displays information about the current operation, state of the application,
   1.170 +   * or selected object. The status bar has multiple fields, which display
   1.171 +   * different kinds of information. It is used for xul:statusbar.
   1.172 +   */
   1.173 +  STATUSBAR = 23,
   1.174 +
   1.175 +  /**
   1.176 +   * Represents a table that contains rows and columns of cells, and optionally,
   1.177 +   * row headers and column headers. It is used for html:table,
   1.178 +   * role="grid". Also refer to the following role: COLUMNHEADER,
   1.179 +   * ROWHEADER, COLUMN, ROW, CELL.
   1.180 +   */
   1.181 +  TABLE = 24,
   1.182 +
   1.183 +  /**
   1.184 +   * Represents a column header, providing a visual label for a column in
   1.185 +   * a table. It is used for XUL tree column headers, html:th,
   1.186 +   * role="colheader". Also refer to TABLE.
   1.187 +   */
   1.188 +  COLUMNHEADER = 25,
   1.189 +
   1.190 +  /**
   1.191 +   * Represents a row header, which provides a visual label for a table row.
   1.192 +   * It is used for role="rowheader". Also, see TABLE.
   1.193 +   */
   1.194 +  ROWHEADER = 26,
   1.195 +
   1.196 +  /**
   1.197 +   * Represents a column of cells within a table. Also, see TABLE.
   1.198 +   */
   1.199 +  COLUMN = 27,
   1.200 +
   1.201 +  /**
   1.202 +   * Represents a row of cells within a table. Also, see TABLE.
   1.203 +   */
   1.204 +  ROW = 28,
   1.205 +
   1.206 +  /**
   1.207 +   * Represents a cell within a table. It is used for html:td,
   1.208 +   * xul:tree cell and xul:listcell. Also, see TABLE.
   1.209 +   */
   1.210 +  CELL = 29,
   1.211 +
   1.212 +  /**
   1.213 +   * Represents a link to something else. This object might look like text or
   1.214 +   * a graphic, but it acts like a button. It is used for
   1.215 +   * xul:label@class="text-link", html:a, html:area.
   1.216 +   */
   1.217 +  LINK = 30,
   1.218 +
   1.219 +  /**
   1.220 +   * Displays a Help topic in the form of a ToolTip or Help balloon.
   1.221 +   */
   1.222 +  HELPBALLOON = 31,
   1.223 +
   1.224 +  /**
   1.225 +   * Represents a cartoon-like graphic object, such as Microsoft Office
   1.226 +   * Assistant, which is displayed to provide help to users of an application.
   1.227 +   */
   1.228 +  CHARACTER = 32,
   1.229 +
   1.230 +  /**
   1.231 +   * Represents a list box, allowing the user to select one or more items. It
   1.232 +   * is used for xul:listbox, html:select@size, role="list". See also
   1.233 +   * LIST_ITEM.
   1.234 +   */
   1.235 +  LIST = 33,
   1.236 +
   1.237 +  /**
   1.238 +   * Represents an item in a list. See also LIST.
   1.239 +   */
   1.240 +  LISTITEM = 34,
   1.241 +
   1.242 +  /**
   1.243 +   * Represents an outline or tree structure, such as a tree view control,
   1.244 +   * that displays a hierarchical list and allows the user to expand and
   1.245 +   * collapse branches. Is is used for role="tree".
   1.246 +   */
   1.247 +  OUTLINE = 35,
   1.248 +
   1.249 +  /**
   1.250 +   * Represents an item in an outline or tree structure. It is used for
   1.251 +   * role="treeitem".
   1.252 +   */
   1.253 +  OUTLINEITEM = 36,
   1.254 +
   1.255 +  /**
   1.256 +   * Represents a page tab, it is a child of a page tab list. It is used for
   1.257 +   * xul:tab, role="treeitem". Also refer to PAGETABLIST.
   1.258 +   */
   1.259 +  PAGETAB = 37,
   1.260 +
   1.261 +  /**
   1.262 +   * Represents a property sheet. It is used for xul:tabpanel,
   1.263 +   * role="tabpanel".
   1.264 +   */
   1.265 +  PROPERTYPAGE = 38,
   1.266 +
   1.267 +  /**
   1.268 +   * Represents an indicator, such as a pointer graphic, that points to the
   1.269 +   * current item.
   1.270 +   */
   1.271 +  INDICATOR = 39,
   1.272 +
   1.273 +  /**
   1.274 +   * Represents a picture. Is is used for xul:image, html:img.
   1.275 +   */
   1.276 +  GRAPHIC = 40,
   1.277 +
   1.278 +  /**
   1.279 +   * Represents read-only text, such as labels for other controls or
   1.280 +   * instructions in a dialog box. Static text cannot be modified or selected.
   1.281 +   * Is is used for xul:label, xul:description, html:label, role="label".
   1.282 +   */
   1.283 +  STATICTEXT = 41,
   1.284 +
   1.285 +  /**
   1.286 +   * Represents selectable text that allows edits or is designated read-only.
   1.287 +   */
   1.288 +  TEXT_LEAF = 42,
   1.289 +
   1.290 +  /**
   1.291 +   * Represents a push button control. It is used for xul:button, html:button,
   1.292 +   * role="button".
   1.293 +   */
   1.294 +  PUSHBUTTON = 43,
   1.295 +
   1.296 +  /**
   1.297 +   * Represents a check box control. It is used for xul:checkbox,
   1.298 +   * html:input@type="checkbox", role="checkbox".
   1.299 +   */
   1.300 +  CHECKBUTTON = 44,
   1.301 +  
   1.302 +  /**
   1.303 +   * Represents an option button, also called a radio button. It is one of a
   1.304 +   * group of mutually exclusive options. All objects sharing a single parent
   1.305 +   * that have this attribute are assumed to be part of single mutually
   1.306 +   * exclusive group. It is used for xul:radio, html:input@type="radio",
   1.307 +   * role="radio".
   1.308 +   */
   1.309 +  RADIOBUTTON = 45,
   1.310 +  
   1.311 +  /**
   1.312 +   * Represents a combo box; an edit control with an associated list box that
   1.313 +   * provides a set of predefined choices. It is used for html:select,
   1.314 +   * xul:menulist, role="combobox".
   1.315 +   */
   1.316 +  COMBOBOX = 46,
   1.317 +
   1.318 +  /**
   1.319 +   * Represents the calendar control.
   1.320 +   */
   1.321 +  DROPLIST = 47,
   1.322 +
   1.323 +  /**
   1.324 +   * Represents a progress bar, dynamically showing the user the percent
   1.325 +   * complete of an operation in progress. It is used for xul:progressmeter,
   1.326 +   * role="progressbar".
   1.327 +   */
   1.328 +  PROGRESSBAR = 48,
   1.329 +
   1.330 +  /**
   1.331 +   * Represents a dial or knob whose purpose is to allow a user to set a value.
   1.332 +   */
   1.333 +  DIAL = 49,
   1.334 +
   1.335 +  /**
   1.336 +   * Represents a hot-key field that allows the user to enter a combination or
   1.337 +   * sequence of keystrokes.
   1.338 +   */
   1.339 +  HOTKEYFIELD = 50,
   1.340 +
   1.341 +  /**
   1.342 +   * Represents a slider, which allows the user to adjust a setting in given
   1.343 +   * increments between minimum and maximum values. It is used by xul:scale,
   1.344 +   * role="slider".
   1.345 +   */
   1.346 +  SLIDER = 51,
   1.347 +
   1.348 +  /**
   1.349 +   * Represents a spin box, which is a control that allows the user to increment
   1.350 +   * or decrement the value displayed in a separate "buddy" control associated
   1.351 +   * with the spin box. It is used for xul:spinbuttons.
   1.352 +   */
   1.353 +  SPINBUTTON = 52,
   1.354 +
   1.355 +  /**
   1.356 +   * Represents a graphical image used to diagram data. It is used for svg:svg.
   1.357 +   */
   1.358 +  DIAGRAM = 53,
   1.359 +  
   1.360 +  /**
   1.361 +   * Represents an animation control, which contains content that changes over
   1.362 +   * time, such as a control that displays a series of bitmap frames.
   1.363 +   */
   1.364 +  ANIMATION = 54,
   1.365 +
   1.366 +  /**
   1.367 +   * Represents a mathematical equation. It is used by MATHML, where there is a
   1.368 +   * rich DOM subtree for an equation. Use FLAT_EQUATION for <img role="math" alt="[TeX]"/>
   1.369 +   */
   1.370 +  EQUATION = 55,
   1.371 +
   1.372 +  /**
   1.373 +   * Represents a button that drops down a list of items.
   1.374 +   */
   1.375 +  BUTTONDROPDOWN = 56,
   1.376 +
   1.377 +  /**
   1.378 +   * Represents a button that drops down a menu.
   1.379 +   */
   1.380 +  BUTTONMENU = 57,
   1.381 +
   1.382 +  /**
   1.383 +   * Represents a button that drops down a grid. It is used for xul:colorpicker.
   1.384 +   */
   1.385 +  BUTTONDROPDOWNGRID = 58,
   1.386 +
   1.387 +  /**
   1.388 +   * Represents blank space between other objects.
   1.389 +   */
   1.390 +  WHITESPACE = 59,
   1.391 +
   1.392 +  /**
   1.393 +   * Represents a container of page tab controls. Is it used for xul:tabs,
   1.394 +   * DHTML: role="tabs". Also refer to PAGETAB.
   1.395 +   */
   1.396 +  PAGETABLIST = 60,
   1.397 +
   1.398 +  /**
   1.399 +   * Represents a control that displays time.
   1.400 +   */
   1.401 +  CLOCK = 61,
   1.402 +
   1.403 +  /**
   1.404 +   * Represents a button on a toolbar that has a drop-down list icon directly
   1.405 +   * adjacent to the button.
   1.406 +   */
   1.407 +  SPLITBUTTON = 62,
   1.408 +
   1.409 +  /**
   1.410 +   * Represents an edit control designed for an Internet Protocol (IP) address.
   1.411 +   * The edit control is divided into sections for the different parts of the
   1.412 +   * IP address.
   1.413 +   */
   1.414 +  IPADDRESS = 63,
   1.415 +
   1.416 +  /**
   1.417 +   * Represents a label control that has an accelerator.
   1.418 +   */
   1.419 +  ACCEL_LABEL = 64,
   1.420 +
   1.421 +  /**
   1.422 +   * Represents an arrow in one of the four cardinal directions.
   1.423 +   */
   1.424 +  ARROW  = 65,
   1.425 +
   1.426 +  /**
   1.427 +   * Represents a control that can be drawn into and is used to trap events.
   1.428 +   * It is used for html:canvas.
   1.429 +   */
   1.430 +  CANVAS = 66,
   1.431 +
   1.432 +  /**
   1.433 +   * Represents a menu item with a check box.
   1.434 +   */
   1.435 +  CHECK_MENU_ITEM = 67,
   1.436 +
   1.437 +  /**
   1.438 +   * Represents a specialized dialog that lets the user choose a color.
   1.439 +   */
   1.440 +  COLOR_CHOOSER  = 68,
   1.441 +
   1.442 +  /**
   1.443 +   * Represents control whose purpose is to allow a user to edit a date.
   1.444 +   */
   1.445 +  DATE_EDITOR = 69,
   1.446 +
   1.447 +  /**
   1.448 +   * An iconified internal frame in an DESKTOP_PANE. Also refer to
   1.449 +   * INTERNAL_FRAME.
   1.450 +   */
   1.451 +  DESKTOP_ICON = 70,
   1.452 +
   1.453 +  /**
   1.454 +   * A desktop pane. A pane that supports internal frames and iconified
   1.455 +   * versions of those internal frames.
   1.456 +   */
   1.457 +  DESKTOP_FRAME = 71,
   1.458 +
   1.459 +  /**
   1.460 +   * A directory pane. A pane that allows the user to navigate through
   1.461 +   * and select the contents of a directory. May be used by a file chooser.
   1.462 +   * Also refer to FILE_CHOOSER.
   1.463 +   */
   1.464 +  DIRECTORY_PANE = 72,
   1.465 +
   1.466 +  /**
   1.467 +   * A file chooser. A specialized dialog that displays the files in the
   1.468 +   * directory and lets the user select a file, browse a different directory,
   1.469 +   * or specify a filename. May use the directory pane to show the contents of
   1.470 +   * a directory. Also refer to DIRECTORY_PANE.
   1.471 +   */
   1.472 +  FILE_CHOOSER = 73,
   1.473 +
   1.474 +  /**
   1.475 +   * A font chooser. A font chooser is a component that lets the user pick
   1.476 +   * various attributes for fonts.
   1.477 +   */
   1.478 +  FONT_CHOOSER = 74,
   1.479 +
   1.480 +  /**
   1.481 +   * Frame role. A top level window with a title bar, border, menu bar, etc.
   1.482 +   * It is often used as the primary window for an application.
   1.483 +   */
   1.484 +  CHROME_WINDOW = 75,
   1.485 +
   1.486 +  /**
   1.487 +   *  A glass pane. A pane that is guaranteed to be painted on top of all
   1.488 +   * panes beneath it. Also refer to ROOT_PANE.
   1.489 +   */
   1.490 +  GLASS_PANE = 76,
   1.491 +
   1.492 +  /**
   1.493 +   * A document container for HTML, whose children represent the document
   1.494 +   * content.
   1.495 +   */
   1.496 +  HTML_CONTAINER = 77,
   1.497 +
   1.498 +  /**
   1.499 +   * A small fixed size picture, typically used to decorate components.
   1.500 +   */
   1.501 +  ICON = 78,
   1.502 +
   1.503 +  /**
   1.504 +   * Presents an icon or short string in an interface.
   1.505 +   */
   1.506 +  LABEL = 79,
   1.507 +
   1.508 +  /**
   1.509 +   * A layered pane. A specialized pane that allows its children to be drawn
   1.510 +   * in layers, providing a form of stacking order. This is usually the pane
   1.511 +   * that holds the menu bar as  well as the pane that contains most of the
   1.512 +   * visual components in a window. Also refer to GLASS_PANE and
   1.513 +   * ROOT_PANE.
   1.514 +   */
   1.515 +  LAYERED_PANE = 80,
   1.516 +
   1.517 +  /**
   1.518 +   * A specialized pane whose primary use is inside a dialog.
   1.519 +   */
   1.520 +  OPTION_PANE = 81,
   1.521 +
   1.522 +  /**
   1.523 +   * A text object uses for passwords, or other places where the text content
   1.524 +   * is not shown visibly to the user.
   1.525 +   */
   1.526 +  PASSWORD_TEXT = 82,
   1.527 +
   1.528 +  /**
   1.529 +   * A temporary window that is usually used to offer the user a list of
   1.530 +   * choices, and then hides when the user selects one of those choices.
   1.531 +   */
   1.532 +  POPUP_MENU = 83,
   1.533 +
   1.534 +  /**
   1.535 +   * A radio button that is a menu item.
   1.536 +   */
   1.537 +  RADIO_MENU_ITEM = 84,
   1.538 +
   1.539 +  /**
   1.540 +   * A root pane. A specialized pane that has a glass pane and a layered pane
   1.541 +   * as its children. Also refer to GLASS_PANE and LAYERED_PANE.
   1.542 +   */
   1.543 +  ROOT_PANE = 85,
   1.544 +
   1.545 +  /**
   1.546 +   * A scroll pane. An object that allows a user to incrementally view a large
   1.547 +   * amount of information.  Its children can include scroll bars and a
   1.548 +   * viewport. Also refer to VIEW_PORT.
   1.549 +   */
   1.550 +  SCROLL_PANE = 86,
   1.551 +
   1.552 +  /**
   1.553 +   * A split pane. A specialized panel that presents two other panels at the
   1.554 +   * same time. Between the two panels is a divider the user can manipulate to
   1.555 +   * make one panel larger and the other panel smaller.
   1.556 +   */
   1.557 +  SPLIT_PANE = 87,
   1.558 +
   1.559 +  /**
   1.560 +   * The header for a column of a table.
   1.561 +   * XXX: it looks this role is dupe of COLUMNHEADER.
   1.562 +   */
   1.563 +  TABLE_COLUMN_HEADER = 88,
   1.564 +
   1.565 +  /**
   1.566 +   * The header for a row of a table.
   1.567 +   * XXX: it looks this role is dupe of ROWHEADER
   1.568 +   */
   1.569 +  TABLE_ROW_HEADER = 89,
   1.570 +
   1.571 +  /**
   1.572 +   * A menu item used to tear off and reattach its menu.
   1.573 +   */
   1.574 +  TEAR_OFF_MENU_ITEM = 90,
   1.575 +
   1.576 +  /**
   1.577 +   * Represents an accessible terminal.
   1.578 +   */
   1.579 +  TERMINAL = 91,
   1.580 +
   1.581 +  /**
   1.582 +   * Collection of objects that constitute a logical text entity.
   1.583 +   */
   1.584 +  TEXT_CONTAINER = 92,
   1.585 +
   1.586 +  /**
   1.587 +   * A toggle button. A specialized push button that can be checked or
   1.588 +   * unchecked, but does not provide a separate indicator for the current state.
   1.589 +   */
   1.590 +  TOGGLE_BUTTON = 93,
   1.591 +
   1.592 +  /**
   1.593 +   * Represent a control that is capable of expanding and collapsing rows as
   1.594 +   * well as showing multiple columns of data.
   1.595 +   */
   1.596 +  TREE_TABLE = 94,
   1.597 +
   1.598 +  /**
   1.599 +   * A viewport. An object usually used in a scroll pane. It represents the
   1.600 +   * portion of the entire data that the user can see. As the user manipulates
   1.601 +   * the scroll bars, the contents of the viewport can change. Also refer to
   1.602 +   * SCROLL_PANE.
   1.603 +   */
   1.604 +  VIEWPORT = 95,
   1.605 +
   1.606 +  /**
   1.607 +   * Header of a document page. Also refer to FOOTER.
   1.608 +   */
   1.609 +  HEADER = 96,
   1.610 +
   1.611 +  /**
   1.612 +   * Footer of a document page. Also refer to HEADER.
   1.613 +   */
   1.614 +  FOOTER = 97,
   1.615 +
   1.616 +  /**
   1.617 +   * A paragraph of text.
   1.618 +   */
   1.619 +  PARAGRAPH = 98,
   1.620 +
   1.621 +  /**
   1.622 +   * A ruler such as those used in word processors.
   1.623 +   */
   1.624 +  RULER = 99,
   1.625 +
   1.626 +  /**
   1.627 +   * A text entry having dialog or list containing items for insertion into
   1.628 +   * an entry widget, for instance a list of words for completion of a
   1.629 +   * text entry. It is used for xul:textbox@autocomplete
   1.630 +   */
   1.631 +  AUTOCOMPLETE = 100,
   1.632 +
   1.633 +  /**
   1.634 +   *  An editable text object in a toolbar.
   1.635 +   */
   1.636 +  EDITBAR = 101,
   1.637 +
   1.638 +  /**
   1.639 +   * An control whose textual content may be entered or modified by the user.
   1.640 +   */
   1.641 +  ENTRY = 102,
   1.642 +
   1.643 +  /**
   1.644 +   * A caption describing another object.
   1.645 +   */
   1.646 +  CAPTION = 103,
   1.647 +
   1.648 +  /**
   1.649 +   * A visual frame or container which contains a view of document content.
   1.650 +   * Document frames may occur within another Document instance, in which case
   1.651 +   * the second document may be said to be embedded in the containing instance.
   1.652 +   * HTML frames are often DOCUMENT_FRAME. Either this object, or a
   1.653 +   * singleton descendant, should implement the Document interface.
   1.654 +   */
   1.655 +  DOCUMENT_FRAME = 104,
   1.656 +
   1.657 +  /**
   1.658 +   * Heading.
   1.659 +   */
   1.660 +  HEADING = 105,
   1.661 +
   1.662 +  /**
   1.663 +   * An object representing a page of document content.  It is used in documents
   1.664 +   * which are accessed by the user on a page by page basis.
   1.665 +   */
   1.666 +  PAGE = 106,
   1.667 +
   1.668 +  /**
   1.669 +   * A container of document content.  An example of the use of this role is to
   1.670 +   * represent an html:div.
   1.671 +   */
   1.672 +  SECTION = 107,
   1.673 +
   1.674 +  /**
   1.675 +   * An object which is redundant with another object in the accessible
   1.676 +   * hierarchy. ATs typically ignore objects with this role.
   1.677 +   */
   1.678 +  REDUNDANT_OBJECT = 108,
   1.679 +
   1.680 +  /**
   1.681 +   * A container of form controls. An example of the use of this role is to
   1.682 +   * represent an html:form.
   1.683 +   */
   1.684 +  FORM = 109,
   1.685 +
   1.686 +  /**
   1.687 +   * An object which is used to allow input of characters not found on a
   1.688 +   * keyboard, such as the input of Chinese characters on a Western keyboard.
   1.689 +   */
   1.690 +  IME = 110,
   1.691 +
   1.692 +  /**
   1.693 +   * XXX: document this.
   1.694 +   */
   1.695 +  APP_ROOT = 111,
   1.696 +
   1.697 +  /**
   1.698 +   * Represents a menu item, which is an entry in a menu that a user can choose
   1.699 +   * to display another menu.
   1.700 +   */
   1.701 +  PARENT_MENUITEM = 112,
   1.702 +
   1.703 +  /**
   1.704 +   * A calendar that allows the user to select a date.
   1.705 +   */
   1.706 +  CALENDAR = 113,
   1.707 +
   1.708 +  /**
   1.709 +   * A list of items that is shown by combobox.
   1.710 +   */
   1.711 +  COMBOBOX_LIST = 114,
   1.712 +
   1.713 +  /**
   1.714 +   * A item of list that is shown by combobox.
   1.715 +   */
   1.716 +  COMBOBOX_OPTION = 115,
   1.717 +
   1.718 +  /**
   1.719 +   * An image map -- has child links representing the areas
   1.720 +   */
   1.721 +  IMAGE_MAP = 116,
   1.722 +  
   1.723 +  /**
   1.724 +   * An option in a listbox
   1.725 +   */
   1.726 +  OPTION = 117,
   1.727 +  
   1.728 +  /**
   1.729 +   * A rich option in a listbox, it can have other widgets as children
   1.730 +   */
   1.731 +  RICH_OPTION = 118,
   1.732 +  
   1.733 +  /**
   1.734 +   * A list of options
   1.735 +   */
   1.736 +  LISTBOX = 119,
   1.737 +
   1.738 +  /**
   1.739 +   * Represents a mathematical equation in the accessible name
   1.740 +   */
   1.741 +  FLAT_EQUATION = 120,
   1.742 +  
   1.743 +  /**
   1.744 +   * Represents a cell within a grid. It is used for role="gridcell". Unlike
   1.745 +   * CELL, it allows the calculation of the accessible name from subtree.
   1.746 +   * Also, see TABLE.
   1.747 +   */
   1.748 +  GRID_CELL = 121,
   1.749 +
   1.750 +  /**
   1.751 +   * Represents an embedded object. It is used for html:object or html:embed.
   1.752 +   */
   1.753 +  EMBEDDED_OBJECT = 122,
   1.754 +
   1.755 +  /**
   1.756 +   * A note. Originally intended to be hidden until activated, but now also used
   1.757 +   * for things like html 'aside'.
   1.758 +   */
   1.759 +  NOTE = 123,
   1.760 +
   1.761 +  /**
   1.762 +   * A figure. Used for things like HTML5 figure element.
   1.763 +   */
   1.764 +  FIGURE = 124,
   1.765 +
   1.766 +  /**
   1.767 +   * Represents a rich item with a check box.
   1.768 +   */
   1.769 +  CHECK_RICH_OPTION = 125,
   1.770 +
   1.771 +  /**
   1.772 +   * Represent a definition list (dl in HTML).
   1.773 +   */
   1.774 +  DEFINITION_LIST = 126,
   1.775 +
   1.776 +  /**
   1.777 +   * Represent a term in a definition list (dt in HTML).
   1.778 +   */
   1.779 +  TERM = 127,
   1.780 +
   1.781 +  /**
   1.782 +   * Represent a definition in a definition list (dd in HTML)
   1.783 +   */
   1.784 +  DEFINITION = 128,
   1.785 +
   1.786 +  /**
   1.787 +   * Represent a keyboard or keypad key (ARIA role "key").
   1.788 +   */
   1.789 +  KEY = 129
   1.790 +};
   1.791 +
   1.792 +} // namespace role
   1.793 +
   1.794 +typedef enum mozilla::a11y::roles::Role role;
   1.795 +
   1.796 +} // namespace a11y
   1.797 +} // namespace mozilla
   1.798 +
   1.799 +#endif

mercurial