====================================
Tka11y - Accessibility-aware Tkinter
====================================

This module makes it possible for accessibility (a11y) clients (e.g., audible
readers, magnifiers, etc.) to get accessibility data (name, description,
role, actions, etc.) from the Tk widgets of Python applications that
use Tkinter_. It also allows automated GUI application testers that use the
accessibility interface (such as dogtail_, LDTP_, and Accerciser_) to control
the Tk widgets of these applications.

Currently, accessibility is only available via ATK <=> AT-SPI on Linux.
Sorry, no Windows MSAA support.

Usage
=====

Import Tka11y using the two commonly employed methods for importing Tkinter::

    import Tka11y as Tkinter

or ::

    from Tka11y import *

In the first case, use ``Tkinter.`` to access Tkinter definitions.  In the
second case, the Tkinter definitions are in the global scope as expected.
In either case, use Tkinter definitions as you would have done before;
Tka11y does not change the Tkinter API in any way.

Details
=======

This module modifies the original Tkinter module in memory, making all
Tk widgets accessibility-aware.

Note that, because it modifies the original Tkinter module (in memory),
other modules that use Tkinter (e.g., Pmw_) reap the benefits automagically
as long as Tka11y is imported at some point before the first Tk object
is created.

Tka11y uses Papi_, the Python Accessibility Programming Interface, which in
turn uses ATK_, the GNOME Accessibility Toolkit, to expose Tkinter_ widgets
to AT-SPI, the Assistive Technologies Service Provider Interface. This
allows a Tkinter application's widgets to be viewed and/or controlled by a
variety of assistive technologies such as Orca_ and Accerciser_, and
automated GUI testing tools such as dogtail_ and LDTP_. These client tools
usually use either cspi_ (C) or pyatspi_ (Python).

.. _Tkinter: http://tkinter.unpythonic.net/wiki/
.. _Pmw: http://pmw.sourceforge.net/
.. _Papi: http://ocemp.sourceforge.net/papidown.html
.. _ATK: http://library.gnome.org/devel/atk/
.. _Orca: http://live.gnome.org/Orca
.. _Accerciser: http://live.gnome.org/Accerciser
.. _dogtail: http://people.redhat.com/zcerza/dogtail/
.. _LDTP: http://ldtp.freedesktop.org/wiki/
.. _cspi: http://library.gnome.org/devel/at-spi-cspi/
.. _pyatspi: http://live.gnome.org/GAP/PythonATSPI
