Accessibility/Comparisons:Roles: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
(tbd)
Line 54: Line 54:
APPLICATION
APPLICATION
</td>
</td>
<td>
<td> [OK]
[http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_2.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_8 Application]
[http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_2.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_8 Application]
</td>
</td>
Line 68: Line 68:
add custom role
add custom role
</td>
</td>
<td>
<td>[OK]
MenuButton
MenuButton
</td>
</td>
Line 110: Line 110:
CHECK_BOX, CHECK_MENU_ITEM, TOGGLE_BUTTON
CHECK_BOX, CHECK_MENU_ITEM, TOGGLE_BUTTON
</td>
</td>
<td class="OK">
<td class="OK">[OK]
[http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_10.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_15 CheckBox]
[http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_10.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_15 CheckBox]
</td>
</td>
Line 124: Line 124:
don't use
don't use
</td>
</td>
<td class="OK">
<td class="OK">[OK]
Column
Column
</td>
</td>
Line 138: Line 138:
TABLE_COLUMN_HEADER, COLUMN_HEADER
TABLE_COLUMN_HEADER, COLUMN_HEADER
</td>
</td>
<td>
<td>[OK]
Get the NSAccessibilityHeaderAttribute on a&nbsp;[http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_14.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_19 Table]
Get the NSAccessibilityHeaderAttribute on a&nbsp;[http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_14.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_19 Table]
</td>
</td>
Line 152: Line 152:
COMBO_BOX
COMBO_BOX
</td>
</td>
<td>
<td>[OK]
ComboBox
ComboBox
</td>
</td>
Line 159: Line 159:
</td>
</td>
</tr>
</tr>
<tr>
<tr class="OK">
<td>
<td>
DIAGRAM
DIAGRAM
Line 166: Line 166:
IMAGE, DRAWING_AREA, or add custom role
IMAGE, DRAWING_AREA, or add custom role
</td>
</td>
<td>
<td>[OK]
[http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_7.html#//apple_ref/doc/uid/TPhttp://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_7.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_1340001078-CH211-DontLinkElementID_13 Image]?
[http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_7.html#//apple_ref/doc/uid/TPhttp://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_7.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_1340001078-CH211-DontLinkElementID_13 Image]?
</td>
</td>
Line 180: Line 180:
DIALOG, COLOR_CHOOSER, FILE_CHOOSER
DIALOG, COLOR_CHOOSER, FILE_CHOOSER
</td>
</td>
<td>
<td>[OK]
[http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_3.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_9 Window] with dialog subrole (sometimes Sheet)
[http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_3.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_9 Window] with dialog subrole (sometimes Sheet)
</td>
</td>
Line 194: Line 194:
HTML_CONTAINER or DOCUMENT_FRAME (proposed)
HTML_CONTAINER or DOCUMENT_FRAME (proposed)
</td>
</td>
<td>
<td>[OK]
Use custom role WebArea like Safari for the actual web browser view? Window for the actual window.
Use custom role WebArea like Safari for the actual web browser view? Window for the actual window.
</td>
</td>
Line 208: Line 208:
add custom role or COMBO_BOX
add custom role or COMBO_BOX
</td>
</td>
<td>
<td>[OK]
[http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_23.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_28 ComboBox]?&nbsp;
[http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_23.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_28 ComboBox]?&nbsp;
</td>
</td>
Line 236: Line 236:
IMAGE, DESKTOP_ICON
IMAGE, DESKTOP_ICON
</td>
</td>
<td>
<td>[OK]
[http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_7.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_13 Image]
[http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_7.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_13 Image]
</td>
</td>
Line 250: Line 250:
add custom role
add custom role
</td>
</td>
<td>
<td>[OK]
[http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_39.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_42 SplitterBar]
[http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_39.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_42 SplitterBar]
</td>
</td>
Line 264: Line 264:
PANEL, PAGE (proposed), SECTION (proposed)
PANEL, PAGE (proposed), SECTION (proposed)
</td>
</td>
<td>
<td>[OK]
Group
Group
</td>
</td>
Line 278: Line 278:
add custom role
add custom role
</td>
</td>
<td>
<td>[OK]
[http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_8.html#//apple_ref/doc/uid/TP40001078-CH211-CACDEHBG Button] with DescriptionAttribute="Help"
[http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_8.html#//apple_ref/doc/uid/TP40001078-CH211-CACDEHBG Button] with DescriptionAttribute="Help"
</td>
</td>
Line 292: Line 292:
LINK (proposed)
LINK (proposed)
</td>
</td>
<td>
<td>[OK]
[http://developer.apple.com/documentation/Cocoa/Reference/ApplicationKit/ObjC_classic/Protocols/NSAccessibility.html#//apple_ref/doc/c_ref/NSAccessibilityMarkerTypeAttribute TextLink]<span class="content_text">
[http://developer.apple.com/documentation/Cocoa/Reference/ApplicationKit/ObjC_classic/Protocols/NSAccessibility.html#//apple_ref/doc/c_ref/NSAccessibilityMarkerTypeAttribute TextLink]<span class="content_text">
<code>
<code>
Line 309: Line 309:
LIST, FONT_CHOOSER
LIST, FONT_CHOOSER
</td>
</td>
<td>
<td>[OK]
[http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_21.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_26 List]
[http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_21.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_26 List]
</td>
</td>
Line 323: Line 323:
LISTITEM
LISTITEM
</td>
</td>
<td>
<td>[OK]
[http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_17.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_22 Row]?
[http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_17.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_22 Row]?
</td>
</td>
Line 337: Line 337:
MENU_BAR
MENU_BAR
</td>
</td>
<td>
<td>[OK]
[http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_34.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_37 MenuBar]
[http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_34.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_37 MenuBar]
</td>
</td>
Line 351: Line 351:
MENU_ITEM, RADIO_MENU_ITEM, CHECK_MENU_ITEM
MENU_ITEM, RADIO_MENU_ITEM, CHECK_MENU_ITEM
</td>
</td>
<td>
<td>[OK]
[http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_37.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_40 MenuItem], [http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_35.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_38 MenuBarItem]
[http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_37.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_40 MenuItem], [http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_35.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_38 MenuBarItem]
</td>
</td>
Line 365: Line 365:
MENU, POPUP_MENU, TEAROFF_MENU_ITEM
MENU, POPUP_MENU, TEAROFF_MENU_ITEM
</td>
</td>
<td>
<td>[OK]
Menu, [http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_12.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_17 MenuButton] (button with icon that pops up a menu when clicked) or [http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_11.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_16 PopupButton] (regular popupmenu showing the current choice)
Menu, [http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_12.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_17 MenuButton] (button with icon that pops up a menu when clicked) or [http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_11.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_16 PopupButton] (regular popupmenu showing the current choice)
</td>
</td>
Line 379: Line 379:
TREE, TREE_TABLE
TREE, TREE_TABLE
</td>
</td>
<td class="OK">
<td class="OK">[OK]
[http://developer.apple.com/documentation/Cocoa/Reference/ApplicationKit/ObjC_classic/Protocols/NSAccessibility.html#//apple_ref/doc/c_ref/NSAccessibilityMarkerTypeAttribute Outline]
[http://developer.apple.com/documentation/Cocoa/Reference/ApplicationKit/ObjC_classic/Protocols/NSAccessibility.html#//apple_ref/doc/c_ref/NSAccessibilityMarkerTypeAttribute Outline]
</td>
</td>
Line 393: Line 393:
use custom role
use custom role
</td>
</td>
<td class="OK">
<td class="OK">[OK]
Row and subrole OutlineRow
Row and subrole OutlineRow
</td>
</td>
Line 407: Line 407:
PAGE_TAB
PAGE_TAB
</td>
</td>
<td>Use TabGroup and friends. We'll try to do this similarly to how XUL structures tabboxes, but since that will be different from how [http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_13.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_18 TabGroup]s normally are represented in UA, we'll need to make sure VoiceOver and everything still works.
<td>[OK] Use TabGroup and friends. We'll try to do this similarly to how XUL structures tabboxes, but since that will be different from how [http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_13.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_18 TabGroup]s normally are represented in UA, we'll need to make sure VoiceOver and everything still works.
</td>
</td>
<td>
<td>
Line 420: Line 420:
PAGE_TAB_LIST
PAGE_TAB_LIST
</td>
</td>
<td>
<td>[OK]
See TabGroup above.
See TabGroup above.
</td>
</td>
Line 434: Line 434:
FRAME, INTERNAL_FRAME, GLASS_PANE, LAYERED_PANE, OPTION_PANE, SCROLL_PANE, DIRECTORY_PANE, DESKTOP_FRAME, ROOT_PANE, SPLIT_PANE, VIEWPORT
FRAME, INTERNAL_FRAME, GLASS_PANE, LAYERED_PANE, OPTION_PANE, SCROLL_PANE, DIRECTORY_PANE, DESKTOP_FRAME, ROOT_PANE, SPLIT_PANE, VIEWPORT
</td>
</td>
<td>
<td>[OK]
[http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_3.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_9 Window]&nbsp;(subroles StandardWindow), ScrollArea, SplitGroup (two adjacent "views" with a splitter bar), Browser (horizontal tree-like view often used for nagivating in the filesystem)
[http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_3.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_9 Window]&nbsp;(subroles StandardWindow), ScrollArea, SplitGroup (two adjacent "views" with a splitter bar), Browser (horizontal tree-like view often used for nagivating in the filesystem)
</td>
</td>
Line 448: Line 448:
PROGRESS_BAR
PROGRESS_BAR
</td>
</td>
<td>
<td>[OK]
[http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_27.html#//apple_ref/doc/uid/TP40001078-CH211-CACIAHEA ProgressIndicator]
[http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_27.html#//apple_ref/doc/uid/TP40001078-CH211-CACIAHEA ProgressIndicator]
</td>
</td>
Line 462: Line 462:
PAGE (proposed) or add custom role
PAGE (proposed) or add custom role
</td>
</td>
<td>
<td>[OK]
Group with DescriptionAttribute describing special purpose?
Group with DescriptionAttribute describing special purpose?
</td>
</td>
Line 476: Line 476:
PUSH_BUTTON, TOGGLE_BUTTON
PUSH_BUTTON, TOGGLE_BUTTON
</td>
</td>
<td>
<td>[OK]
[http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_8.html#//apple_ref/doc/uid/TP40001078-CH211-CACDEHBG Button] (see also subrole ToolbarButton)
[http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_8.html#//apple_ref/doc/uid/TP40001078-CH211-CACDEHBG Button] (see also subrole ToolbarButton)
</td>
</td>
Line 490: Line 490:
RADIO_BUTTON, RADIO_MENU_ITEM
RADIO_BUTTON, RADIO_MENU_ITEM
</td>
</td>
<td>
<td>[OK]
[http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_9.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_14 RadioButton] (grouped together using [http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_20.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_25 RadioGroup])
[http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_9.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_14 RadioButton] (grouped together using [http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_20.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_25 RadioGroup])
</td>
</td>
Line 504: Line 504:
add custom control
add custom control
</td>
</td>
<td>
<td>[OK]
[http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_17.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_22 Row] (see subroles OutlineRow, TableRow)
[http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_17.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_22 Row] (see subroles OutlineRow, TableRow)
</td>
</td>
Line 518: Line 518:
ROW_HEADER, TABLE_ROW_HEADER
ROW_HEADER, TABLE_ROW_HEADER
</td>
</td>
<td class="OK">
<td class="OK">[OK]
Header attribute of a table/outliner/browser.
Header attribute of a table/outliner/browser.
</td>
</td>
Line 532: Line 532:
SCROLL_BAR
SCROLL_BAR
</td>
</td>
<td class="OK">
<td class="OK">[OK]
[http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_19.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_24 ScrollBar], see children [http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/index.html?http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXModel/chapter_4_section_3.html#//apple_ref/doc/uid/TP40001078-CH208-BEICBEEG ValueIndicator] (the draggable thumb), and arrows:&nbsp;IncrementPage, DecrementPage subroles
[http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_19.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_24 ScrollBar], see children [http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/index.html?http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXModel/chapter_4_section_3.html#//apple_ref/doc/uid/TP40001078-CH208-BEICBEEG ValueIndicator] (the draggable thumb), and arrows:&nbsp;IncrementPage, DecrementPage subroles
</td>
</td>
Line 560: Line 560:
SLIDER
SLIDER
</td>
</td>
<td>
<td>[OK]
[http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_24.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_29 Slider]
[http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_24.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_29 Slider]
</td>
</td>
Line 574: Line 574:
SPIN_BUTTON
SPIN_BUTTON
</td>
</td>
<td>
<td>[OK]
Incrementor ("Stepper"), (Increment/Decrement subroles).
Incrementor ("Stepper"), (Increment/Decrement subroles).
</td>
</td>
Line 588: Line 588:
LABEL, ACCELERATOR_LABEL
LABEL, ACCELERATOR_LABEL
</td>
</td>
<td>
<td>[OK]
[http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_33.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_36 StaticText]
[http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_33.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_36 StaticText]
</td>
</td>
Line 602: Line 602:
STATUS_BAR
STATUS_BAR
</td>
</td>
<td>
<td>[OK]
Represented as its individual parts; the status text is text, the progressbar is a ProgressBar, etc.
Represented as its individual parts; the status text is text, the progressbar is a ProgressBar, etc.
</td>
</td>
Line 616: Line 616:
TABLE, CALENDAR, TREE_TABLE
TABLE, CALENDAR, TREE_TABLE
</td>
</td>
<td>
<td>[OK]
[http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_14.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_19 Table]
[http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_14.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_19 Table]
</td>
</td>
Line 630: Line 630:
TEXT, DATE_EDITOR, PASSWORD_TEXT, AUTOCOMPLETE, ENTRY (proposed), PARAGRAPH, HEADING (proposed), HEADER, FOOTER, CAPTION (proposed)
TEXT, DATE_EDITOR, PASSWORD_TEXT, AUTOCOMPLETE, ENTRY (proposed), PARAGRAPH, HEADING (proposed), HEADER, FOOTER, CAPTION (proposed)
</td>
</td>
<td>
<td>[OK]
StaticText, [http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_31.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_34 TextField], [http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_32.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_35 TextArea] are the actual text widgets. See various text attributes for describing text content. There's also SecureTextField for password boxes.
StaticText, [http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_31.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_34 TextField], [http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_32.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_35 TextArea] are the actual text widgets. See various text attributes for describing text content. There's also SecureTextField for password boxes.
</td>
</td>
Line 644: Line 644:
add custom role
add custom role
</td>
</td>
<td>
<td>[OK]
title attribute of [http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_3.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_9 Window] role
title attribute of [http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_3.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_9 Window] role
</td>
</td>
Line 658: Line 658:
TOOL_BAR
TOOL_BAR
</td>
</td>
<td>
<td>[OK]
[http://developer.apple.com/documentation/Cocoa/Reference/ApplicationKit/ObjC_classic/Protocols/NSAccessibility.html#//apple_ref/occ/instm/NSObject/accessibilityParameterizedAttributeNames Toolbar] (see also toolbar button subrole of [http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_8.html#//apple_ref/doc/uid/TP40001078-CH211-CACDEHBG Button])
[http://developer.apple.com/documentation/Cocoa/Reference/ApplicationKit/ObjC_classic/Protocols/NSAccessibility.html#//apple_ref/occ/instm/NSObject/accessibilityParameterizedAttributeNames Toolbar] (see also toolbar button subrole of [http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_8.html#//apple_ref/doc/uid/TP40001078-CH211-CACDEHBG Button])
</td>
</td>
Line 672: Line 672:
TOOL_TIP
TOOL_TIP
</td>
</td>
<td>
<td>[OK]
[http://developer.apple.com/documentation/Cocoa/Reference/ApplicationKit/ObjC_classic/Protocols/NSAccessibility.html#//apple_ref/occ/instm/NSObject/accessibilityParameterizedAttributeNames HelpTag] (same as "Help Balloon")
[http://developer.apple.com/documentation/Cocoa/Reference/ApplicationKit/ObjC_classic/Protocols/NSAccessibility.html#//apple_ref/occ/instm/NSObject/accessibilityParameterizedAttributeNames HelpTag] (same as "Help Balloon")
</td>
</td>
Line 686: Line 686:
WINDOW
WINDOW
</td>
</td>
<td>
<td>[OK]
[http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_3.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_9 Window]
[http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_3.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_9 Window]
</td>
</td>
Line 699: Line 699:
RULER
RULER
</td>
</td>
<td>
<td>[OK]
[http://developer.apple.com/documentation/Cocoa/Reference/ApplicationKit/ObjC_classic/Protocols/NSAccessibility.html#//apple_ref/doc/c_ref/NSAccessibilityMarkerTypeAttribute Ruler], [http://developer.apple.com/documentation/Cocoa/Reference/ApplicationKit/ObjC_classic/Protocols/NSAccessibility.html#//apple_ref/doc/c_ref/NSAccessibilityMarkerTypeAttribute RulerMarker]
[http://developer.apple.com/documentation/Cocoa/Reference/ApplicationKit/ObjC_classic/Protocols/NSAccessibility.html#//apple_ref/doc/c_ref/NSAccessibilityMarkerTypeAttribute Ruler], [http://developer.apple.com/documentation/Cocoa/Reference/ApplicationKit/ObjC_classic/Protocols/NSAccessibility.html#//apple_ref/doc/c_ref/NSAccessibilityMarkerTypeAttribute RulerMarker]
</td>
</td>
Line 725: Line 725:
EDITBAR
EDITBAR
</td>
</td>
<td>
<td>[OK]
Basically same as textfield, or similar to whatever we'd do for an inline textfield in a table?
Basically same as textfield, or similar to whatever we'd do for an inline textfield in a table?
</td>
</td>
Line 751: Line 751:
INVALID
INVALID
</td>
</td>
<td>
<td>[OK]
Unknown
Unknown
</td>
</td>
Line 764: Line 764:
UNKNOWN
UNKNOWN
</td>
</td>
<td>
<td>[OK]
[http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_42.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_45 Unknown]
[http://developer.apple.com/documentation/Accessibility/Conceptual/AccessibilityMacOSX/OSXAXRoleReference/chapter_7_section_42.html#//apple_ref/doc/uid/TP40001078-CH211-DontLinkElementID_45 Unknown]
</td>
</td>

Revision as of 13:18, 26 May 2006

Accessibility Role Comparison

This is a comparison between the roles available in each architecture.

Mac comparison in process

Please note, the colors represent the level of compatibility UA has with the rest. This is an aid for the ongoing Mac Accessibility effort.

Please leave comments to the newsgroup. Thanks! --HakanW 12:24, 9 May 2006 (PDT)

Color legend

Color legend
UA seems compatible
UA probably compatible
Seems irrelevant?
Not yet done / Undecided (white).

Comparison Table

TBD

MSAA 1.3 Role (ROLE_SYSTEM_ *)

Closest ATK Role(s) (ATK_ROLE_*)

Closest UA Role (NSAccessibility*Role)

Description

ALERT

ALERT

TBD

An error, warning, or informational message

APPLICATION

APPLICATION

[OK]

Application

Toplevel accessible object of an application, which may contain frame objects or other accessible objects.

BUTTONMENU

add custom role

[OK]

MenuButton

Button that drops down a menu

CELL

TABLE_CELL

TBD

Cell in a table

CHART

CHART (proposed)

TBD

Graphical depiction of quantitative data

CHECKBUTTON

CHECK_BOX, CHECK_MENU_ITEM, TOGGLE_BUTTON

[OK]

CheckBox

Choice that can be checked or unchecked. A checkbox and check menu item have a separate indicator for the state. A toggle button is a specialized push button that does not have a separate indicator for the state.

COLUMN

don't use

[OK]

Column

Column of table cells.

COLUMNHEADER

TABLE_COLUMN_HEADER, COLUMN_HEADER

[OK]

Get the NSAccessibilityHeaderAttribute on a Table

Header which labels a column of data, or more specifically a column of data in a table.

COMBOBOX

COMBO_BOX

[OK]

ComboBox

Edit control with a drop-down list of selections

DIAGRAM

IMAGE, DRAWING_AREA, or add custom role

[OK]

Image?

Image is a generic graphic. Diagram is a specific type of a drawn graphic. Drawing area is used for creating custom user interface elements.

DIALOG

DIALOG, COLOR_CHOOSER, FILE_CHOOSER

[OK]

Window with dialog subrole (sometimes Sheet)

Top level window with a title bar and border. A file chooser is a specialized dialog that displays files in a directory and allows file selection, directory browsing, and filename specification. A color chooser is a specialized dialog for choosing a color.

DOCUMENT

HTML_CONTAINER or DOCUMENT_FRAME (proposed)

[OK]

Use custom role WebArea like Safari for the actual web browser view? Window for the actual window.

For MSAA, a document is a window that corresponds to MDI document. An HTML container or document frame is an HTML document or a frame containing a view of document content.

DROPLIST

add custom role or COMBO_BOX

[OK]

ComboBox

Drop down list but not a combo box

EQUATION

add custom role

TBD

Math and chemistry equations

GRAPHIC

IMAGE, DESKTOP_ICON

[OK]

Image

Graphic or an icon

GRIP

add custom role

[OK]

SplitterBar

Mouse pointer used for resizing windows.

GROUPING

PANEL, PAGE (proposed), SECTION (proposed)

[OK]

Group

Container used to group objects, like a group box or a FIELDSET in HTML. A page is defined for documents. A section is a generic container of content within a document, such as a navigation bar, table of contents, main content section, content between headings, etc.

HELPBALLOON

add custom role

[OK]

Button with DescriptionAttribute="Help"

Help icon to click on to get tooltip help

LINK

LINK (proposed)

[OK]

TextLink

Hypertext link in a document that can be an image or text

LIST

LIST, FONT_CHOOSER

[OK]

List

List of objects that allows one or more selections. A font chooser allows selection of a display font.

LISTITEM

LISTITEM

[OK]

Row?

Element in a selectable list

MENUBAR

MENU_BAR

[OK]

MenuBar

Object drawn at the top of the primary window or dialog box of an application ((just below the title bar)) that contains a list of menus.

MENUITEM

MENU_ITEM, RADIO_MENU_ITEM, CHECK_MENU_ITEM

[OK]

MenuItem, MenuBarItem

Element in a menu that presents a selectable action. A radio menu item is both a radio button and a menu item. A check menu item is both a check box and a menu item.

MENUPOPUP

MENU, POPUP_MENU, TEAROFF_MENU_ITEM

[OK]

Menu, MenuButton (button with icon that pops up a menu when clicked) or PopupButton (regular popupmenu showing the current choice)

A menu is a list of actions from which the user can choose. A pop-up menu is a temporary window that offers the user a list of choices, then hides itself once the user selects one of those choices. A tearoff menu item is a is a menu that can be removed from the menubar and shown in its own window.

OUTLINE

TREE, TREE_TABLE

[OK]

Outline

A tree or an outline is an object used to present hierarchical information to the user, usually with expandable/collapsable elements. A tree table presents both tabular and hierarchical information to the user.

OUTLINEITEM

use custom role

[OK]

Row and subrole OutlineRow

A tree item.

PAGETAB

PAGE_TAB

[OK] Use TabGroup and friends. We'll try to do this similarly to how XUL structures tabboxes, but since that will be different from how TabGroups normally are represented in UA, we'll need to make sure VoiceOver and everything still works.

A tab that usually contains a label or title for a page or panel of a notebook container.

PAGETABLIST

PAGE_TAB_LIST

[OK]

See TabGroup above.

A tabbed notebook container, or a series of panels presented as tabbed pages.

PANE

FRAME, INTERNAL_FRAME, GLASS_PANE, LAYERED_PANE, OPTION_PANE, SCROLL_PANE, DIRECTORY_PANE, DESKTOP_FRAME, ROOT_PANE, SPLIT_PANE, VIEWPORT

[OK]

Window (subroles StandardWindow), ScrollArea, SplitGroup (two adjacent "views" with a splitter bar), Browser (horizontal tree-like view often used for nagivating in the filesystem)

A pane or frame in the current window. A frame is a top level window with a title bar, border, menubar, etc. An internal frame is a frame clipped by a desktop pane. A glass pane is painted on top of all panes beneath it. A layered pane allows its children to be drawn in layers based on a stacking order. An option pane is a pane inside of a dialog. A scroll pane contains scroll bars. A directory pane contains selections (icons, lists, trees) for the content of a directory. A desktop frame is a pane that supports internal frames and icons for those internal frames. A root pane has a glass pane and a layered pane as its children. A split pane is a panel that presents two other panels at the same time. A viewport is a container of content, usually used in a scroll pane, that represents a clipped version of that pane that is onscreen (visible).

PROGRESSBAR

PROGRESS_BAR

[OK]

ProgressIndicator

Object that shows the percentage of a task that has completed.

PROPERTYPAGE

PAGE (proposed) or add custom role

[OK]

Group with DescriptionAttribute describing special purpose?

Page showing properties of something.

PUSHBUTTON

PUSH_BUTTON, TOGGLE_BUTTON

[OK]

Button (see also subrole ToolbarButton)

A push button tells the application to do something when it is activated. A toggle button is a specialized push button that does not have a separate indicator for the state.

RADIOBUTTON

RADIO_BUTTON, RADIO_MENU_ITEM

[OK]

RadioButton (grouped together using RadioGroup)

Usually in a group, only one radio button in a group can be "checked". Check one radio button causes all others in the group to be unchecked. A radio menu item is both a radio button and a menu item.

ROW

add custom control

[OK]

Row (see subroles OutlineRow, TableRow)

Row in a table.

ROWHEADER

ROW_HEADER, TABLE_ROW_HEADER

[OK]

Header attribute of a table/outliner/browser.

Header which labels a row of data, or more specifically a row of data in a table.

SCROLLBAR

SCROLL_BAR

[OK]

ScrollBar, see children ValueIndicator (the draggable thumb), and arrows: IncrementPage, DecrementPage subroles

Object which allows a user to incrementally view a large amount of data by moving the bounds of a viewport along a one-dimensional axis.

SEPARATOR

SEPARATOR

TBD

Object that provides a visual separation of contents in a menu or between 2 areas/panes.

SLIDER

SLIDER

[OK]

Slider

Object that allows the user to select or adjust a value in increments from a bounded range of minimum to maximum values.

SPINBUTTON

SPIN_BUTTON

[OK]

Incrementor ("Stepper"), (Increment/Decrement subroles).

Object that allows the user to select a value from a set of choices.

STATICTEXT

LABEL, ACCELERATOR_LABEL

[OK]

StaticText

A label presents text that provides a short name or description associated with another object, like a text entry field. An accelerator label indicates the keyboard accelerators for its parent, like a menu item.

STATUSBAR

STATUS_BAR

[OK]

Represented as its individual parts; the status text is text, the progressbar is a ProgressBar, etc.

Display non-quantitative status information, in contrast to a progress bar which displays quantitative status.

TABLE

TABLE, CALENDAR, TREE_TABLE

[OK]

Table

Presents information in terms of rows and columns. A calendar contains one or more dates, usually arranged in a tabular format, but not always. A tree table presents information in both a tabular and hierarchical format.

TEXT

TEXT, DATE_EDITOR, PASSWORD_TEXT, AUTOCOMPLETE, ENTRY (proposed), PARAGRAPH, HEADING (proposed), HEADER, FOOTER, CAPTION (proposed)

[OK]

StaticText, TextField, TextArea are the actual text widgets. See various text attributes for describing text content. There's also SecureTextField for password boxes.

Text information in general. A date editor allows entry of a date. A password text entry object shows nothing or an alternative character, like an asterisk, when the password text is typed. Autocomplete is a dialog or list containing items for insertion into an entry widget, such as a list of words or characters for completion of a text entry. Entry is a text entry field which may be editable or read-only depending on the STATE_EDITABLE attribute. A paragraph is a paragraph of text in a document. A heading is the title for a section in a document. A header is a section at the top of a document, or the top of each page in a document. A footer is a section at the bottom of a document, or the bottom of each page of a document. A caption is descriptive information, usually textual, about another user interface element such as a table, chart, or image.

TITLEBAR

add custom role

[OK]

title attribute of Window role

Title or caption of a window or dialog.

TOOLBAR

TOOL_BAR

[OK]

Toolbar (see also toolbar button subrole of Button)

A bar or palette usually comprised of push buttons or toggle buttons.

TOOLTIP

TOOL_TIP

[OK]

HelpTag (same as "Help Balloon")

An object that provides descriptive or helpful information about another object, often when the help key is pressed or the mouse moves over an object.

WINDOW

WINDOW

[OK]

Window

A top level window with no title or border.

RULER

[OK]

Ruler, RulerMarker

Object that describes margins and tab stops.

EMBEDDED

TBD

Object that is an embedded component container in a document.

EDITBAR

[OK]

Basically same as textfield, or similar to whatever we'd do for an inline textfield in a table?

Object that is an editable text object in a toolbar.

CANVAS

TBD

Object that can be drawn into and used to trap events.

INVALID

[OK]

Unknown

An error condition, such as an uninitialized role.

UNKNOWN

[OK]

Unknown

Object contains accessible information but its role is not known.

ColorWell

Button for invoking a color inspector, where you can choose colors.

SearchField

Textfield used for searching

Firefox-specific Roles

MSAAATKUADescription
h1, h2, h3, h4, h5, h6
iframe
q
tbody, thead, tfoot

Roles We Don't Implement

Here are roles that we, for one reason or the other, have decided to not implement. Most of them can be represented in some other way, and so we deem them irrelevant.

MSAA 1.3 Role (ROLE_SYSTEM_ *)

Closest ATK Role(s) (ATK_ROLE_*)

Closest UA Role (NSAccessibility*Role)

Description

BORDER

don't use

don't use

Window border as an object

BUTTONDROPDOWN

add custom role

Button that drops down a list of items

BUTTONDROPDOWNGRID

add custom role

Button that drops down a grid

CARET

don't use

don't use

System caret

CHARACTER

don't use

don't use

Paperclip character.

CLOCK

add custom role

don't use

Clock object.

CURSOR

don't use

don't use

Mouse pointer.

DIAL

DIAL

Control with value changes using a rotating visual indicator

ANIMATION

ANIMATION

A dynamic or moving image that changes over time.

HOTKEYFIELD

add custom role

Editable field for assigning keys

INDICATOR

ARROW or add custom role

An indicator is a graphic, like an arrow, used to indicate something. Arrow is a 2D directional indicator.

SOUND

IMAGE, ICON, or add custom control

System sound object.

WHITESPACE

FILLER

Object that takes up space in a user interface.