[jawsscripts] Re: Tracking a focus rectangle

  • From: Doug Lee <doug.lee@xxxxxxxxxxxxxxxx>
  • To: jawsscripts@xxxxxxxxxxxxx
  • Date: Tue, 20 Nov 2012 00:05:49 -0500

Insert+5 won't help you identify the color of an area that does not
include a character. For that, you'll have to write a script that
tells you the result from the GetColorAtPoint function. Insert+5 calls
GetColorText() and GetColorBackground() and reports those two results.
Those functions only work with text. On a blank spot they both return
black.

On Mon, Nov 19, 2012 at 03:43:41PM -0500, Rizzino, Art wrote:
Revisiting an old topic.

I am working with a custom application that JAWS cursor can read text and 
labeled graphics.
I am told that there is a rectangle around text indicating current choice, but 
when I have a sighted person put the mouse on it JAWS tells me that the screen 
colors are black on black.  Actually anywhere you put the JAWS cursor the 
colors are black on black.

Any ideas?
Thanks.

Art Rizzino
Assistive Technology Specialist
Blind and Vision Rehabilitation Services of Pittsburgh
?

-----Original Message-----
From: jawsscripts-bounce@xxxxxxxxxxxxx 
[mailto:jawsscripts-bounce@xxxxxxxxxxxxx] On Behalf Of Doug Lee
Sent: Saturday, July 14, 2012 1:21 AM
To: jawsscripts@xxxxxxxxxxxxx
Subject: [jawsscripts] Re: Tracking a focus rectangle

I've had to do stuff like this occasionally, and yes, it's a challenge to keep 
the code from being slow. A few ideas, assuming a simple custom highlight color 
is not enough - and watch out, if using that, for empty rectangles, which will 
not trigger anything based on a highlight color:

Figure out the minimum width and height of the rectangle you want, and the 
smallest screen area in which it can ever reside. Also figure out the minimum 
width of a detectable sign of the rectangle, usually its border. Use the second 
of these to determine the screen area to scan, then write code to scan across 
horizontal or vertical lines in that space, as far apart as dictated by the 
answer to the first question, and only checking as many pixels as required 
based on the answer to the third question. Once you find a rectangle edge, 
either trace round it to find the others or repeat the same trick in the other 
direction across your screen space. Of course if you find the four walls of 
your rectangle you can mathematically determine the corner coordinates for it.

Finally, you can cache the last findings and write a quick "Is it still where 
it was" checker, so the scans only occur when things are actively changing.

A lot of work, this can be, but this sort of thing can really make some 
impossible-looking stuff just work.

On Fri, Jul 13, 2012 at 11:23:40PM -0500, Jim Snowbarger wrote:
The situation is sort of like a spreadsheet, but not in Excell, in a software 
design tool. It's the entities on a diagram.  As you operate the arrows, you 
move focus to one entity or another, along prescribed paths.  And, the way the 
program indicates focus is by moving a box around that encloses an  entity.    
The box is, of course,  indicated by alternating bands of color.
Jaws doesn't track that focus change, even though Track Focus Rectangle is 
turned on.   And, the focus object isn't moving around.  And, I can't think of 
any place where you can specify the definition of a focus rectangle.  
So,  I guess I'll have to search for it myself.
Anyway, for some reason I don't seem to have any code around where I did this, 
even though I've certainly seen it before.  So, I'm about to rewrite some 
clever code to search for that box, and know  I'll have a great time doing it, 
even though if I were more orderly, I wouldn't have to.  But, it will be a nice 
 little short brain teaser, though when I get it done, it's going to be a dog 
of a performer.  An old dog.  So, is there a better way to approach this?  You 
guys know any tricks I might try?  Or, something obvious I've overlooked? 
Think twice, if it's really simple.  Are you sure you wanna tell me? You know 
you might be depriving a compulsive programmer of his kicks.  <grin> 
__________???

View the list's information and change your settings at 
http://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 
http://www.freelists.org/list/jawsscripts

This message and any attachments are intended for the sole use of the 
individual to whom it is addressed. 
The information contained herein is confidential, proprietary, privileged or 
otherwise prohibited by law 
from disclosure. If you have received this email in error, please destroy the 
message immediately and 
notify the sender by email.

__________???

View the list's information and change your settings at 
http://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 
http://www.freelists.org/list/jawsscripts

Other related posts: