Boy, sometimes, you think you know a lot, then you find out how much you
don't know.  I did not realize that you have more verbosity options in
Excell than you do in other applications.  It is right handy to not have
the cell coordinates spoken with every move.  Glad you brought that up,
Norm.  But, the question as to how to save this setting prompted me to
investigate.  In the course of doing so, I learned a few little items
that I found useful as a part time scripter and that, somehow, had
escaped my attention.

First of all, you can not save this setting.  Once you set it, it will
remain in effect over subsequent excell sessions as long as you don't
restart Jaws.  But, the minute you shut jaws down, or reboot your
computer, you have to set this up again.  There is no place for it in the
config file.  I think there is an area for some enhancement here to allow
an application script  to add customized sections to the config file.

In chasing this down, I figured that they must have redefined the
AdjustJawsVerbosity script.  I activated Excell.  Then, I made the
mistake of going to the keyboard manager and searching for the insert+v
keystroke.  It was not there.  So, the default definition of insert+v was
still in effect.  The insert_v in the default key map points to a script
called AdjustJawsVerbosity.  But, the default version of
AdjustJawsVerbosity contained no new code to allow the cell verbosity to
be manipulated.  So, I went to Excell.jss and starting browsing the
scripts there.  Wow, there is another copy of AdjustJawsVerbosity here
too.  I should have known this.  The local definition of the script in
the excell.jss file takes precedence over the default version.  So, when
you hit insert_v, you don't get the default version as the key map would
suggest, you actually get the local excell version.

Then, in reading the AdjustJawsVerbosity code, I found the
DlgSelectScriptToRun function call.  I was excited because this allows
you to present a list of options, and to have a specified function run
based on the selection.  In the past, I had done this with the
DlgSelectItemInList function which returns an index in to the list of the
item selected.  Then, I had to write all this if else  logic afterword to
decode the returned index and choose what function to call.  This baby
does it for you.  You supply a string which contains the items in the
list in the form of FunctionName:ListItemText| with as many items as you
want in your list.  When the selection is made, the function will call
the appropriate FunctionName as specified in your list.   This greatly
simplifies script coding.  How could I have missed this?

Don't answer that.

Jim Snowbarger





-
Visit the jfw ml web page: http://jfw.cjb.net

Reply via email to