Open Source Digital Talking Book Player

Discussions around miscellaneous technologies and projects for the general membership.
Post Reply
User avatar
WelchTC
Senior Member
Posts: 2085
Joined: Wed Sep 06, 2006 8:51 am
Location: Kaysville, UT, USA
Contact:

#21

Post by WelchTC »

cannona wrote:Well, I did some checking and it appears as though QT does not use native widgets. It only emulates them. I also downloaded and tried a couple QT apps just in case, and they were not accessible.

Aaron
Aaron,

You said that java was a doable but could be problematic. Java does not use the windows widget set either. What makes Java work when QT does not work? Also, what will some of the new technologies coming from Microsoft such as silverlight do for screen readers?

Tom
User avatar
thedqs
Community Moderators
Posts: 1042
Joined: Wed Jan 24, 2007 8:53 am
Location: Redmond, WA
Contact:

#22

Post by thedqs »

tomw wrote:One comment in favor of Java is the platform independence. Building in Python still requires you to call specific platform GUI calls. However, I love the idea. Who wants to participate?

Tom

One possibility is C# or another .NET language to keep the platform independence (through mono for Linux and Mac) and I believe it works with QT as well.
- David
cannona-p40
Member
Posts: 79
Joined: Sat May 19, 2007 2:32 pm
Location: Iowa City, IA

#23

Post by cannona-p40 »

tomw wrote:Aaron,

You said that java was a doable but could be problematic. Java does not use the windows widget set either. What makes Java work when QT does not work? Also, what will some of the new technologies coming from Microsoft such as silverlight do for screen readers?

Tom

Hi Tom.

Java has something known as the Java Access Bridge that allows the screenreader to access the on screen information, but it is something that has to be enabled by the developer of the aplet, so you can imagine how often this gets done. I can't give much more details than that, as I've never learned Java.

I did some research on Silverlight and there isn't much word on its accessibility, though apparently some of the developers are at least giving it some thought. I suppose we'll see.

Aaron
kalebpederson
New Member
Posts: 32
Joined: Tue Jul 31, 2007 10:16 pm

Qt accessibility support

#24

Post by kalebpederson »

cannona wrote:Well, I did some checking and it appears as though QT does not use native widgets. It only emulates them. I also downloaded and tried a couple QT apps just in case, and they were not accessible.
Aaron
Qt does use native widgets and does support accessibility. Per the documentation, it provides "support for assistive tools such as screen readers and braille displays." It just doesn't come automatically, as it doesn't come automatically in all native windows apps either (AFAIK). Here is some documentation on how it's used:

http://doc.trolltech.com/4.3/accessible.html

And specifically:

http://doc.trolltech.com/4.3/accessible ... essibility

I've never tried it before, but it does sound like support is implemented for most built in widgets, but because it's a plugin based system, typically, it probably has to be compiled in. I'll take a look and see what I can find, but feel free to investigate more in the mean time. I would guess that we wouldn't need to do too much as you can often use custom widgets that are composed of builtin widgets, rather than implementing something from scratch... although both would work.

--kpederson
gkearney-p40
New Member
Posts: 15
Joined: Tue Aug 28, 2007 5:18 pm

#25

Post by gkearney-p40 »

kpederson wrote:Qt does use native widgets and does support accessibility. Per the documentation, it provides "support for assistive tools such as screen readers and braille displays." It just doesn't come automatically, as it doesn't come automatically in all native windows apps either (AFAIK). Here is some documentation on how it's used:

http://doc.trolltech.com/4.3/accessible.html

And specifically:

http://doc.trolltech.com/4.3/accessible ... essibility

I've never tried it before, but it does sound like support is implemented for most built in widgets, but because it's a plugin based system, typically, it probably has to be compiled in. I'll take a look and see what I can find, but feel free to investigate more in the mean time. I would guess that we wouldn't need to do too much as you can often use custom widgets that are composed of builtin widgets, rather than implementing something from scratch... although both would work.

--kpederson

I'm sorry to report that QT does not support VoiceOVer accessibility in the Macintosh platform. None of the controls are reachable items report as "unkonwn" window navigation does not work.

Greg
cannona-p40
Member
Posts: 79
Joined: Sat May 19, 2007 2:32 pm
Location: Iowa City, IA

