File:Max a11y arch.svg: Difference between revisions
Jump to navigation
Jump to search
(Eeejay uploaded a new version of File:Max a11y arch.svg) |
No edit summary |
||
| Line 20: | Line 20: | ||
end note | end note | ||
interface | interface MOXAccessibleProtocol { | ||
.. Get AXChildren .. | .. Get AXChildren .. | ||
+ {field} (NSArray*)children | + {field} (NSArray*)children | ||
| Line 35: | Line 35: | ||
... | ... | ||
} | } | ||
note top of | note top of MOXAccessibleProtocol | ||
A set of optional methods that map | A set of optional methods that map | ||
to platform attributes and actions | to platform attributes and actions | ||
end note | end note | ||
abstract class | abstract class MOXAccessibleBase extends mozAccessibleProtocol { | ||
+ (BOOL)blockSelector:(SEL)selector | + (BOOL)blockSelector:(SEL)selector | ||
+ (BOOL)ignoreWithParent:( | + (BOOL)ignoreWithParent:(MOXAccessible*)parent | ||
+ (BOOL)ignoreChild:( | + (BOOL)ignoreChild:(MOXAccessible*)child | ||
... | ... | ||
} | } | ||
note top of | note top of MOXAccessibleBase | ||
Base class that is not Gecko specific. | Base class that is not Gecko specific. | ||
Implements platform API that maps to internal protocol API. | Implements platform API that maps to internal protocol API. | ||
| Line 52: | Line 52: | ||
end note | end note | ||
class | class MOXAccessible extends MOXAccessibleBase,MOXAccessibleProtocol { | ||
~ {field} (AccessibleOrProxy)geckoAccessible | ~ {field} (AccessibleOrProxy)geckoAccessible | ||
~ {field} (uint_64)geckoRole | ~ {field} (uint_64)geckoRole | ||
} | } | ||
note top of | note top of MOXAccessibleBase | ||
Base accessible that is associated with a Gecko accessible. | Base accessible that is associated with a Gecko accessible. | ||
Translates Gecko roles, states and heirarchy to platform APIs. | Translates Gecko roles, states and heirarchy to platform APIs. | ||
| Line 67: | Line 67: | ||
class AccessibleOrProxy << Gecko >> | class AccessibleOrProxy << Gecko >> | ||
MOXAccessible *- AccessibleOrProxy | |||
class | class MOXSummaryAccessible extends MOXAccessible { | ||
+ {field} (NSNumber*)expanded | + {field} (NSNumber*)expanded | ||
} | } | ||
class | class MOXColumnContainer extends MOXAccessibleBase,MOXAccessibleProtocol | ||
class | class MOXMathSquareRootAccessible extends MOXAccessible { | ||
+ {field} (id)mathRootRadicand | + {field} (id)mathRootRadicand | ||
} | } | ||
class | class MOXIncrementableAccessible extends MOXAccessible { | ||
+ {method} performIncrement | + {method} performIncrement | ||
+ {method} performDecrement | + {method} performDecrement | ||
} | } | ||
class | class MOXSelectableAccessible extends MOXAccessible { | ||
+ {field} (NSArray*)selectedChildren | + {field} (NSArray*)selectedChildren | ||
} | } | ||
class | class MOXSelectableChildAccessible extends MOXAccessible { | ||
+ setSelected:(NSNumber*)selected | + setSelected:(NSNumber*)selected | ||
} | } | ||
class | class MOXTabGroupAccessible extends MOXSelectableAccessible { | ||
+ {field} (NSArray*)tabs | + {field} (NSArray*)tabs | ||
} | } | ||
class | class MOXListboxAccessible extends MOXSelectableAccessible { | ||
+ {field} (NSSttring*)orientation | + {field} (NSSttring*)orientation | ||
} | } | ||
Latest revision as of 16:52, 26 May 2020
@startuml
left to right direction
hide empty members
skinparam shadowing false
interface mozAccessibleProtocol {
+ {field} (NSArray*)accessibilityAttributeNames
+ {field} (NSArray*)accessibilityActionNames
+ {field} (BOOL)isRoot
+ {field} ...
+ (id)accessibilityAttributeValue:(NSString*)attribute
+ (BOOL)accessibilityIsAttributeSettable:(NSString*)attribute
+ {method} ...
}
note top of mozAccessibleProtocol
Includes methods needed to talk to
platform and widget code.
end note
interface MOXAccessibleProtocol {
.. Get AXChildren ..
+ {field} (NSArray*)children
.. Get AXParent ..
+ {field} (id)parent
.. Get AXRole ..
+ {field} (NSString*)role
.. Set AXValue ..
+ setValue:(NSNumber*)value
.. Set AXFocused ..
+ setFocused:(NSNumber*)focused
.. Perform AXPress ..
+ {method} performPress
...
}
note top of MOXAccessibleProtocol
A set of optional methods that map
to platform attributes and actions
end note
abstract class MOXAccessibleBase extends mozAccessibleProtocol {
+ (BOOL)blockSelector:(SEL)selector
+ (BOOL)ignoreWithParent:(MOXAccessible*)parent
+ (BOOL)ignoreChild:(MOXAccessible*)child
...
}
note top of MOXAccessibleBase
Base class that is not Gecko specific.
Implements platform API that maps to internal protocol API.
Responsible for filtering and managing ignored accessibles.
end note
class MOXAccessible extends MOXAccessibleBase,MOXAccessibleProtocol {
~ {field} (AccessibleOrProxy)geckoAccessible
~ {field} (uint_64)geckoRole
}
note top of MOXAccessibleBase
Base accessible that is associated with a Gecko accessible.
Translates Gecko roles, states and heirarchy to platform APIs.
end note
skinparam ClassBackgroundColor<< Gecko >> MidnightBlue
skinparam ClassFontColor<< Gecko >> White
skinparam ClassStereotypeFontColor<< Gecko >> White
class AccessibleOrProxy << Gecko >>
MOXAccessible *- AccessibleOrProxy
class MOXSummaryAccessible extends MOXAccessible {
+ {field} (NSNumber*)expanded
}
class MOXColumnContainer extends MOXAccessibleBase,MOXAccessibleProtocol
class MOXMathSquareRootAccessible extends MOXAccessible {
+ {field} (id)mathRootRadicand
}
class MOXIncrementableAccessible extends MOXAccessible {
+ {method} performIncrement
+ {method} performDecrement
}
class MOXSelectableAccessible extends MOXAccessible {
+ {field} (NSArray*)selectedChildren
}
class MOXSelectableChildAccessible extends MOXAccessible {
+ setSelected:(NSNumber*)selected
}
class MOXTabGroupAccessible extends MOXSelectableAccessible {
+ {field} (NSArray*)tabs
}
class MOXListboxAccessible extends MOXSelectableAccessible {
+ {field} (NSSttring*)orientation
}
@enduml
File history
Click on a date/time to view the file as it appeared at that time.
| Date/Time | Thumbnail | Dimensions | User | Comment | |
|---|---|---|---|---|---|
| current | 16:50, 26 May 2020 | 1,618 × 649 (19 KB) | Eeejay (talk | contribs) | ||
| 16:50, 26 May 2020 | 1,614 × 649 (19 KB) | Eeejay (talk | contribs) | Reverted to version as of 00:03, 20 May 2020 (UTC) | ||
| 16:49, 26 May 2020 | 1,618 × 649 (19 KB) | Eeejay (talk | contribs) | |||
| 00:03, 20 May 2020 | 1,614 × 649 (19 KB) | Eeejay (talk | contribs) | @startuml left to right direction hide empty members skinparam shadowing false interface mozAccessibleProtocol { + {field} (NSArray*)accessibilityAttributeNames + {field} (NSArray*)accessibilityActionNames + {field} (BOOL)isRoot + {field} ... + (id)a... |
You cannot overwrite this file.
File usage
The following page uses this file: