> > 1) Do I continue to add the names (blank or not) to the
> > controls or should I attempt to find another (possibly
> > hackish) way of getting the proper information to
> > Window-Eyes?
> Option #1 sounds fine to me, but could you clarify? What wxWidgets
> method are you using to set the name? Is there any way a
> non-WE user
> would ever know the difference?
I'm just going through, looking for all of the control creations and
adding a SetName() using the text from the (usually) preceeding
wxStaticText like this:
pStaticText = new wxStaticText(this, -1, _("Amplification (dB):"),
wxDefaultPosition, wxDefaultSize, 0);
item2->Add(pStaticText, 0, wxALIGN_CENTER_VERTICAL | wxALL, 5);
wxTextCtrl * item4 = new wxTextCtrl(this, ID_AMP_TEXT, wxT(""),
wxDefaultPosition, wxSize(60, -1),
item2->Add(item4, 0, wxALIGN_CENTER_VERTICAL | wxALL, 5);
pBoxSizer_Dialog->Add(item2, 0, wxALIGN_CENTER | wxALL, 5);
Non-WE users should never know it's being done. I don't believe
the name is made "viewable" by Widgets anywhere and it only seems to
be used for "programmatic" reasons.
They should never know the difference.
> > 2) If I'm to continue adding names, do I use a blank name
> > or do I specify the real one? Using the real one
> > guarantees that the user will know exactly what the
> > field is. Whereas using blanks will allow the
> > screen reader to figure out the name automatically,
> > with the possibility (but unlikelyhood) of getting it
> > wrong.
> I'm all in favor of making Audacity totally accessible...could you
> explain what negative side-effects would be? Will it change
> for non-WE users? Or is the source less readable? What's
> the downside?
Both would require adding the SetName() call as in the example above,
but one would use the actual name of the control (like above) and the
other would use something like:
The first example is more strict about what the Audacity developers
think the accessibility user should be presented and the second
example offloads that responsibility to the tool (screen reader)
In both cases, it will place an extra bit of tedium onto the Audacity
developers as they would have to be diligent about specifying a name
either through the SetName() or as the last parameter of the control
The drawback of specifying the specific text is that it will be harder
to maintain. If the text in the wxStaticText gets changed, then it
would also have to be changed in the related control.
The drawback for the null name is that the accessibility tool might
not be able to figure out what the name should be. This IS what will
happen for the selection bar since the labels follow the control rather
than preceed it. (But, cases like that could be dealt with individually
and shouldn't affect which way to go.)
I should point out that there are more accessibility tools than just
WE and Jaws, so I'm not sure how either method (specific or null text)
will be handled by them.