diff options
author | Matt A. Tobin <mattatobin@localhost.localdomain> | 2018-02-02 04:16:08 -0500 |
---|---|---|
committer | Matt A. Tobin <mattatobin@localhost.localdomain> | 2018-02-02 04:16:08 -0500 |
commit | 5f8de423f190bbb79a62f804151bc24824fa32d8 (patch) | |
tree | 10027f336435511475e392454359edea8e25895d /accessible/base/RoleMap.h | |
parent | 49ee0794b5d912db1f95dce6eb52d781dc210db5 (diff) | |
download | UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.gz UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.lz UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.xz UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.zip |
Add m-esr52 at 52.6.0
Diffstat (limited to 'accessible/base/RoleMap.h')
-rw-r--r-- | accessible/base/RoleMap.h | 1370 |
1 files changed, 1370 insertions, 0 deletions
diff --git a/accessible/base/RoleMap.h b/accessible/base/RoleMap.h new file mode 100644 index 000000000..c931355ae --- /dev/null +++ b/accessible/base/RoleMap.h @@ -0,0 +1,1370 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this file, + * You can obtain one at http://mozilla.org/MPL/2.0/. */ + +/** + * Usage: declare the macro ROLE()with the following arguments: + * ROLE(geckoRole, stringRole, atkRole, macRole, msaaRole, ia2Role, nameRule) + */ + +ROLE(NOTHING, + "nothing", + ATK_ROLE_UNKNOWN, + NSAccessibilityUnknownRole, + USE_ROLE_STRING, + IA2_ROLE_UNKNOWN, + eNameFromSubtreeIfReqRule) + +ROLE(TITLEBAR, + "titlebar", + ATK_ROLE_UNKNOWN, + NSAccessibilityUnknownRole, //Irrelevant on OS X; windows are always native. + ROLE_SYSTEM_TITLEBAR, + ROLE_SYSTEM_TITLEBAR, + eNoNameRule) + +ROLE(MENUBAR, + "menubar", + ATK_ROLE_MENU_BAR, + NSAccessibilityMenuBarRole, //Irrelevant on OS X; the menubar will always be native and on the top of the screen. + ROLE_SYSTEM_MENUBAR, + ROLE_SYSTEM_MENUBAR, + eNoNameRule) + +ROLE(SCROLLBAR, + "scrollbar", + ATK_ROLE_SCROLL_BAR, + NSAccessibilityScrollBarRole, //We might need to make this its own mozAccessible, to support the children objects (valueindicator, down/up buttons). + ROLE_SYSTEM_SCROLLBAR, + ROLE_SYSTEM_SCROLLBAR, + eNameFromValueRule) + +ROLE(GRIP, + "grip", + ATK_ROLE_UNKNOWN, + NSAccessibilitySplitterRole, + ROLE_SYSTEM_GRIP, + ROLE_SYSTEM_GRIP, + eNoNameRule) + +ROLE(SOUND, + "sound", + ATK_ROLE_UNKNOWN, + NSAccessibilityUnknownRole, //Unused on OS X. + ROLE_SYSTEM_SOUND, + ROLE_SYSTEM_SOUND, + eNoNameRule) + +ROLE(CURSOR, + "cursor", + ATK_ROLE_UNKNOWN, + NSAccessibilityUnknownRole, //Unused on OS X. + ROLE_SYSTEM_CURSOR, + ROLE_SYSTEM_CURSOR, + eNoNameRule) + +ROLE(CARET, + "caret", + ATK_ROLE_UNKNOWN, + NSAccessibilityUnknownRole, //Unused on OS X. + ROLE_SYSTEM_CARET, + ROLE_SYSTEM_CARET, + eNoNameRule) + +ROLE(ALERT, + "alert", + ATK_ROLE_ALERT, + NSAccessibilityGroupRole, + ROLE_SYSTEM_ALERT, + ROLE_SYSTEM_ALERT, + eNoNameRule) + +ROLE(WINDOW, + "window", + ATK_ROLE_WINDOW, + NSAccessibilityWindowRole, //Irrelevant on OS X; all window a11y is handled by the system. + ROLE_SYSTEM_WINDOW, + ROLE_SYSTEM_WINDOW, + eNoNameRule) + +ROLE(INTERNAL_FRAME, + "internal frame", + ATK_ROLE_INTERNAL_FRAME, + NSAccessibilityScrollAreaRole, + USE_ROLE_STRING, + IA2_ROLE_INTERNAL_FRAME, + eNoNameRule) + +ROLE(MENUPOPUP, + "menupopup", + ATK_ROLE_MENU, + NSAccessibilityMenuRole, //The parent of menuitems. + ROLE_SYSTEM_MENUPOPUP, + ROLE_SYSTEM_MENUPOPUP, + eNoNameRule) + +ROLE(MENUITEM, + "menuitem", + ATK_ROLE_MENU_ITEM, + NSAccessibilityMenuItemRole, + ROLE_SYSTEM_MENUITEM, + ROLE_SYSTEM_MENUITEM, + eNameFromSubtreeRule) + +ROLE(TOOLTIP, + "tooltip", + ATK_ROLE_TOOL_TIP, + @"AXHelpTag", //10.4+ only, so we re-define the constant. + ROLE_SYSTEM_TOOLTIP, + ROLE_SYSTEM_TOOLTIP, + eNameFromSubtreeRule) + +ROLE(APPLICATION, + "application", + ATK_ROLE_EMBEDDED, + NSAccessibilityGroupRole, //Unused on OS X. the system will take care of this. + ROLE_SYSTEM_APPLICATION, + ROLE_SYSTEM_APPLICATION, + eNoNameRule) + +ROLE(DOCUMENT, + "document", + ATK_ROLE_DOCUMENT_FRAME, + @"AXWebArea", + ROLE_SYSTEM_DOCUMENT, + ROLE_SYSTEM_DOCUMENT, + eNoNameRule) + +/** + * msaa comment: + * We used to map to ROLE_SYSTEM_PANE, but JAWS would + * not read the accessible name for the contaning pane. + * However, JAWS will read the accessible name for a groupbox. + * By mapping a PANE to a GROUPING, we get no undesirable effects, + * but fortunately JAWS will then read the group's label, + * when an inner control gets focused. + */ +ROLE(PANE, + "pane", + ATK_ROLE_PANEL, + NSAccessibilityGroupRole, + ROLE_SYSTEM_GROUPING, + ROLE_SYSTEM_GROUPING, + eNoNameRule) + +ROLE(CHART, + "chart", + ATK_ROLE_CHART, + NSAccessibilityUnknownRole, + ROLE_SYSTEM_CHART, + ROLE_SYSTEM_CHART, + eNoNameRule) + +ROLE(DIALOG, + "dialog", + ATK_ROLE_DIALOG, + NSAccessibilityWindowRole, //There's a dialog subrole. + ROLE_SYSTEM_DIALOG, + ROLE_SYSTEM_DIALOG, + eNoNameRule) + +ROLE(BORDER, + "border", + ATK_ROLE_UNKNOWN, + NSAccessibilityUnknownRole, //Unused on OS X. + ROLE_SYSTEM_BORDER, + ROLE_SYSTEM_BORDER, + eNoNameRule) + +ROLE(GROUPING, + "grouping", + ATK_ROLE_PANEL, + NSAccessibilityGroupRole, + ROLE_SYSTEM_GROUPING, + ROLE_SYSTEM_GROUPING, + eNoNameRule) + +ROLE(SEPARATOR, + "separator", + ATK_ROLE_SEPARATOR, + NSAccessibilitySplitterRole, + ROLE_SYSTEM_SEPARATOR, + ROLE_SYSTEM_SEPARATOR, + eNoNameRule) + +ROLE(TOOLBAR, + "toolbar", + ATK_ROLE_TOOL_BAR, + NSAccessibilityToolbarRole, + ROLE_SYSTEM_TOOLBAR, + ROLE_SYSTEM_TOOLBAR, + eNoNameRule) + +ROLE(STATUSBAR, + "statusbar", + ATK_ROLE_STATUSBAR, + NSAccessibilityUnknownRole, //Doesn't exist on OS X (a status bar is its parts; a progressbar, a label, etc.) + ROLE_SYSTEM_STATUSBAR, + ROLE_SYSTEM_STATUSBAR, + eNoNameRule) + +ROLE(TABLE, + "table", + ATK_ROLE_TABLE, + NSAccessibilityTableRole, + ROLE_SYSTEM_TABLE, + ROLE_SYSTEM_TABLE, + eNoNameRule) + +ROLE(COLUMNHEADER, + "columnheader", + ATK_ROLE_COLUMN_HEADER, + NSAccessibilityCellRole, + ROLE_SYSTEM_COLUMNHEADER, + ROLE_SYSTEM_COLUMNHEADER, + eNameFromSubtreeRule) + +ROLE(ROWHEADER, + "rowheader", + ATK_ROLE_ROW_HEADER, + NSAccessibilityCellRole, + ROLE_SYSTEM_ROWHEADER, + ROLE_SYSTEM_ROWHEADER, + eNameFromSubtreeRule) + +ROLE(COLUMN, + "column", + ATK_ROLE_UNKNOWN, + NSAccessibilityColumnRole, + ROLE_SYSTEM_COLUMN, + ROLE_SYSTEM_COLUMN, + eNameFromSubtreeRule) + +ROLE(ROW, + "row", + ATK_ROLE_TABLE_ROW, + NSAccessibilityRowRole, + ROLE_SYSTEM_ROW, + ROLE_SYSTEM_ROW, + eNameFromSubtreeRule) + +ROLE(CELL, + "cell", + ATK_ROLE_TABLE_CELL, + NSAccessibilityCellRole, + ROLE_SYSTEM_CELL, + ROLE_SYSTEM_CELL, + eNameFromSubtreeIfReqRule) + +ROLE(LINK, + "link", + ATK_ROLE_LINK, + @"AXLink", //10.4+ the attr first define in SDK 10.4, so we define it here too. ROLE_LINK + ROLE_SYSTEM_LINK, + ROLE_SYSTEM_LINK, + eNameFromSubtreeRule) + +ROLE(HELPBALLOON, + "helpballoon", + ATK_ROLE_UNKNOWN, + @"AXHelpTag", + ROLE_SYSTEM_HELPBALLOON, + ROLE_SYSTEM_HELPBALLOON, + eNameFromSubtreeRule) + +ROLE(CHARACTER, + "character", + ATK_ROLE_IMAGE, + NSAccessibilityUnknownRole, //Unused on OS X. + ROLE_SYSTEM_CHARACTER, + ROLE_SYSTEM_CHARACTER, + eNoNameRule) + +ROLE(LIST, + "list", + ATK_ROLE_LIST, + NSAccessibilityListRole, + ROLE_SYSTEM_LIST, + ROLE_SYSTEM_LIST, + eNameFromSubtreeIfReqRule) + +ROLE(LISTITEM, + "listitem", + ATK_ROLE_LIST_ITEM, + NSAccessibilityGroupRole, + ROLE_SYSTEM_LISTITEM, + ROLE_SYSTEM_LISTITEM, + eNameFromSubtreeRule) + +ROLE(OUTLINE, + "outline", + ATK_ROLE_TREE, + NSAccessibilityOutlineRole, + ROLE_SYSTEM_OUTLINE, + ROLE_SYSTEM_OUTLINE, + eNoNameRule) + +ROLE(OUTLINEITEM, + "outlineitem", + ATK_ROLE_LIST_ITEM, + NSAccessibilityRowRole, //XXX: use OutlineRow as subrole. + ROLE_SYSTEM_OUTLINEITEM, + ROLE_SYSTEM_OUTLINEITEM, + eNameFromSubtreeRule) + +ROLE(PAGETAB, + "pagetab", + ATK_ROLE_PAGE_TAB, + NSAccessibilityRadioButtonRole, + ROLE_SYSTEM_PAGETAB, + ROLE_SYSTEM_PAGETAB, + eNameFromSubtreeRule) + +ROLE(PROPERTYPAGE, + "propertypage", + ATK_ROLE_SCROLL_PANE, + NSAccessibilityGroupRole, + ROLE_SYSTEM_PROPERTYPAGE, + ROLE_SYSTEM_PROPERTYPAGE, + eNoNameRule) + +ROLE(INDICATOR, + "indicator", + ATK_ROLE_UNKNOWN, + NSAccessibilityUnknownRole, + ROLE_SYSTEM_INDICATOR, + ROLE_SYSTEM_INDICATOR, + eNoNameRule) + +ROLE(GRAPHIC, + "graphic", + ATK_ROLE_IMAGE, + NSAccessibilityImageRole, + ROLE_SYSTEM_GRAPHIC, + ROLE_SYSTEM_GRAPHIC, + eNoNameRule) + +ROLE(STATICTEXT, + "statictext", + ATK_ROLE_UNKNOWN, + NSAccessibilityStaticTextRole, + ROLE_SYSTEM_STATICTEXT, + ROLE_SYSTEM_STATICTEXT, + eNoNameRule) + +ROLE(TEXT_LEAF, + "text leaf", + ATK_ROLE_UNKNOWN, + NSAccessibilityStaticTextRole, + ROLE_SYSTEM_TEXT, + ROLE_SYSTEM_TEXT, + eNoNameRule) + +ROLE(PUSHBUTTON, + "pushbutton", + ATK_ROLE_PUSH_BUTTON, + NSAccessibilityButtonRole, + ROLE_SYSTEM_PUSHBUTTON, + ROLE_SYSTEM_PUSHBUTTON, + eNameFromSubtreeRule) + +ROLE(CHECKBUTTON, + "checkbutton", + ATK_ROLE_CHECK_BOX, + NSAccessibilityCheckBoxRole, + ROLE_SYSTEM_CHECKBUTTON, + ROLE_SYSTEM_CHECKBUTTON, + eNameFromSubtreeRule) + +ROLE(RADIOBUTTON, + "radiobutton", + ATK_ROLE_RADIO_BUTTON, + NSAccessibilityRadioButtonRole, + ROLE_SYSTEM_RADIOBUTTON, + ROLE_SYSTEM_RADIOBUTTON, + eNameFromSubtreeRule) + +ROLE(COMBOBOX, + "combobox", + ATK_ROLE_COMBO_BOX, + NSAccessibilityPopUpButtonRole, + ROLE_SYSTEM_COMBOBOX, + ROLE_SYSTEM_COMBOBOX, + eNameFromValueRule) + +ROLE(DROPLIST, + "droplist", + ATK_ROLE_COMBO_BOX, + NSAccessibilityPopUpButtonRole, + ROLE_SYSTEM_DROPLIST, + ROLE_SYSTEM_DROPLIST, + eNoNameRule) + +ROLE(PROGRESSBAR, + "progressbar", + ATK_ROLE_PROGRESS_BAR, + NSAccessibilityProgressIndicatorRole, + ROLE_SYSTEM_PROGRESSBAR, + ROLE_SYSTEM_PROGRESSBAR, + eNameFromValueRule) + +ROLE(DIAL, + "dial", + ATK_ROLE_DIAL, + NSAccessibilityUnknownRole, + ROLE_SYSTEM_DIAL, + ROLE_SYSTEM_DIAL, + eNoNameRule) + +ROLE(HOTKEYFIELD, + "hotkeyfield", + ATK_ROLE_UNKNOWN, + NSAccessibilityUnknownRole, + ROLE_SYSTEM_HOTKEYFIELD, + ROLE_SYSTEM_HOTKEYFIELD, + eNoNameRule) + +ROLE(SLIDER, + "slider", + ATK_ROLE_SLIDER, + NSAccessibilitySliderRole, + ROLE_SYSTEM_SLIDER, + ROLE_SYSTEM_SLIDER, + eNameFromValueRule) + +ROLE(SPINBUTTON, + "spinbutton", + ATK_ROLE_SPIN_BUTTON, + NSAccessibilityIncrementorRole, //Subroles: Increment/Decrement. + ROLE_SYSTEM_SPINBUTTON, + ROLE_SYSTEM_SPINBUTTON, + eNameFromValueRule) + +ROLE(DIAGRAM, + "diagram", + ATK_ROLE_IMAGE, + NSAccessibilityUnknownRole, + ROLE_SYSTEM_DIAGRAM, + ROLE_SYSTEM_DIAGRAM, + eNoNameRule) + +ROLE(ANIMATION, + "animation", + ATK_ROLE_ANIMATION, + NSAccessibilityUnknownRole, + ROLE_SYSTEM_ANIMATION, + ROLE_SYSTEM_ANIMATION, + eNoNameRule) + +ROLE(EQUATION, + "equation", + ATK_ROLE_UNKNOWN, + NSAccessibilityUnknownRole, + ROLE_SYSTEM_EQUATION, + ROLE_SYSTEM_EQUATION, + eNoNameRule) + +ROLE(BUTTONDROPDOWN, + "buttondropdown", + ATK_ROLE_PUSH_BUTTON, + NSAccessibilityPopUpButtonRole, + ROLE_SYSTEM_BUTTONDROPDOWN, + ROLE_SYSTEM_BUTTONDROPDOWN, + eNameFromSubtreeRule) + +ROLE(BUTTONMENU, + "buttonmenu", + ATK_ROLE_PUSH_BUTTON, + NSAccessibilityMenuButtonRole, + ROLE_SYSTEM_BUTTONMENU, + ROLE_SYSTEM_BUTTONMENU, + eNameFromSubtreeRule) + +ROLE(BUTTONDROPDOWNGRID, + "buttondropdowngrid", + ATK_ROLE_UNKNOWN, + NSAccessibilityGroupRole, + ROLE_SYSTEM_BUTTONDROPDOWNGRID, + ROLE_SYSTEM_BUTTONDROPDOWNGRID, + eNameFromSubtreeRule) + +ROLE(WHITESPACE, + "whitespace", + ATK_ROLE_UNKNOWN, + NSAccessibilityUnknownRole, + ROLE_SYSTEM_WHITESPACE, + ROLE_SYSTEM_WHITESPACE, + eNoNameRule) + +ROLE(PAGETABLIST, + "pagetablist", + ATK_ROLE_PAGE_TAB_LIST, + NSAccessibilityTabGroupRole, + ROLE_SYSTEM_PAGETABLIST, + ROLE_SYSTEM_PAGETABLIST, + eNoNameRule) + +ROLE(CLOCK, + "clock", + ATK_ROLE_UNKNOWN, + NSAccessibilityUnknownRole, //Unused on OS X + ROLE_SYSTEM_CLOCK, + ROLE_SYSTEM_CLOCK, + eNoNameRule) + +ROLE(SPLITBUTTON, + "splitbutton", + ATK_ROLE_PUSH_BUTTON, + NSAccessibilityButtonRole, + ROLE_SYSTEM_SPLITBUTTON, + ROLE_SYSTEM_SPLITBUTTON, + eNoNameRule) + +ROLE(IPADDRESS, + "ipaddress", + ATK_ROLE_UNKNOWN, + NSAccessibilityUnknownRole, + ROLE_SYSTEM_IPADDRESS, + ROLE_SYSTEM_IPADDRESS, + eNoNameRule) + +ROLE(ACCEL_LABEL, + "accel label", + ATK_ROLE_ACCEL_LABEL, + NSAccessibilityStaticTextRole, + ROLE_SYSTEM_STATICTEXT, + ROLE_SYSTEM_STATICTEXT, + eNoNameRule) + +ROLE(ARROW, + "arrow", + ATK_ROLE_ARROW, + NSAccessibilityUnknownRole, + ROLE_SYSTEM_INDICATOR, + ROLE_SYSTEM_INDICATOR, + eNoNameRule) + +ROLE(CANVAS, + "canvas", + ATK_ROLE_CANVAS, + NSAccessibilityImageRole, + USE_ROLE_STRING, + IA2_ROLE_CANVAS, + eNoNameRule) + +ROLE(CHECK_MENU_ITEM, + "check menu item", + ATK_ROLE_CHECK_MENU_ITEM, + NSAccessibilityMenuItemRole, + ROLE_SYSTEM_MENUITEM, + IA2_ROLE_CHECK_MENU_ITEM, + eNameFromSubtreeRule) + +ROLE(COLOR_CHOOSER, + "color chooser", + ATK_ROLE_COLOR_CHOOSER, + NSAccessibilityColorWellRole, + ROLE_SYSTEM_DIALOG, + IA2_ROLE_COLOR_CHOOSER, + eNoNameRule) + +ROLE(DATE_EDITOR, + "date editor", + ATK_ROLE_DATE_EDITOR, + NSAccessibilityUnknownRole, + USE_ROLE_STRING, + IA2_ROLE_DATE_EDITOR, + eNoNameRule) + +ROLE(DESKTOP_ICON, + "desktop icon", + ATK_ROLE_DESKTOP_ICON, + NSAccessibilityImageRole, + USE_ROLE_STRING, + IA2_ROLE_DESKTOP_ICON, + eNoNameRule) + +ROLE(DESKTOP_FRAME, + "desktop frame", + ATK_ROLE_DESKTOP_FRAME, + NSAccessibilityUnknownRole, + USE_ROLE_STRING, + IA2_ROLE_DESKTOP_PANE, + eNoNameRule) + +ROLE(DIRECTORY_PANE, + "directory pane", + ATK_ROLE_DIRECTORY_PANE, + NSAccessibilityBrowserRole, + USE_ROLE_STRING, + IA2_ROLE_DIRECTORY_PANE, + eNoNameRule) + +ROLE(FILE_CHOOSER, + "file chooser", + ATK_ROLE_FILE_CHOOSER, + NSAccessibilityUnknownRole, //Unused on OS X + USE_ROLE_STRING, + IA2_ROLE_FILE_CHOOSER, + eNoNameRule) + +ROLE(FONT_CHOOSER, + "font chooser", + ATK_ROLE_FONT_CHOOSER, + NSAccessibilityUnknownRole, + USE_ROLE_STRING, + IA2_ROLE_FONT_CHOOSER, + eNoNameRule) + +ROLE(CHROME_WINDOW, + "chrome window", + ATK_ROLE_FRAME, + NSAccessibilityGroupRole, //Contains the main Firefox UI + ROLE_SYSTEM_APPLICATION, + IA2_ROLE_FRAME, + eNoNameRule) + +ROLE(GLASS_PANE, + "glass pane", + ATK_ROLE_GLASS_PANE, + NSAccessibilityGroupRole, + USE_ROLE_STRING, + IA2_ROLE_GLASS_PANE, + eNoNameRule) + +ROLE(HTML_CONTAINER, + "html container", + ATK_ROLE_HTML_CONTAINER, + NSAccessibilityUnknownRole, + USE_ROLE_STRING, + IA2_ROLE_UNKNOWN, + eNameFromSubtreeIfReqRule) + +ROLE(ICON, + "icon", + ATK_ROLE_ICON, + NSAccessibilityImageRole, + ROLE_SYSTEM_PUSHBUTTON, + IA2_ROLE_ICON, + eNoNameRule) + +ROLE(LABEL, + "label", + ATK_ROLE_LABEL, + NSAccessibilityGroupRole, + ROLE_SYSTEM_STATICTEXT, + IA2_ROLE_LABEL, + eNameFromSubtreeRule) + +ROLE(LAYERED_PANE, + "layered pane", + ATK_ROLE_LAYERED_PANE, + NSAccessibilityGroupRole, + USE_ROLE_STRING, + IA2_ROLE_LAYERED_PANE, + eNoNameRule) + +ROLE(OPTION_PANE, + "option pane", + ATK_ROLE_OPTION_PANE, + NSAccessibilityGroupRole, + USE_ROLE_STRING, + IA2_ROLE_OPTION_PANE, + eNoNameRule) + +ROLE(PASSWORD_TEXT, + "password text", + ATK_ROLE_PASSWORD_TEXT, + NSAccessibilityTextFieldRole, + ROLE_SYSTEM_TEXT, + ROLE_SYSTEM_TEXT, + eNoNameRule) + +ROLE(POPUP_MENU, + "popup menu", + ATK_ROLE_POPUP_MENU, + NSAccessibilityUnknownRole, //Unused + ROLE_SYSTEM_MENUPOPUP, + ROLE_SYSTEM_MENUPOPUP, + eNoNameRule) + +ROLE(RADIO_MENU_ITEM, + "radio menu item", + ATK_ROLE_RADIO_MENU_ITEM, + NSAccessibilityMenuItemRole, + ROLE_SYSTEM_MENUITEM, + IA2_ROLE_RADIO_MENU_ITEM, + eNameFromSubtreeRule) + +ROLE(ROOT_PANE, + "root pane", + ATK_ROLE_ROOT_PANE, + NSAccessibilityGroupRole, + USE_ROLE_STRING, + IA2_ROLE_ROOT_PANE, + eNoNameRule) + +ROLE(SCROLL_PANE, + "scroll pane", + ATK_ROLE_SCROLL_PANE, + NSAccessibilityScrollAreaRole, + USE_ROLE_STRING, + IA2_ROLE_SCROLL_PANE, + eNoNameRule) + +ROLE(SPLIT_PANE, + "split pane", + ATK_ROLE_SPLIT_PANE, + NSAccessibilitySplitGroupRole, + USE_ROLE_STRING, + IA2_ROLE_SPLIT_PANE, + eNoNameRule) + +ROLE(TABLE_COLUMN_HEADER, + "table column header", + ATK_ROLE_TABLE_COLUMN_HEADER, + NSAccessibilityUnknownRole, + ROLE_SYSTEM_COLUMNHEADER, + ROLE_SYSTEM_COLUMNHEADER, + eNameFromSubtreeRule) + +ROLE(TABLE_ROW_HEADER, + "table row header", + ATK_ROLE_TABLE_ROW_HEADER, + NSAccessibilityUnknownRole, + ROLE_SYSTEM_ROWHEADER, + ROLE_SYSTEM_ROWHEADER, + eNameFromSubtreeRule) + +ROLE(TEAR_OFF_MENU_ITEM, + "tear off menu item", + ATK_ROLE_TEAR_OFF_MENU_ITEM, + NSAccessibilityMenuItemRole, + ROLE_SYSTEM_MENUITEM, + IA2_ROLE_TEAR_OFF_MENU, + eNameFromSubtreeRule) + +ROLE(TERMINAL, + "terminal", + ATK_ROLE_TERMINAL, + NSAccessibilityUnknownRole, + USE_ROLE_STRING, + IA2_ROLE_TERMINAL, + eNoNameRule) + +ROLE(TEXT_CONTAINER, + "text container", + ATK_ROLE_SECTION, + NSAccessibilityGroupRole, + USE_ROLE_STRING, + IA2_ROLE_TEXT_FRAME, + eNameFromSubtreeIfReqRule) + +ROLE(TOGGLE_BUTTON, + "toggle button", + ATK_ROLE_TOGGLE_BUTTON, + NSAccessibilityButtonRole, + ROLE_SYSTEM_PUSHBUTTON, + IA2_ROLE_TOGGLE_BUTTON, + eNameFromSubtreeRule) + +ROLE(TREE_TABLE, + "tree table", + ATK_ROLE_TREE_TABLE, + NSAccessibilityTableRole, + ROLE_SYSTEM_OUTLINE, + ROLE_SYSTEM_OUTLINE, + eNoNameRule) + +ROLE(VIEWPORT, + "viewport", + ATK_ROLE_VIEWPORT, + NSAccessibilityUnknownRole, + ROLE_SYSTEM_PANE, + IA2_ROLE_VIEW_PORT, + eNoNameRule) + +ROLE(HEADER, + "header", + ATK_ROLE_HEADER, + NSAccessibilityGroupRole, + USE_ROLE_STRING, + IA2_ROLE_HEADER, + eNoNameRule) + +ROLE(FOOTER, + "footer", + ATK_ROLE_FOOTER, + NSAccessibilityGroupRole, + USE_ROLE_STRING, + IA2_ROLE_FOOTER, + eNoNameRule) + +ROLE(PARAGRAPH, + "paragraph", + ATK_ROLE_PARAGRAPH, + NSAccessibilityGroupRole, + USE_ROLE_STRING, + IA2_ROLE_PARAGRAPH, + eNameFromSubtreeIfReqRule) + +ROLE(RULER, + "ruler", + ATK_ROLE_RULER, + @"AXRuler", //10.4+ only, so we re-define the constant. + USE_ROLE_STRING, + IA2_ROLE_RULER, + eNoNameRule) + +ROLE(AUTOCOMPLETE, + "autocomplete", + ATK_ROLE_AUTOCOMPLETE, + NSAccessibilityUnknownRole, + ROLE_SYSTEM_COMBOBOX, + ROLE_SYSTEM_COMBOBOX, + eNoNameRule) + +ROLE(EDITBAR, + "editbar", + ATK_ROLE_EDITBAR, + NSAccessibilityTextFieldRole, + ROLE_SYSTEM_TEXT, + IA2_ROLE_EDITBAR, + eNoNameRule) + +ROLE(ENTRY, + "entry", + ATK_ROLE_ENTRY, + NSAccessibilityTextFieldRole, + ROLE_SYSTEM_TEXT, + ROLE_SYSTEM_TEXT, + eNameFromValueRule) + +ROLE(CAPTION, + "caption", + ATK_ROLE_CAPTION, + NSAccessibilityStaticTextRole, + USE_ROLE_STRING, + IA2_ROLE_CAPTION, + eNameFromSubtreeIfReqRule) + +ROLE(DOCUMENT_FRAME, + "document frame", + ATK_ROLE_DOCUMENT_FRAME, + NSAccessibilityScrollAreaRole, + USE_ROLE_STRING, + IA2_ROLE_UNKNOWN, + eNoNameRule) + +ROLE(HEADING, + "heading", + ATK_ROLE_HEADING, + @"AXHeading", + USE_ROLE_STRING, + IA2_ROLE_HEADING, + eNameFromSubtreeIfReqRule) + +ROLE(PAGE, + "page", + ATK_ROLE_PAGE, + NSAccessibilityGroupRole, + USE_ROLE_STRING, + IA2_ROLE_PAGE, + eNoNameRule) + +ROLE(SECTION, + "section", + ATK_ROLE_SECTION, + NSAccessibilityGroupRole, + USE_ROLE_STRING, + IA2_ROLE_SECTION, + eNameFromSubtreeIfReqRule) + +ROLE(REDUNDANT_OBJECT, + "redundant object", + ATK_ROLE_REDUNDANT_OBJECT, + NSAccessibilityUnknownRole, + USE_ROLE_STRING, + IA2_ROLE_REDUNDANT_OBJECT, + eNoNameRule) + +ROLE(FORM, + "form", + ATK_ROLE_FORM, + NSAccessibilityGroupRole, + USE_ROLE_STRING, + IA2_ROLE_FORM, + eNoNameRule) + +ROLE(IME, + "ime", + ATK_ROLE_INPUT_METHOD_WINDOW, + NSAccessibilityUnknownRole, + USE_ROLE_STRING, + IA2_ROLE_INPUT_METHOD_WINDOW, + eNoNameRule) + +ROLE(APP_ROOT, + "app root", + ATK_ROLE_APPLICATION, + NSAccessibilityUnknownRole, //Unused on OS X + ROLE_SYSTEM_APPLICATION, + ROLE_SYSTEM_APPLICATION, + eNoNameRule) + +ROLE(PARENT_MENUITEM, + "parent menuitem", + ATK_ROLE_MENU, + NSAccessibilityMenuItemRole, + ROLE_SYSTEM_MENUITEM, + ROLE_SYSTEM_MENUITEM, + eNameFromSubtreeRule) + +ROLE(CALENDAR, + "calendar", + ATK_ROLE_CALENDAR, + NSAccessibilityGroupRole, + ROLE_SYSTEM_CLIENT, + ROLE_SYSTEM_CLIENT, + eNoNameRule) + +ROLE(COMBOBOX_LIST, + "combobox list", + ATK_ROLE_MENU, + NSAccessibilityMenuRole, + ROLE_SYSTEM_LIST, + ROLE_SYSTEM_LIST, + eNoNameRule) + +ROLE(COMBOBOX_OPTION, + "combobox option", + ATK_ROLE_MENU_ITEM, + NSAccessibilityMenuItemRole, + ROLE_SYSTEM_LISTITEM, + ROLE_SYSTEM_LISTITEM, + eNameFromSubtreeRule) + +ROLE(IMAGE_MAP, + "image map", + ATK_ROLE_IMAGE, + NSAccessibilityUnknownRole, + ROLE_SYSTEM_GRAPHIC, + ROLE_SYSTEM_GRAPHIC, + eNoNameRule) + +ROLE(OPTION, + "listbox option", + ATK_ROLE_LIST_ITEM, + NSAccessibilityStaticTextRole, + ROLE_SYSTEM_LISTITEM, + ROLE_SYSTEM_LISTITEM, + eNameFromSubtreeRule) + +ROLE(RICH_OPTION, + "listbox rich option", + ATK_ROLE_LIST_ITEM, + NSAccessibilityRowRole, + ROLE_SYSTEM_LISTITEM, + ROLE_SYSTEM_LISTITEM, + eNameFromSubtreeRule) + +ROLE(LISTBOX, + "listbox", + ATK_ROLE_LIST_BOX, + NSAccessibilityListRole, + ROLE_SYSTEM_LIST, + ROLE_SYSTEM_LIST, + eNoNameRule) + +ROLE(FLAT_EQUATION, + "flat equation", + ATK_ROLE_UNKNOWN, + NSAccessibilityUnknownRole, + ROLE_SYSTEM_EQUATION, + ROLE_SYSTEM_EQUATION, + eNoNameRule) + +ROLE(GRID_CELL, + "gridcell", + ATK_ROLE_TABLE_CELL, + NSAccessibilityGroupRole, + ROLE_SYSTEM_CELL, + ROLE_SYSTEM_CELL, + eNameFromSubtreeRule) + +ROLE(EMBEDDED_OBJECT, + "embedded object", + ATK_ROLE_PANEL, + NSAccessibilityGroupRole, + USE_ROLE_STRING, + IA2_ROLE_EMBEDDED_OBJECT, + eNoNameRule) + +ROLE(NOTE, + "note", + ATK_ROLE_SECTION, + NSAccessibilityGroupRole, + USE_ROLE_STRING, + IA2_ROLE_NOTE, + eNameFromSubtreeIfReqRule) + +ROLE(FIGURE, + "figure", + ATK_ROLE_PANEL, + NSAccessibilityGroupRole, + ROLE_SYSTEM_GROUPING, + ROLE_SYSTEM_GROUPING, + eNoNameRule) + +ROLE(CHECK_RICH_OPTION, + "check rich option", + ATK_ROLE_CHECK_BOX, + NSAccessibilityCheckBoxRole, + ROLE_SYSTEM_CHECKBUTTON, + ROLE_SYSTEM_CHECKBUTTON, + eNameFromSubtreeRule) + +ROLE(DEFINITION_LIST, + "definitionlist", + ATK_ROLE_LIST, + NSAccessibilityListRole, + ROLE_SYSTEM_LIST, + ROLE_SYSTEM_LIST, + eNameFromSubtreeIfReqRule) + +ROLE(TERM, + "term", + ATK_ROLE_LIST_ITEM, + NSAccessibilityGroupRole, + ROLE_SYSTEM_LISTITEM, + ROLE_SYSTEM_LISTITEM, + eNameFromSubtreeRule) + +ROLE(DEFINITION, + "definition", + ATK_ROLE_PARAGRAPH, + NSAccessibilityGroupRole, + USE_ROLE_STRING, + IA2_ROLE_PARAGRAPH, + eNameFromSubtreeRule) + +ROLE(KEY, + "key", + ATK_ROLE_PUSH_BUTTON, + NSAccessibilityButtonRole, + ROLE_SYSTEM_PUSHBUTTON, + ROLE_SYSTEM_PUSHBUTTON, + eNameFromSubtreeRule) + +ROLE(SWITCH, + "switch", + ATK_ROLE_TOGGLE_BUTTON, + NSAccessibilityCheckBoxRole, + ROLE_SYSTEM_CHECKBUTTON, + IA2_ROLE_TOGGLE_BUTTON, + eNameFromSubtreeRule) + +ROLE(MATHML_MATH, + "math", + ATK_ROLE_MATH, + NSAccessibilityGroupRole, + ROLE_SYSTEM_EQUATION, + ROLE_SYSTEM_EQUATION, + eNoNameRule) + +ROLE(MATHML_IDENTIFIER, + "mathml identifier", + ATK_ROLE_STATIC, + NSAccessibilityGroupRole, + 0, + IA2_ROLE_UNKNOWN, + eNameFromSubtreeRule) + +ROLE(MATHML_NUMBER, + "mathml number", + ATK_ROLE_STATIC, + NSAccessibilityGroupRole, + 0, + IA2_ROLE_UNKNOWN, + eNameFromSubtreeRule) + +ROLE(MATHML_OPERATOR, + "mathml operator", + ATK_ROLE_STATIC, + NSAccessibilityGroupRole, + 0, + IA2_ROLE_UNKNOWN, + eNameFromSubtreeRule) + +ROLE(MATHML_TEXT, + "mathml text", + ATK_ROLE_STATIC, + NSAccessibilityGroupRole, + 0, + IA2_ROLE_UNKNOWN, + eNameFromSubtreeRule) + +ROLE(MATHML_STRING_LITERAL, + "mathml string literal", + ATK_ROLE_STATIC, + NSAccessibilityGroupRole, + 0, + IA2_ROLE_UNKNOWN, + eNameFromSubtreeRule) + +ROLE(MATHML_GLYPH, + "mathml glyph", + ATK_ROLE_IMAGE, + NSAccessibilityGroupRole, + 0, + IA2_ROLE_UNKNOWN, + eNameFromSubtreeRule) + +ROLE(MATHML_ROW, + "mathml row", + ATK_ROLE_SECTION, + NSAccessibilityGroupRole, + 0, + IA2_ROLE_UNKNOWN, + eNoNameRule) + +ROLE(MATHML_FRACTION, + "mathml fraction", + ATK_ROLE_MATH_FRACTION, + NSAccessibilityGroupRole, + 0, + IA2_ROLE_UNKNOWN, + eNoNameRule) + +ROLE(MATHML_SQUARE_ROOT, + "mathml square root", + ATK_ROLE_MATH_ROOT, + NSAccessibilityGroupRole, + 0, + IA2_ROLE_UNKNOWN, + eNoNameRule) + +ROLE(MATHML_ROOT, + "mathml root", + ATK_ROLE_MATH_ROOT, + NSAccessibilityGroupRole, + 0, + IA2_ROLE_UNKNOWN, + eNoNameRule) + +ROLE(MATHML_FENCED, + "mathml fenced", + ATK_ROLE_SECTION, + NSAccessibilityGroupRole, + 0, + IA2_ROLE_UNKNOWN, + eNoNameRule) + +ROLE(MATHML_ENCLOSED, + "mathml enclosed", + ATK_ROLE_SECTION, + NSAccessibilityGroupRole, + 0, + IA2_ROLE_UNKNOWN, + eNoNameRule) + +ROLE(MATHML_STYLE, + "mathml style", + ATK_ROLE_SECTION, + NSAccessibilityGroupRole, + 0, + IA2_ROLE_UNKNOWN, + eNoNameRule) + +ROLE(MATHML_SUB, + "mathml sub", + ATK_ROLE_SECTION, + NSAccessibilityGroupRole, + 0, + IA2_ROLE_UNKNOWN, + eNoNameRule) + +ROLE(MATHML_SUP, + "mathml sup", + ATK_ROLE_SECTION, + NSAccessibilityGroupRole, + 0, + IA2_ROLE_UNKNOWN, + eNoNameRule) + +ROLE(MATHML_SUB_SUP, + "mathml sub sup", + ATK_ROLE_SECTION, + NSAccessibilityGroupRole, + 0, + IA2_ROLE_UNKNOWN, + eNoNameRule) + +ROLE(MATHML_UNDER, + "mathml under", + ATK_ROLE_SECTION, + NSAccessibilityGroupRole, + 0, + IA2_ROLE_UNKNOWN, + eNoNameRule) + +ROLE(MATHML_OVER, + "mathml over", + ATK_ROLE_SECTION, + NSAccessibilityGroupRole, + 0, + IA2_ROLE_UNKNOWN, + eNoNameRule) + +ROLE(MATHML_UNDER_OVER, + "mathml under over", + ATK_ROLE_SECTION, + NSAccessibilityGroupRole, + 0, + IA2_ROLE_UNKNOWN, + eNoNameRule) + +ROLE(MATHML_MULTISCRIPTS, + "mathml multiscripts", + ATK_ROLE_SECTION, + NSAccessibilityGroupRole, + 0, + IA2_ROLE_UNKNOWN, + eNoNameRule) + +ROLE(MATHML_TABLE, + "mathml table", + ATK_ROLE_TABLE, + NSAccessibilityGroupRole, + 0, + IA2_ROLE_UNKNOWN, + eNoNameRule) + +ROLE(MATHML_LABELED_ROW, + "mathml labeled row", + ATK_ROLE_TABLE_ROW, + NSAccessibilityGroupRole, + 0, + IA2_ROLE_UNKNOWN, + eNoNameRule) + +ROLE(MATHML_TABLE_ROW, + "mathml table row", + ATK_ROLE_TABLE_ROW, + NSAccessibilityGroupRole, + 0, + IA2_ROLE_UNKNOWN, + eNoNameRule) + +ROLE(MATHML_CELL, + "mathml cell", + ATK_ROLE_TABLE_CELL, + NSAccessibilityGroupRole, + 0, + IA2_ROLE_UNKNOWN, + eNoNameRule) + +ROLE(MATHML_ACTION, + "mathml action", + ATK_ROLE_SECTION, + NSAccessibilityGroupRole, + 0, + IA2_ROLE_UNKNOWN, + eNoNameRule) + +ROLE(MATHML_ERROR, + "mathml error", + ATK_ROLE_SECTION, + NSAccessibilityGroupRole, + 0, + IA2_ROLE_UNKNOWN, + eNoNameRule) + +ROLE(MATHML_STACK, + "mathml stack", + ATK_ROLE_UNKNOWN, + NSAccessibilityGroupRole, + 0, + IA2_ROLE_UNKNOWN, + eNoNameRule) + +ROLE(MATHML_LONG_DIVISION, + "mathml long division", + ATK_ROLE_UNKNOWN, + NSAccessibilityGroupRole, + 0, + IA2_ROLE_UNKNOWN, + eNoNameRule) + +ROLE(MATHML_STACK_GROUP, + "mathml stack group", + ATK_ROLE_UNKNOWN, + NSAccessibilityGroupRole, + 0, + IA2_ROLE_UNKNOWN, + eNoNameRule) + +ROLE(MATHML_STACK_ROW, + "mathml stack row", + ATK_ROLE_UNKNOWN, + NSAccessibilityGroupRole, + 0, + IA2_ROLE_UNKNOWN, + eNoNameRule) + +ROLE(MATHML_STACK_CARRIES, + "mathml stack carries", + ATK_ROLE_UNKNOWN, + NSAccessibilityGroupRole, + 0, + IA2_ROLE_UNKNOWN, + eNoNameRule) + +ROLE(MATHML_STACK_CARRY, + "mathml stack carry", + ATK_ROLE_UNKNOWN, + NSAccessibilityGroupRole, + 0, + IA2_ROLE_UNKNOWN, + eNoNameRule) + +ROLE(MATHML_STACK_LINE, + "mathml stack line", + ATK_ROLE_UNKNOWN, + NSAccessibilityGroupRole, + 0, + IA2_ROLE_UNKNOWN, + eNoNameRule) + +ROLE(RADIO_GROUP, + "grouping", + ATK_ROLE_PANEL, + NSAccessibilityRadioGroupRole, + ROLE_SYSTEM_GROUPING, + ROLE_SYSTEM_GROUPING, + eNoNameRule) + +ROLE(TEXT, + "text", + ATK_ROLE_STATIC, + NSAccessibilityGroupRole, + USE_ROLE_STRING, + IA2_ROLE_TEXT_FRAME, + eNameFromSubtreeIfReqRule) + +ROLE(DETAILS, + "details", + ATK_ROLE_PANEL, + NSAccessibilityGroupRole, + ROLE_SYSTEM_GROUPING, + ROLE_SYSTEM_GROUPING, + eNoNameRule) + +ROLE(SUMMARY, + "summary", + ATK_ROLE_PUSH_BUTTON, + NSAccessibilityGroupRole, + ROLE_SYSTEM_PUSHBUTTON, + ROLE_SYSTEM_PUSHBUTTON, + eNameFromSubtreeRule) + |