[brailleblaster] Re: Is there a library for context-sensitive help?

  • From: "qubit" <lauraeaves@xxxxxxxxx>
  • To: <brailleblaster@xxxxxxxxxxxxx>
  • Date: Sat, 26 Feb 2011 04:04:27 -0600

I agree that mouseOver is not the best vehicle.  I have gotten it to work 
several times, but can never remember from one menu to the next what obscure 
jaws keystroke I used to get hold of it.  It is awkward.    In jaws you type 
a command to draw the dropdown menu over the page and then use the jaws 
cursor to find and click on the desired option.  Depending on what else is 
on that page, the menu may or may not be well defined.

Tooltips are better.
--le

----- Original Message ----- 
From: "Michael Whapples" <mwhapples@xxxxxxx>
To: <brailleblaster@xxxxxxxxxxxxx>
Sent: Saturday, February 26, 2011 2:11 AM
Subject: [brailleblaster] Re: Is there a library for context-sensitive help?


I hadn't looked into tooltips very far, but if you want them on menu items 
then it may be a bit more work as setToolTipText is a method of 
org.eclipse.swt.widgets.Control and so any subclass, MenuItem is not a 
subclass of Control so does not have the method.

However tooltips are trivial to implement and as I state below are 
accessible on all platforms, so if we could live without this in menus an a 
few other control types then this is probably the easiest option.

I have confirmed that tooltips of buttons in SWT work with voiceover. I also 
remember tooltips working with window-eyes so I think its a matter of 
knowing how the screen reader is to be made to speak them.

Mouseover alone would be the wrong thing to listen for (IE. there would need 
to be a non-mouse way as well, may be the keyboard). Tooltips deal with all 
of that as I note. If not using tooltips then what would we be listening 
for? Remember if its going to be easy to learn then it must be obvious how 
to get this extra help, possibly it should not be different to other things 
on that platform.

Michael Whapples
On 26 Feb 2011, at 07:12, John J. Boyer wrote:

