Ссылка AXRoleConstants.h
Каждая роль предлагает множество атрибутов. Существуют некоторые атрибуты, которые должны поддерживаться каждым элементом, независимо от роли. Если/когда надлежащими данными снабдит приложение, другие атрибуты будут поддерживаться элементом. Значения и значения этих атрибутов обычно очевидны. Для оставления свободного места следующие атрибуты не перечислены в ролевой документации, если роль не обрабатывает их специальным способом:
AXRoleAXRoleDescriptionAXDescriptionAXHelpAXParentAXChildrenAXWindowAXTopLevelUIElementAXEnabledAXSizeAXPosition
Каждый атрибут, поддерживаемый данной ролью, может иметь один или несколько символов после своего имени:
w means the attribute is writable.o means it is an optional attribute that doesn't necessarily need to besupported by all elements with that role.
Посмотрите раздел Overview выше для документации уровня заголовка.
-
Объявление
Objective C
#define kAXApplicationRole CFSTR("AXApplication") #define kAXBrowserRole CFSTR("AXBrowser") #define kAXButtonRole CFSTR("AXButton") #define kAXCheckBoxRole CFSTR("AXCheckBox") #define kAXColumnRole CFSTR("AXColumn") #define kAXDrawerRole CFSTR("AXDrawer") #define kAXGrowAreaRole CFSTR("AXGrowArea") #define kAXImageRole CFSTR("AXImage") #define kAXMenuButtonRole CFSTR("AXMenuButton") #define kAXOutlineRole CFSTR("AXOutline") #define kAXPopUpButtonRole CFSTR("AXPopUpButton") #define kAXRadioButtonRole CFSTR("AXRadioButton") #define kAXRowRole CFSTR("AXRow") #define kAXSheetRole CFSTR("AXSheet") #define kAXSystemWideRole CFSTR("AXSystemWide") #define kAXTabGroupRole CFSTR("AXTabGroup") #define kAXTableRole CFSTR("AXTable") #define kAXUnknownRole CFSTR("AXUnknown") #define kAXWindowRole CFSTR("AXWindow")Константы
-
kAXApplicationRolekAXApplicationRoleДоступный в OS X v10.2 и позже.
-
kAXBrowserRolekAXBrowserRoleЭлемент, содержащий столбцы иерархических данных. Примеры включают представление столбца в окна Finder и Открываются/Сохраняют диалоговые окна. Браузер Данных углерода в режиме представления столбца представляет себя как AXBrowser. NSBrowser какао представляет себя как AXBrowser.
Элементы браузера, как ожидают, будут иметь определенную иерархию подэлементов в нем. В частности дочерним элементом AXBrowser должен быть AXScrollArea, управляющий горизонтальной прокруткой. Горизонтальный AXScrollArea должен включать дочерний элемент для каждого столбца интерфейсные дисплеи. Столбцы могут быть любой ролью, которая целесообразна. Как правило, столбцами является вертикальный AXScrollAreas с дочерними элементами AXList. Вот иерархия для типичного браузера:
AXBrowserAXScrollArea (manages the horizontal scrolling)AXScrollBar (horizontal scroll bar)AXScrollArea (first column)AXScrollBar (column's vertical scroll bar)AXList (column content is typically a list, but it could be another role)<Varies> (cell)...<Varies> (cell)AXScrollArea (second column)...AXScrollArea (third column)...AXGroup (preview column)...
Атрибуты:
AXFocused (w)
AXColumns - Массив элементов столбца внука, которые обычно имеют роль AXScrollArea.
AXVisibleColumns - Массив подмножества элементов в массиве AXColumns, которые в настоящее время видимы.
AXColumnTitles (o)
AXHorizontalScrollBar - Горизонтальный AXScrollBar дочернего AXScrollArea браузера.
Доступный в OS X v10.2 и позже.
-
kAXButtonRolekAXButtonRoleДоступный в OS X v10.2 и позже.
-
kAXCheckBoxRolekAXCheckBoxRoleДоступный в OS X v10.2 и позже.
-
kAXColumnRolekAXColumnRoleДоступный в OS X v10.2 и позже.
-
kAXDrawerRolekAXDrawerRoleДоступный в OS X v10.2 и позже.
-
kAXGrowAreaRolekAXGrowAreaRoleДоступный в OS X v10.2 и позже.
-
kAXImageRolekAXImageRoleДоступный в OS X v10.2 и позже.
-
kAXMenuButtonRolekAXMenuButtonRoleДоступный в OS X v10.2 и позже.
-
kAXOutlineRolekAXOutlineRoleЭлемент, содержащий находящиеся на строке данные. Это может использовать треугольники раскрытия для управления дисплеем иерархий в данных. Это может расположить данные каждой строки в столбцы и предложить кнопку заголовка выше каждого столбца. Лучшим примером является представление списка в окне Finder, или Откройтесь/Сохраните диалоговое окно.
Основы обычно являются дочерними элементами AXScrollAreas, управляющего горизонтальной и/или вертикальной прокруткой для схемы. Основы, как ожидают, будут следовать определенным соглашениям относительно своей иерархии подэлементов. В частности если схема использует столбцы, данные должны быть доступными или через строки или через столбцы. Таким образом данные в данной ячейке будут представлены как два diffrent элемента. Вот иерархия для типичной схемы:
AXScrollArea (parent of the outline)AXScrollBar (if necessary, horizontal)AXScrollBar (if necessary, vertical)AXOutlineAXGroup (header buttons, optional)AXButton, AXMenuButton, or <Varies> (header button)...AXRow (first row)AXStaticText (just one possible example)AXButton (just another possible example)AXTextField (ditto)AXCheckBox (ditto)AXRow (as above)...AXColumn (first column)AXStaticText (assumes the first column displays text)AXStaticText...AXColumn (second column)AXButton (assumes the second column displays buttons)AXButton......
Поддерживаемые атрибуты:
AXFocused(w)
AXRowsМассив подмножества AXChildren, которые являются строками
AXVisibleRowsМассив подмножества AXRows, которые видимы
AXSelectedRowsМассив подмножества AXRows, выбранных (w)
AXColumnsМассив подмножества дочерних элементов, которые являются столбцами
AXVisibleColumnsМассив подмножества столбцов, которые видимы
AXSelectedColumnsМассив подмножества столбцов, выбранных (o)
AXHeaderЭлемент AXGroup, содержащий кнопки заголовка (o)
Доступный в OS X v10.2 и позже.
-
kAXPopUpButtonRolekAXPopUpButtonRoleДоступный в OS X v10.2 и позже.
-
kAXRadioButtonRolekAXRadioButtonRoleДоступный в OS X v10.2 и позже.
-
kAXRowRolekAXRowRoleДоступный в OS X v10.2 и позже.
-
kAXSheetRolekAXSheetRoleДоступный в OS X v10.2 и позже.
-
kAXSystemWideRolekAXSystemWideRoleДоступный в OS X v10.2 и позже.
-
kAXTabGroupRolekAXTabGroupRoleДоступный в OS X v10.2 и позже.
-
kAXTableRolekAXTableRoleДоступный в OS X v10.2 и позже.
-
kAXUnknownRolekAXUnknownRoleДоступный в OS X v10.2 и позже.
-
kAXWindowRolekAXWindowRoleДоступный в OS X v10.2 и позже.
-
