0N/A <
META HTTP-
EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
0N/A <
META NAME="GENERATOR" CONTENT="Mozilla/4.04 [en] (WinNT; I) [Netscape]">
2362N/ACopyright (c) 1998, 2006, Oracle and/or its affiliates. All rights reserved. 0N/ADO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 0N/AThis code is free software; you can redistribute it and/or modify it 0N/Aunder the terms of the GNU General Public License version 2 only, as 2362N/Apublished by the Free Software Foundation. Oracle designates this 0N/Aparticular file as subject to the "Classpath" exception as provided 2362N/Aby Oracle in the LICENSE file that accompanied this code. 0N/AThis code is distributed in the hope that it will be useful, but WITHOUT 0N/AANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 0N/AFITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 0N/Aversion 2 for more details (a copy is included in the LICENSE file that 0N/Aaccompanied this code). 0N/AYou should have received a copy of the GNU General Public License version 0N/A2 along with this work; if not, write to the Free Software Foundation, 0N/AInc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 2365N/APlease contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 0N/A<
BODY BGCOLOR="#FFFFFF">
0N/ADefines a contract between user-interface components and an assistive technology
0N/Athat provides access to those components. If a Java application fully supports
0N/Athe Java Accessibility API, then it should be compatible with, and friendly
0N/Atoward, assistive technologies such as screen readers, screen magnifiers,
0N/Aetc. With a Java application that fully supports the Java Accessibility
0N/AAPI, no screen reader off screen model would be necessary because the API
0N/Aprovides all of the information normally contained in an off screen model.
0N/A<
P>The Java Accessibility API package consists of 8 Java programming language
0N/Ainterfaces, and 6 Java programming language classes. These are described
0N/Aof the Java Accessibility API. All components that support the Java Accessibility
0N/AAPI must implement this interface. It contains a single method, <
TT>getAccessibleContext</
TT>,
0N/Athat returns an instance of the class <
A HREF="#AccessibleContext">AccessibleContext</
A>.
0N/ASun thinks that implementing this interface is the absolute minimum requirement
0N/Aof every object that is part of the user interface of a Java application,
0N/Aif that program is to be compatible with assistive technologies.
0N/AAccessibleContext</
A></
H3>
0N/Ainformation all accessible objects return and is obtained by calling the
0N/A<
TT>getAccessibleContext</
TT> method on an object that implements the <
A HREF="#Accessible">Accessible</
A>
0N/Ainterface. This information includes the accessible name, description,
0N/A<
A HREF="#AccessibleRole">role</
A>, and <
A HREF="#AccessibleState">state</
A>
0N/Aof the object, as well as information about the parent and children of
0N/Athe object. In addition, JavaBeans <
SUP><
FONT SIZE=-
2>TM</
FONT></
SUP>
0N/Aproperty change support is also included to allow assisitive technologies
0N/Alearn when the values of the accessible properties change. AccessibleContext
0N/Aalso contains methods for obtaining more specific accessibility information
0N/Aabout a component. If the component supports it, these methods will return
0N/Aan object that implements one or more of the following interfaces:
0N/A<
B><
A HREF="#AccessibleAction">AccessibleAction</
A></
B> - the object can
0N/Aperform one or more actions. This interface provides the standard mechanism
0N/Afor an assistive technology to determine what those actions are and tell
0N/Athe object to perform those actions. Any object that can be manipulated
0N/Ashould return an object that implements this interface when the <
TT>getAccessibleAction</
TT>
0N/Amethod is called on an AccessibleContext.</
LI>
0N/A<
B><
A HREF="#AccessibleComponent">AccessibleComponent</
A></
B> - the object
0N/Ahas a graphical representation. This interface provides the standard mechanism
0N/Afor an assistive technology to determine and set the graphical representation
0N/Aof the object. Any object that is rendered on the screen should return
0N/Aan object that implements this interface when the <
TT>getAccessibleComponent</
TT>
0N/Amethod is called on an AccessibleContext.</
LI>
0N/A<
B><
A HREF="#AccessibleSelection">AccessibleSelection</
A></
B> - the object
0N/Aallows its children to be selected. This interface provides the standard
0N/Amechanism for an assistive technology to determine the currently selected
0N/Achildren as well as modify the selection set. Any object that has children
0N/Athat can be selected should return an object that implements this interface
0N/Awhen the <
TT>getAccessibleSelection</
TT> method is called on an AccessibleContext.</
LI>
0N/A<
B><
A HREF="#AccessibleText">AccessibleText</
A></
B> - the object presents
0N/Aeditable textual information on the display. This interface provides the
0N/Astandard mechanism for an assistive technology to access that text via
0N/Aits content, attributes, and spatial location. Any object that contains
0N/Aeditable text should return an object that implements this interface when
0N/Athe <
TT>getAccessibleText</
TT> method is called on an AccessibleContext.</
LI>
0N/A<
B><
A HREF="#AccessibleHypertext">AccessibleHypertext</
A></
B> - the object
0N/Apresents hypertext information on the display. This interface provides
0N/Athe standard mechanism for an assistive technology to access that hypertext
0N/Avia its content, attributes, and spatial location. Any object that contains
0N/Ahypertext should return an object that implements this interface when the
0N/A<
TT>getAccessibleText</
TT> method is called on an AccessibleContext.</
LI>
0N/A<
B><
A HREF="#AccessibleValue">AccessibleValue</
A></
B> - the object supports
0N/Aa numerical value. This interface provides the standard mechanism for an
0N/Aassistive technology to determine and set the current value of the object,
0N/Aas well as the minimum and maximum values. Any object that supports a numerical
0N/Avalue should return an object that implements this interface when the <
TT>getAccessibleValue</
TT>
0N/Amethod is called on an AccessibleContext.</
LI>
0N/AThis class encapsulates the Accessible object's role in the user interface
0N/Aand is obtained by calling the <
TT>getAccessibleRole</
TT> method on an
0N/A<
A HREF="#AccessibleContext">AccessibleContext</
A>. Accessible roles include
0N/A"Check box", "Menu Item", "Panel", etc. These roles are identified by the
0N/Aa strongly typed enumeration of common object roles. A public constructor
0N/Afor this class has been purposely omitted and applications should use one
0N/Aof the constants from this class. Although this class pre-defines a large
0N/Alist of standard roles, it is extensible so additional programmer-defined
0N/Aroles can be added in the future without needing to modify the base class.
0N/AThis class encapsulates a particular state of the Accessible object. Accessible
0N/Astates include things like "Armed", "Busy", "Checked", "Focused", etc.
0N/AThe sum of all the states of an Accessible object is called the <
A HREF="#AccessibleStateSet">AccessibleStateSet</
A>,
0N/Aand can be obtained by calling the <
TT>getAccessibleStateSet</
TT> method
0N/Aon an <
A HREF="#AccessibleContext">AccessibleContext</
A>.
0N/A<
P>The constants in this class present a strongly typed enumeration of
0N/Acommon object roles. A public constructor for this class has been purposely
0N/Aomitted and applications should use one of the constants from this class.
0N/AAlthough this class pre-defines a large list of standard roles, it is extensible
0N/Aso additional, programmer-defined roles can be added in the future without
0N/Aneeding to modify the base class.
0N/AAccessibleStateSet</
A></
H3>
0N/AThis class encapsulates a collection of states of the Accessible object
0N/Aand is obtained by calling the <
TT>getAccessibleStateSet</
TT> method on
0N/Aan <
A HREF="#AccessibleContext">AccessibleContext</
A>. Since an object
0N/Amight have multiple states (
e.g. it might be both "Checked" and "Focused"),
0N/Athis class is needed to encapsulate a collection of these states. Methods
0N/Ain the class provide for retrieving the individual <
A HREF="#AccessibleState">AccessibleStates</
A>
0N/AThis class is used to maintain a strongly typed enumeration. It is the
0N/Asuper class of both the <
A HREF="#AccessibleRole">AccessibleRole</
A> and
0N/A<
A HREF="#AccessibleState">AccessibleState</
A> classes. Programmers normally
0N/Ado not interact with this class directly, but will instead use the <
A HREF="#AccessibleRole">AccessibleRole</
A>
0N/Aand <
A HREF="#AccessibleState">AccessibleState</
A> classes.
0N/AAccessibleAction</
A></
H3>
0N/Abe supported by any object that can perform one or more actions. This interface
0N/Aprovides the standard mechanism for an assistive technology to determine
0N/Awhat those actions are as well as tell the object to perform those actions.
0N/AAny object that can be manipulated should support this interface.
0N/A<
P>Applications can determine if an object supports the AccessibleAction
0N/Ainterface by first obtaining its <
A HREF="#AccessibleContext">AccessibleContext</
A>
0N/A(see <
A HREF="#Accessible">Accessible</
A>) and then calling the <
TT>getAccessibleAction</
TT>
0N/Amethod of <
A HREF="#AccessibleContext">AccessibleContext</
A>. If the return
0N/Avalue is not null, the object supports this interface.
0N/AAccessibleComponent</
A></
H3>
0N/Ashould be supported by any object that is rendered on the screen. This
0N/Ainterface provides the standard mechanism for an assistive technology to
0N/Adetermine and set the graphical representation of an object.
0N/A<
P>Applications can determine if an object supports the AccessibleComponent
0N/Ainterface by first obtaining its <
A HREF="#AccessibleContext">AccessibleContext</
A>
0N/A(see <
A HREF="#Accessible">Accessible</
A>) and then calling the <
TT>getAccessibleComponent</
TT>
0N/Amethod of <
A HREF="#AccessibleContext">AccessibleContext</
A>. If the return
0N/Avalue is not null, the object supports this interface.
0N/AAccessibleSelection</
A></
H3>
0N/Aprovides the standard mechanism for an assistive technology to determine
0N/Awhat the current selected children are, as well as modify the selection
0N/Aset. Any object that has children that can be selected should support this
0N/Athe AccessibleSelection interface.
0N/A<
P>Applications can determine if an object supports the AccessibleSelection
0N/Ainterface by first obtaining its <
A HREF="#AccessibleContext">AccessibleContext</
A>
0N/A(see <
A HREF="#Accessible">Accessible</
A>) and then calling the <
TT>getAccessibleSelection</
TT>
0N/Amethod of <
A HREF="#AccessibleContext">AccessibleContext</
A>. If the return
0N/Avalue is not null, the object supports this interface.
0N/Afor making rich, editable text Accessible. Not all text displayed on the
0N/Ascreen is rich and editable (
e.g. text contained in buttons, labels, menus,
0N/Aetc., which users aren't expected to manipulate). However, objects containing
0N/Aeditable text must implement interface AccessibleText if they are to interoperate
0N/Awith assistive technologies.
0N/A<
P>This interface provides support for going between pixel coordinates
0N/Aand the text at a given pixel coordinate, for retrieving the letter, word,
0N/Aand sentence at, before, or after a given position in the text. This interface
0N/Aprovides support for retrieving the attributes of the character at a given
0N/Aposition in the text (font, font size, style, etc.), as well as getting
0N/Athe selected text (if any), the length of the text, and the location of
0N/A<
P>Applications can determine if an object supports the AccessibleText
0N/Ainterface by first obtaining its <
A HREF="#AccessibleContext">AccessibleContext</
A>
0N/A(see <
A HREF="#Accessible">Accessible</
A>) and then calling the <
TT>getAccessibleText</
TT>
0N/Amethod of <
A HREF="#AccessibleContext">AccessibleContext</
A>. If the return
0N/Avalue is not null, the object supports this interface.
0N/A<
H3><
A NAME="AccessibleHypertext"></
A>
0N/Ashould be supported by any object that presents hypertext information on
0N/Athe display. This interface provides the standard mechanism for an assistive
0N/Atechnology to access that text via its content, attributes, and spatial
0N/Alocation. It also provides standard mechanisms for manipulating <
A HREF="#AccessibleHyperlink">hyperlinks</
A>.
0N/AApplications can determine if an object supports the AccessibleHypertext
0N/Ainterface by first obtaining its <
A HREF="#AccessibleContext">AccessibleContext</
A>
0N/Amethod of <
A HREF="#AccessibleContext">AccessibleContext</
A>. If the return
0N/Avalue is a class which extends AccessibleHypertext, then that object supports
0N/AAccessibleHyperlink</
A></
H3>
0N/Ainterface. An object that implements this interface will be returned
0N/Aby calling the getLink method on an <
A HREF="#AccessibleHypertext">AccessibleHypertext</
A>
0N/AAccessibleValue</
A></
H3>
0N/Abe supported by any object that supports a numerical value (
e.g., a scroll
0N/Abar). This interface provides the standard mechanism for an assistive technology
0N/Ato determine and set the numerical value as well as get the minimum and
0N/A<
P>Applications can determine if an object supports the AccessibleValue
0N/Ainterface by first obtaining its <
A HREF="#AccessibleContext">AccessibleContext</
A>
0N/A(see <
A HREF="#Accessible">Accessible</
A>) and then calling the <
TT>getAccessibleValue</
TT>
0N/Amethod of <
A HREF="#AccessibleContext">AccessibleContext</
A>. If the return
0N/Avalue is not null, the object supports this interface.