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.
Import Tka11y using the two commonly employed methods for importing Tkinter:
import Tka11y as Tkinter
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.
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).