#26

Post by cannona-p40 »

kpederson wrote:Qt does use native widgets and does support accessibility. Per the documentation, it provides "support for assistive tools such as screen readers and braille displays." It just doesn't come automatically, as it doesn't come automatically in all native windows apps either (AFAIK). Here is some documentation on how it's used:

http://doc.trolltech.com/4.3/accessible.html

And specifically:

http://doc.trolltech.com/4.3/accessible ... essibility

I've never tried it before, but it does sound like support is implemented for most built in widgets, but because it's a plugin based system, typically, it probably has to be compiled in. I'll take a look and see what I can find, but feel free to investigate more in the mean time. I would guess that we wouldn't need to do too much as you can often use custom widgets that are composed of builtin widgets, rather than implementing something from scratch... although both would work.

--kpederson

Wow. I feel dumb. I never thought about just doing a search on accessibility and qt 4. Looks like you are right. This is very good news. It also looks like it supports accessibility on the mac as well.

Aaron
cannona-p40
Member
Posts: 79
Joined: Sat May 19, 2007 2:32 pm
Location: Iowa City, IA

#27

Post by cannona-p40 »

gkearney wrote:I'm sorry to report that QT does not support VoiceOVer accessibility in the Macintosh platform. None of the controls are reachable items report as "unkonwn" window navigation does not work.

Greg

Hi Greg. Were you using an application with accessibility hooks? Based on the web page posted above, as well as a few others, QT claims to support accessibility on the Mac.
gkearney-p40
New Member
Posts: 15
Joined: Tue Aug 28, 2007 5:18 pm

#28

Post by gkearney-p40 »

I have no idea I just downloaded the open source QT and tired the samples, none worked. In the Cocoa environment things are accessible out of the box but there are thing u can do to improve the usage.
kalebpederson
New Member
Posts: 32
Joined: Tue Jul 31, 2007 10:16 pm

How to configure Qt to support accessibility

#29

Post by kalebpederson »

gkearney wrote:I have no idea I just downloaded the open source QT and tired the samples, none worked. In the Cocoa environment things are accessible out of the box but there are thing u can do to improve the usage.
I don't know exactly how it works, but the documentation indicates that it's purposefully a plugin system so that there is no performance penalty for standard users. I know that Qt does use Cocoa on Mac, I've just never had to go the accessibility route.

OK, I just figured it out. Try the following, assuming you're on Linux or Mac:

The accessibility plugin should be in:

$INSTALLDIR/plugins/accessible/libqtaccessiblewidgets.so

But, you also have to configure the examples to use the plugin, so go to the .pro file for the example that you want to try and add the following line near the top:

Code: Select all

QTPLUGIN      += qtaccessiblewidgets
Then re-run qmake and make. That will link the accessibility library in.

As long as the plugin is in your library path, it should work. Just to be sure:

Code: Select all

$ export LD_LIBRARY_PATH=$INSTALLDIR/plugins/accessible/libqtaccessiblewidgets.so
$ ldd ./yourExample | grep accessible
        libqtaccessiblewidgets.so => /usr/lib/qt4/plugins/accessible/libqtaccessiblewidgets.so (0xb7ec9000)
I also verified that the shared library was opened when running the example:

Code: Select all

# lsof | grep <pidOfMyProg> | grep accessible
mdi       19173   kibab  mem       REG        3,6    205524   12001561 /usr/lib/qt4/plugins/accessible/libqtaccessiblewidgets.so
I think this implies that any truly custom widgets (eg. any widget not composed of native widgets) would have to be written in C++, even if we were to use PyQt, but the above shared library works with all the builtin widgets, and the number of truly custom widgets is usually minimal (at least for the programs I have done).

Let me know how it goes.

--kpederson
cannona-p40
Member
Posts: 79
Joined: Sat May 19, 2007 2:32 pm
Location: Iowa City, IA

#30

Post by cannona-p40 »

Well, I suppose it is safe to assume then that QT is the best option. I will continue to work on the classes to parse the XML. I'll also draw up an outline of the structure of the application and post that here.


Thanks.

Aaron
Post Reply

Return to “Other Member Technologies”