[jawsscripts] Re: JAWSWillFollowPc/TetherJawsToPC Broken in Jaws 10, 11 and 12.

  • From: "Geoff Chapman" <gch@xxxxxxxxxxxxxxxx>
  • To: <jawsscripts@xxxxxxxxxxxxx>
  • Date: Tue, 1 Mar 2011 11:26:03 +1100

Wow don! I never saw this when I sent my last! amazing stuff! Thank you for 
sharing all this!
man your way more advanced into this than I am, but, of course I knewed that 
anyway!
<grin.>
Thanks for all this great info though! man! all I need now is the 
time/application to try and incorporate/nail into my head, the background 
concepts
of this kind of info! how utterly vexing for you though that you did all 
this work and now it's completely useless? how often though must this 
happen!

and how frustrating this must be!

I don't know how you do it!

----- Original Message ----- 
From: "Don Marang" <donald.marang@xxxxxxxxx>
To: <jawsscripts@xxxxxxxxxxxxx>
Sent: Tuesday, March 01, 2011 1:04 AM
Subject: [jawsscripts] Re: JAWSWillFollowPc/TetherJawsToPC Broken in Jaws 
10, 11 and 12.


> The Tether mode is very interesting when poking around in an application.
> Did you know if you press the key combination for TetherJAWSToPC twice, it
> becomes the default when JAWS starts?  Because of the downsides of this
> mode, such as issues with submenus, I can not imagine using it as a 
> general
> default or as the default within an application.  It is better to use
> individual commands, such as RouteJAWSToPC in situations where it will be
> effective.
>
> I wrote an set of useful scripts for a very badly behaved desktop Verizon
> application that would notify you on your PC when a call came in on your
> land line.  It provided a customizeable name for the caller and the 
> number.
> It also kept track of the incomming call log and could interact with Voice
> Mails.  It is worthless now because they rewrote the application.  It is 
> now
> a totally inaccessible desktop gadget that I have not figured out how to 
> get
> any information out of!
>
> Mostly it is best to override one or more of the built-in event functions,
> like ToolTipEvent.  In my case, there was a call log listbox with only two
> columns, the caller's name and the date / time.  The caller's phone number
> only appears when the mouse hobers ober the item in the list!  By 
> overriding
> the ActiveItemChangedEvent, which is triggered when entering the list or
> moving up / down in the list, you can add additional actions.  I totally
> rearranged the order in which information was announced and the format for
> phone numbers.  All phone numbers were transfomed into 123-456-9999.  It
> also RoutedJAWSToPC at the right moment.  Since this application did not
> have proper ToolTips or HelpBalloons, I had to use logic in the
> WindowCreatedEvent to identify which window just poped up.  When these
> ToolTip windows appeared, I captured the needed text.
>
> I pasted the ActiveItemChangedEvent  function below and a link where a zip
> archive of the latest code is available.  It probably makes no sense to
> install, since the application is no longer available and the website no
> longer will communicate with it.
>
> http://mysite.verizon.net/marangs/VerizonCallAssistant.html
>
> ;  Originally written for JAWS 10 Beta 3 (10.0.419)
> ;  Started on 26 October 2008
>
> Void Function ActiveItemChangedEvent (handle hWnd, int iCurrentID, Int
> iCurrentChild, handle hWndPrevious, Int iPreviousID, Int iPreviousChild)
>
> SpeechOn ()
> ; SayMessage (OT_DEBUG, "Current window = " + IntToString (hWnd))
> ; SayMessage (OT_DEBUG, "Current ID = " + IntToString (iCurrentID)) ;
> returns -4, The arguments of -4 are indeed an MSAA thing: That's
> ObjID_Client, an indicator of which part of the window was responsible for
> the event
> ; SayMessage (OT_DEBUG, "Current ID description = " + GetObjectDescription
> (False, 0)) ; returns the date of the item
> ; SayMessage (OT_DEBUG, "Current ID ACC description = " +
> GetObjectContainerHelp ()) ; returns null
> ; SayMessage (OT_DEBUG, "Current ID object name = " + GetObjectName 
> (False,
> 0)) ; returns the item (name and date)
> ; SayMessage (OT_DEBUG, "Current ID object state = " + GetObjectState
> (False, 0)) ; Should return "Selected"
> ; SayMessage (OT_DEBUG, "Current ID object type = " + GetObjectType ()) ;
> returns "List Box Item"
> ; SayMessage (OT_DEBUG, "Current ID value = " + GetObjectValue (False, 0)) 
> ;
> returns null
> ; SayMessage (OT_DEBUG, "Current child = " + IntToString (iCurrentChild)) 
> ;
> Returns the item index
>
> ; SayMessage (OT_DEBUG, "Previous window = " + IntToString (hWndPrevious))
> ; SayMessage (OT_DEBUG, "Previous ID = " + IntToString (iPreviousID))
> ; SayMessage (OT_DEBUG, "Previous child = " + IntToString 
> (iPreviousChild))
>
> If hWnd == ghVCAResultsListView Then
> Let giVCACurrentResultsItem = iCurrentChild
> SayFormattedMessage (OT_MESSAGE,
> FormatString (MSG_PRE_LIST_ITEM_L, IntToString (giVCACurrentResultsItem)),
> FormatString (MSG_PRE_LIST_ITEM_S, IntToString (giVCACurrentResultsItem)))
> If GetCharacterAttributes () & ATTRIB_BOLD Then
> SayMessage (OT_MESSAGE, MSG_NEW_L, MSG_NEW_S)
> EndIf
> ; SayMessage (OT_DEBUG, "Selection state = " + IntToString (lvGetItemState
> (hWnd, iCurrentChild) ))
>
> ; SayObjectActiveItem (True) ; Says the wrong number of items in list (1 
> of
> 11)
> ; SayObjectActiveItem (False) ; not able to reformat phone number in 
> search
> results
> If StringContains (gsVCAResultsTitle, LIST_RECENT) Then
> Let gsVCAResultsName = lvGetItemText (hWnd, iCurrentChild, 1)
> Let gsVCAResultsDate = lvGetItemText (hWnd, iCurrentChild, 2)
> SayFormattedMessage (OT_MESSAGE,
> FormatString (MSG_LIST_ITEM_L, gsVCAResultsName,gsVCAResultsDate),
> FormatString (MSG_LIST_ITEM_S, gsVCAResultsName,gsVCAResultsDate))
>
> Else
> Let gsVCAResultsName = lvGetItemText (hWnd, iCurrentChild, 1)
> Let gsVCAResultsNumber = lvGetItemText (hWnd, iCurrentChild, 2)
> Let gsVCAResultsNumber = ReformatPhoneNumber (gsVCAResultsNumber)
> SayFormattedMessage (OT_MESSAGE,
> FormatString (MSG_LIST_ITEM_L, gsVCAResultsName,gsVCAResultsNumber),
> FormatString (MSG_LIST_ITEM_S, gsVCAResultsName,gsVCAResultsNumber))
>
> EndIf
>
> JAWSCursor ()
> RouteJAWSToPc () ; move JAWS cursor to item to activate custom ToolTip to
> capture phone number in WindowActivatedEvent
> LeftMouseButton () ; select item
> PCCursor ()
> Else
> ; Most likely in a JAWS dialog
> ; SayMessage (OT_DEBUG, "Call to item changed and not in list view!  Item 
> =
> " + IntToString (iCurrentChild))
> ActiveItemChangedEvent (hWnd, iCurrentID, iCurrentChild, hWndPrevious,
> iPreviousID, iPreviousChild)
> EndIf
>
> EndFunction
> Don Marang
> Vinux Software Development Coordinator (vinux.org.uk)
>
> There is just so much stuff in the world that, to me, is devoid of any 
> real
> substance, value, and content that I just try to make sure that I am 
> working
> on things that matter.
> Dean Kamen
>
>
> --------------------------------------------------
> From: "Geoff Chapman" <gch@xxxxxxxxxxxxxxxx>
> Sent: Sunday, February 27, 2011 11:29 PM
> To: <jawsscripts@xxxxxxxxxxxxx>
> Subject: [jawsscripts] Re: JAWSWillFollowPc/TetherJawsToPC  Broken in Jaws
> 10, 11 and 12.
>
>> Hi Don.
>>
>> Thanks so much man for this response, the only one to date on this issue
>> so
>> far. <smile.>
>>
>> I submit this got broken in jaws10, as it seems to work properly in jaws9
>> here, I tested it.
>>
>> But, of course would very much appreciate any confirmatory info you feel
>> able to provide on this.
>>
>> it's such a handy feature for newbys without a lot of knowledge, to
>> quickly
>> gain often extremely helpful info in toolTips, when exploring new Apps,
>> and
>> I'd very much like it repaired again.
>>
>> i also so much apreciate your pointers re it having to operate at either
>> the
>> FocusChangedEvent level or lower/internally etc. I never thought of it
>> being
>> a builtin (internal) issue though. soooo useful to have a forum to 
>> discuss
>> these things with others eh!
>>
>> with your far wider experience of all things scripting, please do let me
>> know of anything you discover?
>>
>> BTW, Are you also familiar with Object usage? i.e. any interactivity
>> between
>> JAWS and MsWord? regarding the crazy cross Reference code offScreen
>> reading,
>> that jaws continues to do every time it runs across a cross-reference in
>> msWord 2007, in versions 11/12?
>>
>> Thanks.
>>
>>
>> ----- Original Message ----- 
>> From: "Don Marang" <donald.marang@xxxxxxxxx>
>> To: <jawsscripts@xxxxxxxxxxxxx>
>> Sent: Sunday, February 27, 2011 9:06 PM
>> Subject: [jawsscripts] Re: JAWSWillFollowPc/TetherJawsToPC Broken in Jaws
>> 10, 11 and 12.
>>
>>
>>> The tether function must work at either the FocusChangedEvent level or
>>> lower, such as internally.  I will see if I can reproduce your results.
>>> It
>>> worked the way I expected a year or two ago.  This had to be at least
>>> JAWS
>>> 9, because I jumped from 5.1 to 9.  I originally thought this was an
>>> answer
>>> to a problem I had writing scripts for Verizon.  I will check the dates
>>> an
>>> version I was using.  I think this was on Windows 7 as well, which would
>>> mean at least JAWS 10.
>>>
>>> Tethering effects much more than the movements of the focus caused by 
>>> the
>>> Tab key.  It is not desirable for this feature to be the default.  For
>>> one
>>> thing, when using an arrow key through a menu, it will automatically 
>>> open
>>> and move into all submenus!
>>>
>>> I totally agree with you about the ToolTip verbosity.
>>>
>>> Don Marang
>>> Vinux Software Development Coordinator (vinux.org.uk)
>>>
>>> There is just so much stuff in the world that, to me, is devoid of any
>>> real
>>> substance, value, and content that I just try to make sure that I am
>>> working
>>> on things that matter.
>>> Dean Kamen
>>>
>>>
>>> --------------------------------------------------
>>> From: "Geoff Chapman" <gch@xxxxxxxxxxxxxxxx>
>>> Sent: Thursday, February 24, 2011 8:25 PM
>>> To: <jawsscripts@xxxxxxxxxxxxx>
>>> Subject: [jawsscripts] JAWSWillFollowPc/TetherJawsToPC  Broken in Jaws
>>> 10,
>>> 11 and 12.
>>>
>>>> mighty scripters.
>>>> Just letting people know of another unfortunate breakage that seems to
>>>> have crept in unnoticed or uncared about over the past 3 versions, and
>>>> that's what is, in my view,
>>>> the rather handy newby application exploration feature, of today's
>>>> subject
>>>> line., viz, JAWSWillFollowPC. Or, as the actual Script is named,
>>>> TetherJawsToPc.
>>>>
>>>> grumph!
>>>>
>>>> I have spent some time today, seeking to drill down into some of the
>>>> functions/scripts which might've caused this, as it would seem on the
>>>> surface a relatively simple one to repair maybe? but have had no luck 
>>>> in
>>>> tracking it down myself.
>>>> The Actual TetherJawsToPc script looks identical to me between jaws
>>>> versions 9 and 10,
>>>> so am presuming the problem must be somewhat deeper, i.e. buried in one
>>>> of
>>>> the functions related to tabKey or shiftTabKey pressing itself?
>>>> which appear to be one's maybe like, SayFocusedObject, or
>>>> SayObjectTypeAndText, or perhaps, GetObjectHelp?
>>>>
>>>> The Tether JawsToPc Script appears to me to just toggle the jcf option,
>>>> (opt_Tether_Jaws_To_PC, from one setting to another,
>>>> So I presume, that something in the tab and shiftTab key pressing
>>>> functions, is maybe not checking for this setting in the relevant jcf
>>>> file?
>>>> and subsequently executing a routeJawsToPc based on it's 1 or 0?
>>>> something
>>>> like this perhaps?
>>>>
>>>> but something sure changed though between jaws 9 and 10, because tha'ts
>>>> where it's been broken, and remained broken ever since.
>>>>
>>>> For those who may not be aware of this little gem,
>>>> (when it actually functions properly,)
>>>> When coupled with Auto ToolTip reading option set to on, (which is set
>>>> individually within the prefferences section for each verbosity level,
>>>> in
>>>> the verbosity dialog,
>>>> - which is, not, the default setting for jaws, for reasons which have
>>>> always totally eluded me,)
>>>> when tethering jawsToPc, it can give a very handy way of hearing, what
>>>> particular buttons or controls may do in an application, which activate
>>>> the normal toolTip event class when mouse hovers over a control.  it
>>>> basically means your mouse will follow your pc focus, and thus speak 
>>>> all
>>>> those tooltips automatically for you, if any are present.
>>>>
>>>> one can also of course check it's functionality simply by first
>>>> activating
>>>> the jawsCursor, turning on the tetherJawsToPc function with
>>>> Jawskey+Control+NumPad minus, pressing Tab, then pressing AltDelete, to
>>>> check the jawsCursor Coordinates.
>>>> When it's working properly, of course if the tab key is moving focus
>>>> around an application window, like, for example, the winamp or vlc
>>>> preferences dialog,
>>>> pressing alt+delete after a tab press, should yield a change in the
>>>> coordinates output,
>>>> along with tooltips auto spoken, if that option has been enabled.
>>>> Also, subsequently pressing RouteJawsToPc, when the function is working
>>>> properly, then executing alt+delete again, should also, not, yield any
>>>> change in the coordinates, when jawsCursor is active.
>>>> However as you'll notice in jaws 10, 11 or 12, carying out the above,
>>>> does, yield a change, meaning it's not tracking as it should.
>>>>
>>>> any thoughts from anyone as to how one might dig down further to find
>>>> out
>>>> where this has come adrift?
>>>> or if anyone would care to have a shot themselves and let us know ...
>>>> even
>>>> better! <grin.>
>>>> But not an urgent one, just something I'd like to fix.
>>>>
>>>>
>>>> thanks muchly.
>>>>
>>>> geoff c.
>>>>
>>>>
>>>>
>>>>
>>>> __________�
>>>>
>>>> View the list's information and change your settings at
>>>> //www.freelists.org/list/jawsscripts
>>>>
>>>>
>>> __________�
>>>
>>> View the list's information and change your settings at
>>> //www.freelists.org/list/jawsscripts
>>>
>>>
>>
>> __________�
>>
>> View the list's information and change your settings at
>> //www.freelists.org/list/jawsscripts
>>
>>
> __________�
>
> View the list's information and change your settings at
> //www.freelists.org/list/jawsscripts
> 

__________�

View the list's information and change your settings at 
//www.freelists.org/list/jawsscripts

Other related posts: