2006-09-11 19:44:00 +04:00
|
|
|
/* -*- Mode: Objective-C; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
|
2012-05-21 15:12:37 +04:00
|
|
|
/* 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/. */
|
2003-04-02 02:18:29 +04:00
|
|
|
|
2006-09-11 19:44:00 +04:00
|
|
|
#import <Cocoa/Cocoa.h>
|
2003-04-02 02:18:29 +04:00
|
|
|
|
2006-09-11 19:44:00 +04:00
|
|
|
#import "mozView.h"
|
2003-04-02 02:18:29 +04:00
|
|
|
|
2012-01-04 07:09:29 +04:00
|
|
|
/* This protocol's primary use is so widget/cocoa can talk back to us
|
2006-09-11 19:44:00 +04:00
|
|
|
properly.
|
2015-06-08 17:59:19 +03:00
|
|
|
|
|
|
|
ChildView owns the topmost mozRootAccessible, and needs to take care of setting up
|
2006-09-11 19:44:00 +04:00
|
|
|
that parent/child relationship.
|
2015-06-08 17:59:19 +03:00
|
|
|
|
2006-09-11 19:44:00 +04:00
|
|
|
This protocol is thus used to make sure it knows it's talking to us, and not
|
|
|
|
just some random |id|.
|
|
|
|
*/
|
2003-04-02 02:18:29 +04:00
|
|
|
|
2006-09-11 19:44:00 +04:00
|
|
|
@protocol mozAccessible
|
2003-04-02 02:18:29 +04:00
|
|
|
|
2006-09-19 12:48:33 +04:00
|
|
|
// returns whether this accessible is the root accessible. there is one
|
|
|
|
// root accessible per window.
|
|
|
|
- (BOOL)isRoot;
|
2003-04-02 02:18:29 +04:00
|
|
|
|
2015-06-08 17:59:19 +03:00
|
|
|
// some mozAccessibles implement accessibility support in place of another object. for example,
|
2006-11-15 14:08:14 +03:00
|
|
|
// ChildView gets its support from us.
|
|
|
|
//
|
|
|
|
// instead of returning a mozAccessible to the OS when it wants an object, we need to pass the view we represent, so the
|
|
|
|
// OS doesn't get confused and think we return some random object.
|
|
|
|
- (BOOL)hasRepresentedView;
|
|
|
|
- (id)representedView;
|
|
|
|
|
2006-09-11 19:44:00 +04:00
|
|
|
#ifdef DEBUG
|
|
|
|
// debug utility that will print the native accessibility tree, starting
|
|
|
|
// at this node.
|
|
|
|
- (void)printHierarchy;
|
|
|
|
#endif
|
2003-04-02 02:18:29 +04:00
|
|
|
|
2006-09-11 19:44:00 +04:00
|
|
|
/*** general ***/
|
2003-04-02 02:18:29 +04:00
|
|
|
|
2006-09-11 19:44:00 +04:00
|
|
|
// returns the accessible at the specified point.
|
|
|
|
- (id)accessibilityHitTest:(NSPoint)point;
|
2003-04-02 02:18:29 +04:00
|
|
|
|
2006-09-11 19:44:00 +04:00
|
|
|
// whether this element is flagged as ignored.
|
|
|
|
- (BOOL)accessibilityIsIgnored;
|
2003-04-15 12:45:55 +04:00
|
|
|
|
2006-09-11 19:44:00 +04:00
|
|
|
// currently focused UI element (possibly a child accessible)
|
|
|
|
- (id)accessibilityFocusedUIElement;
|
|
|
|
|
|
|
|
/*** attributes ***/
|
|
|
|
|
|
|
|
// all supported attributes
|
|
|
|
- (NSArray*)accessibilityAttributeNames;
|
|
|
|
|
|
|
|
// value for given attribute.
|
|
|
|
- (id)accessibilityAttributeValue:(NSString*)attribute;
|
|
|
|
|
|
|
|
// whether a particular attribute can be modified
|
|
|
|
- (BOOL)accessibilityIsAttributeSettable:(NSString*)attribute;
|
|
|
|
|
|
|
|
/*** actions ***/
|
|
|
|
|
|
|
|
- (NSArray*)accessibilityActionNames;
|
|
|
|
- (NSString*)accessibilityActionDescription:(NSString*)action;
|
|
|
|
- (void)accessibilityPerformAction:(NSString*)action;
|
|
|
|
|
|
|
|
@end
|
2003-04-15 12:45:55 +04:00
|
|
|
|