He is right.
I have spent a lot of time in the last few months studying different software
development technologies on the Mac, including Applescript. VoiceOver can be
controlled from scripts, but those scripts must be manually activated.
VoiceOver has the keyboard commander, and scripts can also be started from
other macro packages, but they can't be started in response to something
happening on screen.
With Windows screen readers, they can run a piece of script to read you a
window, a status bar, etc when that area of the screen changes. With the Mac,
though, , there isn't any way right now to trigger a script when something
happens in the user interface. This means that it isn't possible to use scripts
to automatically let you know when an important event happens, or to
automatically read you important information.
Beyond that, when people say that VoiceOver supports scripting, what is meant
is that VoiceOver can be controlled from scripts. That is not the same thing as
the scripting support in a Windows screen reader. Your script can tell
VoiceOver to perform any of its commands. You can say move right or read
contents of VoiceOver cursor, and those commands will be performed just like
you triggered them from one of the commanders. You don't get access to the user
interface's object model. You can't make a script that jumps you directly to a
particular control, because you can't access the user interface object model to
search for the control, and you can't command VoiceOver to move the VoiceOver
cursor to an arbitrary user interface object.
There are ways to work around some of this. You can use the System Events
scripting support to manipulate the user interface, but it isn't a very
straight forward approach, and most newbie developers won't wrap their heads
around it easily. There are systems that simplify the manipulation of the UI.
The PFiddlesoft frameworks provide an easy way to receive events from, and
control the UI, through the same accessibility frameworks that are used by
VoiceOver. However, you still can't run scripts in response to events, and
there are licensing restrictions on the distribution of those frameworks. Macro
packages like QuicKeys and Keyboard Maestro offer a lot more triggering options
the the ultra-basic VoiceOver keyboard commander, but they cost between $40 and
$60 per computer.
So, right now, scripting for VO is extremely basic, and not useful for most
situations where you'd really need scripting.
Maybe Apple will come up with something better in a future version of VO. Maybe
some of the makers of the macro apps will start to support UI and/or
accessibility events as triggers. Either would help a lot.
Bryan
-Original Message-
From: macvisionaries@googlegroups.com [mailto:macvisionar...@googlegroups.com]
On Behalf Of .dan.
Sent: Saturday, July 24, 2010 2:03 PM
To: macvisionaries@googlegroups.com
Subject: A new mac accessory
This all sounds good. If you learn apple script you can get the same thing
with out putting out any bucks.
How so? How can script duplicate universal fine grained control and power of
dos screen access? Even when directly controled by keystrokes vo can not do
this so how does having a script improve upon it?
In performing some tasks that a macro script can do with a keystroke perhaps.
In having that same script triggered by text appearing at a particular place on
the screen, how?
XB
IC|XC
--
You received this message because you are subscribed to the Google Groups
MacVisionaries group.
To post to this group, send email to macvisionar...@googlegroups.com.
To unsubscribe from this group, send email to
macvisionaries+unsubscr...@googlegroups.com.
For more options, visit this group at
http://groups.google.com/group/macvisionaries?hl=en.
--
You received this message because you are subscribed to the Google Groups
MacVisionaries group.
To post to this group, send email to macvisionar...@googlegroups.com.
To unsubscribe from this group, send email to
macvisionaries+unsubscr...@googlegroups.com.
For more options, visit this group at
http://groups.google.com/group/macvisionaries?hl=en.