> Tooltips sound interesting. I haven't used them in Windows because I
> don't know how to get Jaws to show them. I'll check. BrailleBlaster will
> have a toolbar. The tips will work on this, but we also need something
> that works on ordinary menu items.
>
> My personal opinion is that we should avoid mouse-over. They are hard to
> get to work in Jaws, and probably in other screenreaders also. I've
> never been able to get one to work, and a very experienced person told
> me that she has never been able to get mouse-over to jwork without
> actually using a mouse.
>
> John
>
> On Sat, Feb 26, 2011 at 06:42:59AM +0000, Michael Whapples wrote:
>> I have kept quiet partly as I am not fully sure exactly what is wanted
>> (IE. how is context sensitive help to be shown, how is it to be
>> activated, etc).
>>
>> Chris made one comment which I may be able to help with, when he
>> mentioned it being from a mouse over event. If the context sensitive
>> help is only a sentence or so then might a tooltip be sufficient?
>> Tooltips should work fine with screen readers, you set the tooltip on
>> the control itself (eg. control.setToolTipText("The tool tip"); ) and I
>> don't think you will need to deal with event handling for the tool tips.
>>
>> Some screen readers may need prompting to speak the tooltip (I think
>> orca by default does not speak tooltips but pressing ctrl+f1 will get it
>> to speak the tool tip).
>>
>> Michael Whapples
>> On 26/02/11 06:26, Chris von See wrote:
>>> Although I've never tried it, I don't think you can define a help key
>>> binding for help at the Composite level (for example) and then expect
>>> to put the cursor in a form field defined in that Composite and press
>>> the help key to get context-sensitive help. I'm honestly not sure,
>>> though, so maybe it'd work...
>>>
>>> Here's an example of one way to implement context-sensitive help in
>>> SWT. This (or rather similar methods not involving hard-coded help
>>> text) is the way I've seen it done most:
>>>
>>> http://www.java2s.com/Code/Java/SWT-JFace-Eclipse/Demonstratesvariouslisteners.htm
>>>
>>>
>>> Look for the calls to "addHelpListener()", the "setData()" calls and
>>> the "helpRequested()" method.
>>>
>>> You can also catch mouseover events and display help once the user
>>> hovers the mouse over a certain area for a certain length of time, in
>>> a manner similar to what Eclipse does with its context-sensitive help:
>>>
>>> http://www.java2s.com/Code/Java/SWT-JFace-Eclipse/HowtoimplementhoverhelpfeedbackusingtheMouseTrackListener.htm
>>>
>>>
>>> I'm honestly not sure how accessible that is, or how JAWS or VoiceOver
>>> would know that the hovering help was present - perhaps Sina, Michael
>>> or Alex can answer that one.
>>>
>>> In both cases, the event you get in the listener should contain a
>>> reference to the widget for which the help was requested. You might be
>>> able to get away with having a single help listener class, but in that
>>> case you'll need some sort of mapping from the widget (or data
>>> contained in the widget) to the appropriate help topic.
>>>
>>> Google can be your friend in figuring these things out :)
>>>
>>>
>>>
>>> Hope this helps,
>>>
>>> Cheers
>>> Chris
>>>
>>>
>>>
>>>
>>>
>>> On Feb 25, 2011, at 8:44 PM, John J. Boyer wrote:
>>>
>>>> Thanks, Chris. I might use this for extended help, but I think that
>>>> context-sensitive help is usually a short explanation of what a
>>>> particular menu choice does and how to proceed, or an explanation of
>>>> something in the text. It seems to me that the most user-friendly way 
>>>> to
>>>> present this information would be with a dialog box with an OK button.
>>>> This can be done using the SWT MessageBox class. Hsow much is this used
>>>> in applications? When I tried presing F1 on some MSWord menu choices it
>>>> certainly was not what I got.
>>>>
>>>> Time for more dumb questions from someone who hasn't been coding in 
>>>> Java
>>>> very long. Answers from the experts will considerably speed up
>>>> development.
>>>>
>>>> I imagine that I have to designate a listener for whatever key is used
>>>> for help. Can I set this up for the whold GUI or do I have to do so for
>>>> the Braille view and Daisy view individually?
>>>>
>>>> Once the listener gets control, how does it determine where in the
>>>> context it was called from?
>>>>
>>>> Thanks,
>>>> John
>>>>
>>>> On Fri, Feb 25, 2011 at 04:26:14PM -0800, Chris von See wrote:
>>>>> Minor update: Desktop.browse() takes a URI, not a URL.
>>>>>
>>>>> Chris
>>>>>
>>>>>
>>>>> On Feb 25, 2011, at 4:19 PM, Chris von See wrote:
>>>>>
>>>>>> If you want to implement basic HTML help you can display it using
>>>>>> the java.awt.Desktop class in Java 1.6 - it has a browse() method
>>>>>> that takes a URL argument. The URL can point to either a Web site
>>>>>> serving help pages or to a local file. The Desktop.browse() method
>>>>>> can be invoked by whatever means a user would use to invoke help
>>>>>> (F1, for example) - you just need to be careful that whatever
>>>>>> mechanism you use isn't already mapped to something else by the OS.
>>>>>>
>>>>>>
>>>>>> Cheers
>>>>>> Chris
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> On Feb 25, 2011, at 3:46 PM, John J. Boyer wrote:
>>>>>>
>>>>>>> Susan,
>>>>>>>
>>>>>>> I wouldn't worry too much about the frames, though I don't see why
>>>>>>> anyone bothers with them. The documentation you mention mibht be
>>>>>>> helpful. What I need is some information on context-sensitive help
>>>>>>> algorithms. If I have to come up with my own it will take longer.
>>>>>>> John
>>>>>>>
>>>>>>> On Fri, Feb 25, 2011 at 11:00:01AM -0700, Susan Jolly wrote:
>>>>>>>> I think you will need a library that interfaces with your GUI. SWT
>>>>>>>> provides context-sensitive help for Eclipse plug-ins but I don't
>>>>>>>> know how
>>>>>>>> it works when you use SWT outside of Eclipse.
>>>>>>>>
>>>>>>>> The online Eclipse documention seems to make a weird use of frames
>>>>>>>> so I
>>>>>>>> don't know how a screen reader would navigate it. I think what you
>>>>>>>> want is
>>>>>>>> something called Data Tools Platform Help-Helper Documentataion
>>>>>>>> which is a
>>>>>>>> section in the DAta Tools Platform Plug-in Developer Guide.
>>>>>>>>
>>>>>>>> Susan
>>>>>>>>
>>>>>>>
>>>>>>> -- 
>>>>>>> John J. Boyer; President, Chief Software Developer
>>>>>>> Abilitiessoft, Inc.
>>>>>>> http://www.abilitiessoft.com
>>>>>>> Madison, Wisconsin USA
>>>>>>> Developing software for people with disabilities
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>
>>>> -- 
>>>> John J. Boyer; President, Chief Software Developer
>>>> Abilitiessoft, Inc.
>>>> http://www.abilitiessoft.com
>>>> Madison, Wisconsin USA
>>>> Developing software for people with disabilities
>>>>
>>>>
>>>
>>>
>>
>
> -- 
> John J. Boyer; President, Chief Software Developer
> Abilitiessoft, Inc.
> http://www.abilitiessoft.com
> Madison, Wisconsin USA
> Developing software for people with disabilities
>
>



Other related posts: