Ссылка AXRoleConstants.h
Каждая роль предлагает множество атрибутов. Существуют некоторые атрибуты, которые должны поддерживаться каждым элементом, независимо от роли. Если/когда надлежащими данными снабдит приложение, другие атрибуты будут поддерживаться элементом. Значения и значения этих атрибутов обычно очевидны. Для оставления свободного места следующие атрибуты не перечислены в ролевой документации, если роль не обрабатывает их специальным способом:
AXRole
AXRoleDescription
AXDescription
AXHelp
AXParent
AXChildren
AXWindow
AXTopLevelUIElement
AXEnabled
AXSize
AXPosition
Каждый атрибут, поддерживаемый данной ролью, может иметь один или несколько символов после своего имени:
w means the attribute is writable.
o means it is an optional attribute that doesn't necessarily need to be
supported 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")
Константы
-
kAXApplicationRole
kAXApplicationRole
Доступный в OS X v10.2 и позже.
-
kAXBrowserRole
kAXBrowserRole
Элемент, содержащий столбцы иерархических данных. Примеры включают представление столбца в окна Finder и Открываются/Сохраняют диалоговые окна. Браузер Данных углерода в режиме представления столбца представляет себя как AXBrowser. NSBrowser какао представляет себя как AXBrowser.
Элементы браузера, как ожидают, будут иметь определенную иерархию подэлементов в нем. В частности дочерним элементом AXBrowser должен быть AXScrollArea, управляющий горизонтальной прокруткой. Горизонтальный AXScrollArea должен включать дочерний элемент для каждого столбца интерфейсные дисплеи. Столбцы могут быть любой ролью, которая целесообразна. Как правило, столбцами является вертикальный AXScrollAreas с дочерними элементами AXList. Вот иерархия для типичного браузера:
AXBrowser
AXScrollArea (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 и позже.
-
kAXButtonRole
kAXButtonRole
Доступный в OS X v10.2 и позже.
-
kAXCheckBoxRole
kAXCheckBoxRole
Доступный в OS X v10.2 и позже.
-
kAXColumnRole
kAXColumnRole
Доступный в OS X v10.2 и позже.
-
kAXDrawerRole
kAXDrawerRole
Доступный в OS X v10.2 и позже.
-
kAXGrowAreaRole
kAXGrowAreaRole
Доступный в OS X v10.2 и позже.
-
kAXImageRole
kAXImageRole
Доступный в OS X v10.2 и позже.
-
kAXMenuButtonRole
kAXMenuButtonRole
Доступный в OS X v10.2 и позже.
-
kAXOutlineRole
kAXOutlineRole
Элемент, содержащий находящиеся на строке данные. Это может использовать треугольники раскрытия для управления дисплеем иерархий в данных. Это может расположить данные каждой строки в столбцы и предложить кнопку заголовка выше каждого столбца. Лучшим примером является представление списка в окне Finder, или Откройтесь/Сохраните диалоговое окно.
Основы обычно являются дочерними элементами AXScrollAreas, управляющего горизонтальной и/или вертикальной прокруткой для схемы. Основы, как ожидают, будут следовать определенным соглашениям относительно своей иерархии подэлементов. В частности если схема использует столбцы, данные должны быть доступными или через строки или через столбцы. Таким образом данные в данной ячейке будут представлены как два diffrent элемента. Вот иерархия для типичной схемы:
AXScrollArea (parent of the outline)
AXScrollBar (if necessary, horizontal)
AXScrollBar (if necessary, vertical)
AXOutline
AXGroup (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 и позже.
-
kAXPopUpButtonRole
kAXPopUpButtonRole
Доступный в OS X v10.2 и позже.
-
kAXRadioButtonRole
kAXRadioButtonRole
Доступный в OS X v10.2 и позже.
-
kAXRowRole
kAXRowRole
Доступный в OS X v10.2 и позже.
-
kAXSheetRole
kAXSheetRole
Доступный в OS X v10.2 и позже.
-
kAXSystemWideRole
kAXSystemWideRole
Доступный в OS X v10.2 и позже.
-
kAXTabGroupRole
kAXTabGroupRole
Доступный в OS X v10.2 и позже.
-
kAXTableRole
kAXTableRole
Доступный в OS X v10.2 и позже.
-
kAXUnknownRole
kAXUnknownRole
Доступный в OS X v10.2 и позже.
-
kAXWindowRole
kAXWindowRole
Доступный в OS X v10.2 и позже.
-