4632N/A/*
4632N/A * Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
4632N/A * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4632N/A *
4632N/A * This code is free software; you can redistribute it and/or modify it
4632N/A * under the terms of the GNU General Public License version 2 only, as
4632N/A * published by the Free Software Foundation. Oracle designates this
4632N/A * particular file as subject to the "Classpath" exception as provided
4632N/A * by Oracle in the LICENSE file that accompanied this code.
4632N/A *
4632N/A * This code is distributed in the hope that it will be useful, but WITHOUT
4632N/A * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
4632N/A * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
4632N/A * version 2 for more details (a copy is included in the LICENSE file that
4632N/A * accompanied this code).
4632N/A *
4632N/A * You should have received a copy of the GNU General Public License version
4632N/A * 2 along with this work; if not, write to the Free Software Foundation,
4632N/A * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
4632N/A *
4632N/A * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
4632N/A * or visit www.oracle.com if you need additional information or have any
4632N/A * questions.
4632N/A */
4632N/A
4632N/A#import <AppKit/AppKit.h>
4632N/A#import <JavaNativeFoundation/JavaNativeFoundation.h>
4632N/A
4632N/A
4632N/A//#define JAVA_AX_DEBUG 1
4632N/A//#define JAVA_AX_NO_IGNORES 1
4632N/A//#define JAVA_AX_DEBUG_PARMS 1
4632N/A
4632N/A
4632N/A@interface JavaComponentAccessibility : NSObject {
4632N/A NSView *fView;
4632N/A NSObject *fParent;
4632N/A
4632N/A NSString *fNSRole;
4632N/A NSString *fJavaRole;
4632N/A
4632N/A jint fIndex;
4632N/A jobject fAccessible;
4632N/A jobject fComponent;
4632N/A
4632N/A NSMutableDictionary *fActions;
4632N/A NSObject *fActionsLOCK;
4632N/A}
4632N/A
4632N/A- (id)initWithParent:(NSObject*)parent withEnv:(JNIEnv *)env withAccessible:(jobject)accessible withIndex:(jint)index withView:(NSView *)view withJavaRole:(NSString *)javaRole;
4632N/A- (void)unregisterFromCocoaAXSystem;
4632N/A- (void)postValueChanged;
4632N/A- (void)postSelectionChanged;
4632N/A- (BOOL)isEqual:(id)anObject;
4632N/A- (BOOL)isAccessibleWithEnv:(JNIEnv *)env forAccessible:(jobject)accessible;
4632N/A
4632N/A+ (void)postFocusChanged:(id)message;
4632N/A
4632N/A+ (NSArray*)childrenOfParent:(JavaComponentAccessibility*)parent withEnv:(JNIEnv *)env withChildrenCode:(NSInteger)whichChildren allowIgnored:(BOOL)allowIgnored;
4632N/A+ (JavaComponentAccessibility *) createWithParent:(JavaComponentAccessibility *)parent accessible:(jobject)jaccessible role:(NSString *)javaRole index:(jint)index withEnv:(JNIEnv *)env withView:(NSView *)view;
4632N/A+ (JavaComponentAccessibility *) createWithAccessible:(jobject)jaccessible role:(NSString *)role index:(jint)index withEnv:(JNIEnv *)env withView:(NSView *)view;
4632N/A+ (JavaComponentAccessibility *) createWithAccessible:(jobject)jaccessible withEnv:(JNIEnv *)env withView:(NSView *)view;
4632N/A
4632N/A- (NSDictionary*)getActions:(JNIEnv *)env;
4632N/A- (void)getActionsWithEnv:(JNIEnv *)env;
4632N/A
4632N/A- (jobject)axContextWithEnv:(JNIEnv *)env;
4632N/A- (NSView*)view;
4632N/A- (NSWindow*)window;
4632N/A- (id)parent;
4632N/A- (NSString *)javaRole;
4632N/A- (BOOL)isMenu;
4632N/A- (BOOL)isSelected:(JNIEnv *)env;
4632N/A- (BOOL)isVisible:(JNIEnv *)env;
4632N/A
4632N/A// attribute names
4632N/A- (NSArray *)initializeAttributeNamesWithEnv:(JNIEnv *)env;
4632N/A- (NSArray *)accessibilityAttributeNames;
4632N/A
4632N/A// attributes
4632N/A- (id)accessibilityAttributeValue:(NSString *)attribute;
4632N/A- (BOOL)accessibilityIsAttributeSettable:(NSString *)attribute;
4632N/A- (void)accessibilitySetValue:(id)value forAttribute:(NSString *)attribute;
4632N/A
4632N/A- (NSArray *)accessibilityChildrenAttribute;
4632N/A- (BOOL)accessibilityIsChildrenAttributeSettable;
4632N/A- (NSUInteger)accessibilityIndexOfChild:(id)child;
4632N/A- (NSNumber *)accessibilityEnabledAttribute;
4632N/A- (BOOL)accessibilityIsEnabledAttributeSettable;
4632N/A- (NSNumber *)accessibilityFocusedAttribute;
4632N/A- (BOOL)accessibilityIsFocusedAttributeSettable;
4632N/A- (void)accessibilitySetFocusedAttribute:(id)value;
4632N/A- (NSString *)accessibilityHelpAttribute;
4632N/A- (BOOL)accessibilityIsHelpAttributeSettable;
4632N/A- (id)accessibilityMaxValueAttribute;
4632N/A- (BOOL)accessibilityIsMaxValueAttributeSettable;
4632N/A- (id)accessibilityMinValueAttribute;
4632N/A- (BOOL)accessibilityIsMinValueAttributeSettable;
4632N/A- (id)accessibilityOrientationAttribute;
4632N/A- (BOOL)accessibilityIsOrientationAttributeSettable;
4632N/A- (id)accessibilityParentAttribute;
4632N/A- (BOOL)accessibilityIsParentAttributeSettable;
4632N/A- (NSValue *)accessibilityPositionAttribute;
4632N/A- (BOOL)accessibilityIsPositionAttributeSettable;
4632N/A- (NSString *)accessibilityRoleAttribute;
4632N/A- (BOOL)accessibilityIsRoleAttributeSettable;
4632N/A- (NSString *)accessibilityRoleDescriptionAttribute;
4632N/A- (BOOL)accessibilityIsRoleDescriptionAttributeSettable;
4632N/A- (NSArray *)accessibilitySelectedChildrenAttribute;
4632N/A- (BOOL)accessibilityIsSelectedChildrenAttributeSettable;
4632N/A- (NSValue *)accessibilitySizeAttribute;
4632N/A- (BOOL)accessibilityIsSizeAttributeSettable;
4632N/A- (NSString *)accessibilitySubroleAttribute;
4632N/A- (BOOL)accessibilityIsSubroleAttributeSettable;
4632N/A- (NSString *)accessibilityTitleAttribute;
4632N/A- (BOOL)accessibilityIsTitleAttributeSettable;
4632N/A- (NSWindow *)accessibilityTopLevelUIElementAttribute;
4632N/A- (BOOL)accessibilityIsTopLevelUIElementAttributeSettable;
4632N/A- (id)accessibilityValueAttribute;
4632N/A- (BOOL)accessibilityIsValueAttributeSettable;
4632N/A- (void)accessibilitySetValueAttribute:(id)value;
4632N/A- (NSArray *)accessibilityVisibleChildrenAttribute;
4632N/A- (BOOL)accessibilityIsVisibleChildrenAttributeSettable;
4632N/A- (id)accessibilityWindowAttribute;
4632N/A- (BOOL)accessibilityIsWindowAttributeSettable;
4632N/A
4632N/A// actions
4632N/A- (NSArray *)accessibilityActionNames;
4632N/A- (NSString *)accessibilityActionDescription:(NSString *)action;
4632N/A- (void)accessibilityPerformAction:(NSString *)action;
4632N/A
4632N/A- (BOOL)accessibilityIsIgnored;
4632N/A- (id)accessibilityHitTest:(NSPoint)point withEnv:(JNIEnv *)env;
4632N/A- (id)accessibilityFocusedUIElement;
4632N/A
4632N/A@end