[jawsscripts] Re: Trying to use Jaws UIA Script API

  • From: Doug Lee <doug.lee@xxxxxxxxxxxxxxxx>
  • To: jawsscripts@xxxxxxxxxxxxx
  • Date: Mon, 6 Jan 2014 18:07:28 -0500

Basic approach:

- Create your API reference (your CreateObjectEx call should work fine for 
that).
- Get a walker (your controlViewWalker call should do that).
- Set walker.currentElement to an object, like api.getFocusedElement().
- Navigate using the .goto*() calls, which return boolean True on success and 
False on failure.
- Use walker.currentElement to access the final destination.

On Mon, Jan 06, 2014 at 05:44:09PM -0500, John Robichaud wrote:
Soronel,
I tried it with CreateTreeWalker and the true condition with the same result.  
The clue here. I think, is that after using either TreeWalker approach, the use 
of the GoTo methods always return false.  I can't resolve that basic problem.
John

-----Original Message-----
From: jawsscripts-bounce@xxxxxxxxxxxxx 
[mailto:jawsscripts-bounce@xxxxxxxxxxxxx] On Behalf Of Soronel Haetir
Sent: Monday, January 06, 2014 5:25 PM
To: jawsscripts@xxxxxxxxxxxxx
Subject: [jawsscripts] Re: Trying to use Jaws UIA Script API

Make sure that CurrentElement is actually set to something before you do the 
series of GoTo calls.  I don't know about ControlViewWalker but I do know that 
when usingCreateTreeWalker with a true condition to enumerate everythign that 
CurrentElement starts out null



On 1/6/14, John Robichaud <John_Robichaud@xxxxxxxxxxx> wrote:
> Jim,
> I tried that as well with no success.
> John
>
> -----Original Message-----
> From: jawsscripts-bounce@xxxxxxxxxxxxx 
> [mailto:jawsscripts-bounce@xxxxxxxxxxxxx] On Behalf Of Jim Snowbarger
> Sent: Monday, January 06, 2014 5:01 PM
> To: jawsscripts@xxxxxxxxxxxxx
> Subject: [jawsscripts] Re: Trying to use Jaws UIA Script API
>
> John,
> I think he means you need to do your goTo calls separately, in 
> separate statements.
>
> MyTreeWalker.GoToFirstChild()
> MyTreeWalker.GoToNextSibling
> I am not sure which object is actually changing.  The Tree Walker I guess.
>
> ----- Original Message -----
> From: "John Robichaud" <John_Robichaud@xxxxxxxxxxx>
> To: <jawsscripts@xxxxxxxxxxxxx>
> Sent: Monday, January 06, 2014 3:32 PM
> Subject: [jawsscripts] Re: Trying to use Jaws UIA Script API
>
>
> Doug,
> I think you mean to do the following:
>
> Let MyTreeWalker =
> MyTreeWalker.GoToFirstChild().GoToNextSibling().GoToNextSibling().
> GoToNextSibling().GoToFirstChild().GoToFirstChild()
> SayString(MyTreeWalker.CurrentElement.Name)
>
> But this doesn't work either. I have found that using any of the GoTo 
> methods on MyTreeWalker returns false. I have confirmed that the statement:
> Let MyTreeWalker = MyObject.ControlViewWalker does result in an object.
> John
>
> -----Original Message-----
> From: jawsscripts-bounce@xxxxxxxxxxxxx 
> [mailto:jawsscripts-bounce@xxxxxxxxxxxxx] On Behalf Of Doug Lee
> Sent: Monday, January 06, 2014 4:12 PM
> To: jawsscripts@xxxxxxxxxxxxx
> Subject: [jawsscripts] Re: Trying to use Jaws UIA Script API
>
> The goTo* methods change object state and return boolean, rather than 
> returning a new object. You'll have to make your goto* calls 
> separately, then use MyTreeWalker.currentElement to get at where you landed.
>
> On Mon, Jan 06, 2014 at 04:07:37PM -0500, John Robichaud wrote:
> I'm trying to use the Jaws UIA Script API to speak the name of a 
> pushbutton in an application.  This is Windows 7 and Jaws 15.0.5056.
> I've used MicroSoft's Inspect tool to reveal the object hierarchy.  My 
> code
> follows:
>
>
>
> Var object MyObject, object MyTreeWalker
>
> Let MyObject = CreateObjectEx("FreedomSci.UIA", false,
> "UIAScriptAPI.x.manifest")
>
> Let MyTreeWalker = MyObject.ControlViewWalker
>
> SayString(MyTreeWalker.GoToFirstChild().GoToNextSibling().GoToNextSibling().
> GoToNextSibling().GoToFirstChild().GoToFirstChild().Name)
>
>
>
> I know the name that should be spoken for this element but I get nothing.
> I
> suspect that I'm not using the Tree Walker piece correctly. Can anyone 
> help with this?
>
> John Robichaud
>
>
>
> __________???
>
> View the list's information and change your settings at 
> //www.freelists.org/list/jawsscripts
>
> --
> Doug Lee, Senior Accessibility Programmer SSB BART Group - 
> Accessibility-on-Demand mailto:doug.lee@xxxxxxxxxxxxxxxx 
> http://www.ssbbartgroup.com "While they were saying among themselves 
> it cannot be done, it was done." --Helen Keller __________o?=
>
> 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
>
>


--
Soronel Haetir
soronel.haetir@xxxxxxxxx
__________?

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

-- 
Doug Lee, Senior Accessibility Programmer
SSB BART Group - Accessibility-on-Demand
mailto:doug.lee@xxxxxxxxxxxxxxxx  http://www.ssbbartgroup.com
"While they were saying among themselves it cannot be done,
it was done." --Helen Keller
__________�

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

Other related posts: