[brailleblaster] Re: Advice requested on accessibility for the blind

  • From: Alex Jurgensen <asquared21@xxxxxxxxx>
  • To: brailleblaster@xxxxxxxxxxxxx
  • Date: Sat, 27 Aug 2011 17:32:51 -0700

Hi Richard,

This is a matter of preference.

Most software products I work with have only a audio file played to indicated 
success or failure. However, this is the same for sighted and blind users alike 
and is independent of any screen reader.

Take iTunes for examp.e. It plays a tritone whenever an operation completes.

You could take this approach. Just note  that it is broader than just screen 
reader users.

It may also be useful to sighted people who walk away from their computers or 
who read papers while waiting for operations to complete.

I hope this helps.

Regards,
Alex,

Alex Jurgensen,
VoiceOver Specialist,

Visit my blog at: http://www.outofthedarkness.vipbc.org/

On 2011-08-27, at 5:17 PM, Richard Baldwin wrote:

> Question: When you are using a screen reader such as NVDA and you click a 
> button to write an output file, is there usually some spoken confirmation 
> that the file has been written, or at least that an attempt was made to write 
> the file, and if so, how is that accomplished?
> 
> Thanks,
> Dick B.
> 
> On Sat, Aug 27, 2011 at 6:47 PM, <chris@xxxxxxxxxxxxx> wrote:
> 
> Glad to help!
> Chris
> 
> > Chris, StackLayout was exactly what I needed. You have been very helpful.
> >
> > Thanks,
> > Dick Baldwin
> >
> > On Sat, Aug 27, 2011 at 2:45 PM, Richard Baldwin
> > <baldwin@xxxxxxxxxxxxxxx>wrote:
> >
> >> Will do.
> >> Thanks,
> >> Dick B.
> >>
> >>
> >> On Sat, Aug 27, 2011 at 2:09 PM, Chris von See
> >> <chris@xxxxxxxxxxxxx>wrote:
> >>
> >>> ** Take a look at StackLayout - that will allow you to pr-create your
> >>> pages and easily switch between them...
> >>>
> >>> Cheers
> >>> Cheis
> >>> --
> >>> Sent from my Android phone.
> >>>
> >>>
> >>> Richard Baldwin <baldwin@xxxxxxxxxxxxxxx> wrote:
> >>>>
> >>>> Hi Chris,
> >>>>
> >>>> Thanks for the response. See my comments inline below.
> >>>>
> >>>> On Sat, Aug 27, 2011 at 11:44 AM, Chris von See
> >>>> <chris@xxxxxxxxxxxxx>wrote:
> >>>>
> >>>>> Hi Richard -
> >>>>>
> >>>>> I got a chance to take a look at your code... I'm not totally sure I
> >>>>> understand if your goal is to make the program accessible or just to
> >>>>> perform
> >>>>> some action when the user selects something from the list, but here
> >>>>> are some
> >>>>> thoughts:
> >>>>>
> >>>>
> >>>> rgb] My ultimate goal is to expose a new GUI page that contains lots
> >>>> of
> >>>> controls (text boxes, buttons, etc.) when the user selects an item
> >>>> from the
> >>>> list. I do want it to be accessible to blind students because my
> >>>> purpose is
> >>>> to write a GUI interface for my SVG Graphics Library (see
> >>>> http://cnx.org/content/m39607/latest/). Right now, I am trying to work
> >>>> out an overall structure that will be accessible. I have never used
> >>>> the SWT
> >>>> before, nor have I ever written a Java program with accessibility in
> >>>> mind,
> >>>> so I am plowing new ground in two areas with this one.
> >>>>
> >>>>>
> >>>>> -- If your goal is accessibility, take a look at the
> >>>>> org.eclipse.swt.accessibility package.  Many controls have a
> >>>>> getAccessible()
> >>>>> method that returns an Accessible object which allows you to do
> >>>>> various
> >>>>> accessibility-related things.  Look at the Accessible object's
> >>>>> methods and
> >>>>> in particular the types of accessibility-related listeners you can
> >>>>> add,
> >>>>> which would allow you to (for example) change the description that is
> >>>>> spoken
> >>>>> for each list item or create the relation between the list and a
> >>>>> descriptive
> >>>>> label ("labelA") so that the label is spoken when the list gains
> >>>>> focus.
> >>>>>
> >>>>
> >>>> rgb] Thanks, I will take a look at it.
> >>>>
> >>>>
> >>>>>   Take a look at the  snippets for the package at
> >>>>> http://help.eclipse.org/helios/index.jsp?topic=/org.eclipse.platform.doc.isv/reference/api/org/eclipse/swt/accessibility/package-summary.htmlto
> >>>>> get some examples.
> >>>>>
> >>>>
> >>>> rgb] Will do.
> >>>>
> >>>>>
> >>>>> -- Using List.addSelectionListener() is the way you would be notified
> >>>>> of
> >>>>> user list item selection.  SWT should speak each item as the user
> >>>>> traverses
> >>>>> the list.  You can modify what's spoken by setting listeners via
> >>>>> List.getAccessible().
> >>>>>
> >>>>
> >>>> rgb] I have discovered that the following approach to event handling
> >>>> seems to work better in the sense that with this approach, the new
> >>>> page is
> >>>> not exposed until the user presses the Enter key on the selected item:
> >>>>
> >>>>     myCombo.addListener (SWT.DefaultSelection, new Listener () {
> >>>>       public void handleEvent (Event e) {
> >>>>         //event handler code goes here
> >>>>       }//end handleEvent
> >>>>     });
> >>>>
> >>>>>
> >>>>> -- If I'm reading your code correctly, you're creating your list
> >>>>> using
> >>>>> the Shell as the parent, and then immediately creating a "page"
> >>>>> Composite
> >>>>> with the same Shell as parent.  I didn't run your code, but I *think*
> >>>>> this
> >>>>> will overlay your List with the contents of the "page" Composite.
> >>>>>
> >>>>
> >>>> rgb] Actually it displays the new page below the Combo box, but the
> >>>> approach that you suggest below might work better. I really don't want
> >>>> to
> >>>> dispose of the old page in order to expose a new one.
> >>>>
> >>>>
> >>>>> Try creating a "base" Composite with the shell as parent, then set a
> >>>>> layout on that "base", add your list with the "base" as parent and
> >>>>> then add
> >>>>> your "page" Composite as another child of that same "base".
> >>>>> Depending on
> >>>>> what layout manager you use the controls will appear in different
> >>>>> relative
> >>>>> positions; you might try RowLayout with SWT.VERTICAL so that the list
> >>>>> appears above the "page".
> >>>>>
> >>>>
> >>>> rgb] I will definitely try this.
> >>>>
> >>>>>
> >>>>> -- When the list item is changed you don't need to dispose your
> >>>>> "page"
> >>>>> Composite - just set the label and foreground color (for the text) or
> >>>>> background color (for the background of the "page").
> >>>>>
> >>>>
> >>>> rgb] Good. As I mentioned earlier, I don't want to dispose of the old
> >>>> page when I expose a new one. I would like for the user to be able to
> >>>> return
> >>>> to the page with the contents of the text boxes, etc., still intact.
> >>>>
> >>>>>
> >>>>> -- Instead of allocating red, green and blue Color objects using new
> >>>>> Color(r, g, b), try using the static Color.RED, Color.GREEN and
> >>>>> Color.BLUE -
> >>>>> these have the same red, green and blue color settings as what you
> >>>>> created.
> >>>>>  You also won't need to dispose these static Color objects when your
> >>>>> program
> >>>>> exits.
> >>>>>
> >>>>
> >>>> rgb] Thanks. Good point.
> >>>>
> >>>>>
> >>>>> Hope this helps.  I'll try to answer any other questions you may
> >>>>> have,
> >>>>> but I'll be in and out this weekend so it may take me a while to get
> >>>>> back to
> >>>>> you.
> >>>>>
> >>>>
> >>>> rgb] I really do appreciate your feedback. If I am successful in this
> >>>> effort, I will publish a free Java program that blind students can use
> >>>> to
> >>>> draw technical diagrams for their physics and math courses. Actually,
> >>>> I have
> >>>> already published such a program, but the user interface is very
> >>>> difficult
> >>>> because it requires some knowledge of programming syntax.  My
> >>>> objective is
> >>>> to make it available to every student with an easy-to-use GUI
> >>>> interface,
> >>>> even if they  don't know about programming syntax.
> >>>>
> >>>> Thanks,
> >>>> Dick B.
> >>>>
> >>>>>
> >>>>>
> >>>>> Cheers
> >>>>> Chris
> >>>>>
> >>>>>
> >>>>>
> >>>>> On Aug 26, 2011, at 5:32 PM, Richard Baldwin wrote:
> >>>>>
> >>>>> John,
> >>>>>
> >>>>> This is my second attempt to send this. The previous attempt was
> >>>>> rejected because the zip file was too large. I had included the SWT
> >>>>> library
> >>>>> in it, which is what made it so large. Since you probably have that
> >>>>> already,
> >>>>> I deleted it from the zip file and am going to try again with a much
> >>>>> smaller
> >>>>> zip file.
> >>>>>
> >>>>> Thanks,
> >>>>> Dick Baldwin
> >>>>>
> >>>>> On Fri, Aug 26, 2011 at 7:23 PM, Richard Baldwin <
> >>>>> baldwin@xxxxxxxxxxxxxxx> wrote:
> >>>>>
> >>>>>> Hi John,
> >>>>>>
> >>>>>> I'm afraid that given my current lack of knowledge of SWT, I would
> >>>>>> be
> >>>>>> completely overwhelmed by the BrailleBlaster code.
> >>>>>>
> >>>>>> However, I have attached a zip file containing a simple page
> >>>>>> switcher
> >>>>>> program using SWT. If you could take the time to import it into
> >>>>>> Eclipse (or
> >>>>>> however you program using SWT) and let me know if the structure that
> >>>>>> I am
> >>>>>> using could be successfully navigated by a blind person, or how I
> >>>>>> should
> >>>>>> modify it to achieve that goal, I would greatly appreciate it.
> >>>>>>
> >>>>>> The GUI contains a list of three items. (I could make it a Combo or
> >>>>>> three radio buttons.) When the user selects one of the items in the
> >>>>>> list, a
> >>>>>> Composite object opens below the list. Right now, the Composite page
> >>>>>> simply
> >>>>>> contains a label, but eventually I intend for each new page to be a
> >>>>>> significant GUI in its own right.
> >>>>>>
> >>>>>> By the way, I had to rename a couple of build.bat files to get the
> >>>>>> zip
> >>>>>> file past the GMail virus police.
> >>>>>>
> >>>>>> Thanks,
> >>>>>> Dick Baldwin
> >>>>>>
> >>>>>>
> >>>>>>  On Fri, Aug 26, 2011 at 6:45 PM, John J. Boyer <
> >>>>>> john.boyer@xxxxxxxxxxxxxxxxx> wrote:
> >>>>>>
> >>>>>>> Dick,
> >>>>>>>
> >>>>>>> Accessibility with SWT is almost automatic. BrailleBlaster does not
> >>>>>>> use
> >>>>>>> any particular accessibility features now, though it might use the
> >>>>>>> accessibility package in SWT later. In the Bfailloeblasterr menu,
> >>>>>>> BBMenu.java there is a listener for each item. The event is not
> >>>>>>> sent
> >>>>>>> until the enter key is pressed on that item. There are SWT widgets
> >>>>>>> for
> >>>>>>> handling lists. These will be used later, for example in handling
> >>>>>>> the
> >>>>>>> list of recent documents.
> >>>>>>>
> >>>>>>> If you have Mercurial you can get the source of BrailleBlaster from
> >>>>>>> its
> >>>>>>> googlecode page. BBMenu.java is in org.brailleblaster.wordprocessor
> >>>>>>> I
> >>>>>>> could also send you this class privately as an attachmennt, if you
> >>>>>>> wish.
> >>>>>>>
> >>>>>>> John
> >>>>>>>
> >>>>>>> On Fri, Aug 26, 2011 at 06:03:09PM -0500, Richard Baldwin wrote:
> >>>>>>> > I know this is off topic for this list, but I also know that
> >>>>>>> there
> >>>>>>> are
> >>>>>>> > several excellent SWT programmers that frequent this list who
> >>>>>>> probably know
> >>>>>>> > the answer to my question.
> >>>>>>> >
> >>>>>>> > The objective is to make it possible for a blind user of an SWT
> >>>>>>> GUI
> >>>>>>> to
> >>>>>>> > navigate through a list of items, such as might be found in a
> >>>>>>> Combo,
> >>>>>>> a List,
> >>>>>>> > or perhaps a set of Radio buttons, and cause an event to be fired
> >>>>>>> for one
> >>>>>>> > and only one of the items in the list when that item is chosen.
> >>>>>>> >
> >>>>>>> > It looks to me like using the following code to register a
> >>>>>>> listener
> >>>>>>> on each
> >>>>>>> > item in the list causes each item to fire an event when the arrow
> >>>>>>> keys are
> >>>>>>> > used to traverse the list:
> >>>>>>> >
> >>>>>>> > addSelectionListener(new SelectionAdapter()
> >>>>>>> >
> >>>>>>> > I guess what I am looking for is something like an ActionListener
> >>>>>>> in
> >>>>>>> the AWT
> >>>>>>> > and Swing that can be fired by pressing the Return key after the
> >>>>>>> arrow keys
> >>>>>>> > have been used to choose a specific item.
> >>>>>>> >
> >>>>>>> > I am finding that learning the SWT and trying to achieve
> >>>>>>> accessibility for
> >>>>>>> > blind users at the same time is something of a challenge.
> >>>>>>> >
> >>>>>>> > If you prefer to contact me and have this discussion off list,
> >>>>>>> that
> >>>>>>> will be
> >>>>>>> > OK with me.
> >>>>>>> >
> >>>>>>> > Thanks,
> >>>>>>> > Dick Baldwin
> >>>>>>> >
> >>>>>>> > --
> >>>>>>> > Richard G. Baldwin (Dick Baldwin)
> >>>>>>> > Home of Baldwin's on-line Java Tutorials
> >>>>>>> > http://www.DickBaldwin.com
> >>>>>>> >
> >>>>>>> > Professor of Computer Information Technology
> >>>>>>> > Austin Community College
> >>>>>>> > (512) 223-4758
> >>>>>>> > mailto:Baldwin@xxxxxxxxxxxxxxx
> >>>>>>> > http://www.austincc.edu/baldwin/
> >>>>>>>
> >>>>>>> --
> >>>>>>> John J. Boyer; President, Chief Software Developer
> >>>>>>> Abilitiessoft, Inc.
> >>>>>>> http://www.abilitiessoft.com
> >>>>>>> Madison, Wisconsin USA
> >>>>>>> Developing software for people with disabilities
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>
> >>>>>>
> >>>>>> --
> >>>>>> Richard G. Baldwin (Dick Baldwin)
> >>>>>> Home of Baldwin's on-line Java Tutorials
> >>>>>> http://www.DickBaldwin.com
> >>>>>>
> >>>>>> Professor of Computer Information Technology
> >>>>>> Austin Community College
> >>>>>> (512) 223-4758
> >>>>>> mailto:Baldwin@xxxxxxxxxxxxxxx
> >>>>>> http://www.austincc.edu/baldwin/
> >>>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>> --
> >>>>> Richard G. Baldwin (Dick Baldwin)
> >>>>> Home of Baldwin's on-line Java Tutorials
> >>>>> http://www.DickBaldwin.com
> >>>>>
> >>>>> Professor of Computer Information Technology
> >>>>> Austin Community College
> >>>>> (512) 223-4758
> >>>>> mailto:Baldwin@xxxxxxxxxxxxxxx
> >>>>> http://www.austincc.edu/baldwin/
> >>>>>  <PageSwitcher01.zip>
> >>>>>
> >>>>>
> >>>>>
> >>>>
> >>>>
> >>>> --
> >>>> Richard G. Baldwin (Dick Baldwin)
> >>>> Home of Baldwin's on-line Java Tutorials
> >>>> http://www.DickBaldwin.com
> >>>>
> >>>> Professor of Computer Information Technology
> >>>> Austin Community College
> >>>> (512) 223-4758
> >>>> mailto:Baldwin@xxxxxxxxxxxxxxx
> >>>> http://www.austincc.edu/baldwin/
> >>>>
> >>>
> >>
> >>
> >> --
> >> Richard G. Baldwin (Dick Baldwin)
> >> Home of Baldwin's on-line Java Tutorials
> >> http://www.DickBaldwin.com
> >>
> >> Professor of Computer Information Technology
> >> Austin Community College
> >> (512) 223-4758
> >> mailto:Baldwin@xxxxxxxxxxxxxxx
> >> http://www.austincc.edu/baldwin/
> >>
> >
> >
> >
> > --
> > Richard G. Baldwin (Dick Baldwin)
> > Home of Baldwin's on-line Java Tutorials
> > http://www.DickBaldwin.com
> >
> > Professor of Computer Information Technology
> > Austin Community College
> > (512) 223-4758
> > mailto:Baldwin@xxxxxxxxxxxxxxx
> > http://www.austincc.edu/baldwin/
> >
> 
> 
> 
> 
> 
> 
> -- 
> Richard G. Baldwin (Dick Baldwin)
> Home of Baldwin's on-line Java Tutorials
> http://www.DickBaldwin.com
> 
> Professor of Computer Information Technology
> Austin Community College
> (512) 223-4758
> mailto:Baldwin@xxxxxxxxxxxxxxx
> http://www.austincc.edu/baldwin/

Other related posts: