Re: gtk accessibility on win32



Hi Allin,

Currently, GTK+ apps aren't accessible on Win32, because the GTKWidgets do not use standard Windows controls, and so screen readers can not identify them or make any sense of the information they contain.

Basically, I guess what you'd need would be an ATK to MSAA bridge. You would need Gail installed, since it provides the ATK implementations for all the standard GTK+ widgets. You wouldn't need libgail-gnome.

Creating an ATK to MSAA bridge wouldn't be trivial-- you'd have to create MSAA proxy objects that proxy for ATK objects. Not insurmountable, but not trivial either. The fact that MSAA only has one real interface would make your life a whole lot easier. While ATK has several interfaces, AtkAction, AtkComponent, AtkImage, AtkText, etc. MSAA has one interface which is most analogous to the basic AtkObject interface.

I guess the other issue is how complex is your app. If it has some simple text controls and menus, then making it accessible on Win32 using the methods I described above is probably doable in a few weeks. However, if you have any complex documents, such as HTML, or rich text, then the task would be nearly impossible, since MSAA doesn't define any interfaces for complex documents, and screen readers all sorta have their own notion of what MSAA should provide for complex documents such as web pages in IE and Adobe PDF files in Adobe Reader.

I don't mean to paint an overly bleak picture here-- just trying to provide some context and info about the current landscape. Some more details about the complexity your app might be helpful.

If you decide that GTK+ is too complex to make accessible on Win32, there are a few other options worth considering for your GUI:

Java : Java Swing is accessible on both Linux and Windows (with JAWS)
The Eclipse Widget Toolkit- Is apparently somewhat accessible on both Windos and Linux, although I have no experience with it

HTH

Marc

At 09:24 PM 9/15/2004, Allin Cottrell wrote:
Hello all,

I need to make the win32 version of my gtk app accessible, in particular for the visually impaired (vocalization of menus and so on). After googling some I have an initial notion of how to proceed, but I'd much appreciate any comments from those who know more about the technology. Here are my current assumptions:

1. I need atk.  That's fine, Tor Lillqvist has given us an atk.dll.

2. Looks like I need GAIL, according to the logic set out at

http://developer.gnome.org/projects/gap/guide/gad/

So I need to port gail to win32, right? But I guess I don't need libgail-gnome, since it is gnome-specific and my app is "pure" GTK.

3. Then I need to make something like a port of atk-bridge, and I need to find the part of atk-bridge where it actually talks to a speech synthesizer (is it in fact atk-bridge that does that?) and add/substitute a component that talks to, say, the Windows speech API (as implemented in sapi.dll)

(Of course, if I succeed in this I'll contribute the code to GTK/gnome, if it's wanted.)

--
Allin Cottrell
Department of Economics
Wake Forest University, NC
_______________________________________________
gnome-accessibility-list mailing list
gnome-accessibility-list gnome org
http://mail.gnome.org/mailman/listinfo/gnome-accessibility-list




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]