Java Accessibility provides the technology that allows assistive
technologies to obtain accessible information about the user interface
objects in the Java Virtual Machine. Java Accessibility supports version
1.1 and up of the Java platform and is provided in several ways:
A Java Accessibility API toolkit that provides "boiler plate" interfaces for UI
components.
These interfaces allow the user to obtain information that is common to all
"accessible" components (such as AccessibleName and
AccessibleDescription), as well as information that is more component specific
(such as AccessibleValue and AccessibleSelection).
Utilities
that support assistive technology developers.
The accessible design of the Java Foundation Classes include the ability to
"plug in" an alternative look and feel for an application without requiring
changes to be made in the application.
The following are brief descriptions of the Java 2 Platform's accessibility
API. More information can be found in the API
documentation for
the javax.accessibility package.
Package javax.accessibility
Defines a contract between user-interface components and an assistive
technology that provides access to those components.
Interface Accessible
Interface Accessible is the main interface for the
Accessibility package.
Interface AccessibleAction
The AccessibleAction interface should be supported by any
object that can perform one or more actions.
Interface AccessibleComponent
The AccessibleComponent interface should be supported by
any object that is rendered on the screen.
Interface AccessibleHypertext
The AccessibleHypertext class is the base class for all
classes that present hypertext information on the display.
Interface AccessibleIcon
The AccessibleIcon interface should be supported by any object that has an
associated icon (for example, buttons).
Interface AccessibleSelection
The AccessibleSelection interface provides the standard mechanism for an
assistive technology to determine what the current selected children are,
as well as modify the selection set.
Interface AccessibleTableModelChange
The AccessibleTableModelChange interface describes a change to the table
model.
Interface AccessibleText
The AccessibleText interface should be implemented by all classes that
present textual information on the display.
Interface AccessibleValue
The AccessibleValue interface should be supported by any object that
supports a numerical value (for example, a scroll bar).
Class AccessibleBundle
Base class used to maintain a strongly typed enumeration.
Class AccessibleContext
AccessibleContext represents the minimum information all
accessible objects return.
Class AccessibleHyperlink
Encapsulation of a link, or set of links.
Class AccessibleRelation
Class AccessibleRelation describes a relation between the object that
implements the AccessibleRelation and one or more other objects.
Class AccessibleRelationSet
Class AccessibleRelationSet determines a component's
relation set.
Class AccessibleResourceBundle
A resource bundle containing the localized strings in the accessibility
package.
Class AccessibleRole
Class AccessibleRole determines the role of a component.
Class AccessibleState
Class AccessibleState describes a components particular state.
Class AccessibleStateSet
Class AccessibleStateSet determines a components state set.
Class AccessibleTable
Class AccessibleTable describes a user-interface component that presents
data in a two-dimensional table format.
The Java Accessibility Utilities are delivered by Sun as a separately downloadable package for use by assistive technology vendors in their
products which provide access to Java applications running in a Java Virtual Machine. This package provides the necessary support for assistive
technologies to locate and query user interface objects inside a Java application running in a Java Virtual Machine. It also provides support for
installing "event listeners"
into these objects. These event listeners allow objects to learn about specific events occurring in other objects using the peer-to-peer approach
defined by the delegation event model introduced in JDK1.1.
To date the Accessibility Utilities are as follows.
The interactive user interface components provide a full set of
keyboard bindings that enable mouseless navigation, edit, and control
of the components. No special efforts are required of the developer to
enable these capabilities and if the developer so desires they can
easily change any keybinding.
The Java Foundation Classes (JFC) implement a Pluggable Look and Feel
architecture. This architecture allows non-visual manifestations of a
user interface to replace or enhance the visual presentation of an
application. The expression of the user interface is separated from the
underlying structure and data of each individual component. This is
accomplished by separating the user interface of the component from its
model. The model of a component is the structure which encapsulates the
state and information that is presented to the user by the user interface.
More information on this architecture
can be found in The
Swing Connection.
*As used on this web site, the terms "Java Virtual Machine"
or "JVM" mean a virtual machine for the Java platform.