[jawsscripts] Table navigation script

  • From: "Don Mauck" <don.mauck@xxxxxxxxxx>
  • To: "jawsscripts@xxxxxxxxxxxxx" <jawsscripts@xxxxxxxxxxxxx>
  • Date: Tue, 1 Apr 2008 07:22:22 -0600

Hello,
I think I explained what this needs to do but here goes again.
The purpose of this script is to jump from table to table while staying in the 
cell that the cursor started in on the first table.  Therefore, when a wrap to 
the top or the first table occurs, the cursor should be still in the same 
position.  Now all this worked fine until Jaws 7.1 came out.  What happens now 
is that the cursor when going back to the first table looses it focus and goes 
back to 1,1.  I think either a function has changed or there is a bug in one of 
the table navigation functions.  I'd sure love some more input on this.  I have 
pasted the scripts and a sample of what the records could look like.  
 
 
 
Here is a copy of the script I am using.
 
void function DetectTableWhenNavigating(int iPrevTableIndex, int 
iPrevTableLevel)

SayString ("kagami")

var

int iCurTableLevel,

int iCurTableIndex,

int NextColumn,

int NextRow

GetCellCoordinates (NextColumn, Nextrow) SayTableCellCoordinates()

if InTable() then

 

let iCurTableLevel = GetTableNestingLevel()

let iCurTableIndex = GetTableIndex()

if iCurTableLevel < iPrevTableLevel then

; we've moved out of a nested table

SayUsingVoice(VCTX_MESSAGE,CMSGOutOfTable, OT_POSITION)

ElIf iCurTableLevel > iPrevTableLevel

|| (iCurTableIndex && iCurTableIndex != iPrevTableIndex) then

;we've moved into a table, announce it

SayUsingVoice(VCTX_MESSAGE, formatString(CMSGInTable,GetTableCaption()), 
OT_CONTROL_GROUP_NAME)

SayTableCellCoordinates()

EndIf

else ;not in a table

if iPrevTableIndex then

; we've moved out of a top-level table

SayUsingVoice(VCTX_MESSAGE,CMSGOutOfTable, OT_POSITION)

EndIf

endIf

EndFunction

 

 
var
int iPrevTableLevel,
 int iPrevTableIndex,
int NextColumn,
int NextRow
if InTable() then
 let iPrevTableLevel = GetTableNestingLevel()
 let iPrevTableIndex = GetTableIndex()
elif (FALSE == InTable ()) then
  SayFormattedMessage (OT_error, cMSGNotInTable_L, cMSGNotInTable_S) ; Not in a 
table
  Return
 EndIf
 
if GetJCFOption(optTableIndication) then
DetectTableWhenNavigating(iPrevTableIndex,iPrevTableLevel)
endif
GetCellCoordinates (NextColumn, Nextrow)
If MoveToTable (s_next) then ; Returns zero if there is no next table, 1 
otherwise
MoveToTableCell (NextColumn,NextRow)
else 
MoveToTable(s_top) ; Move to the first table
MoveToTableCell (NextColumn,NextRow)
endif
SayCell ()
 
 
 


 

 
        Records  1 - 10           Right-click here to download pictures. To 
help protect your privacy, Outlook prevented automatic download of this picture 
from the Internet.
Previous<BLOCKED::http://10.139.118.101:99/jde/img/moveleft-dis.gif>    
Right-click here to download pictures. To help protect your privacy, Outlook 
prevented automatic download of this picture from the Internet.
Next <BLOCKED::javascript:onClick=JDEDTAFactory.getInstance('').post('gNP0_1')> 
        
Customize Grid <BLOCKED::javascript:toolsExitSelected('gridTabOptions0_1', '')> 
 
                        Right-click here to download pictures. To help protect 
your privacy, Outlook prevented automatic download of this picture from the 
Internet.
Export Grid Data (Ctrl + Shift + E) 
<BLOCKED::javascript:toolsExitSelected('ExportData0070_1', '')>      
Right-click here to download pictures. To help protect your privacy, Outlook 
prevented automatic download of this picture from the Internet.
Maximize Grid (Alt+R) 
<BLOCKED::javascript:onClick=GCMH.onGridMaximize('0_1','')>       
Co QBE 
 Right-click here to download pictures. To help protect your privacy, Outlook 
prevented automatic download of this picture from the Internet.
Visual Assist (F2)<BLOCKED::http://10.139.118.101:99/jde/img/va0.gif> 
Name QBE 
 Right-click here to download pictures. To help protect your privacy, Outlook 
prevented automatic download of this picture from the Internet.
Visual Assist (F2)<BLOCKED::http://10.139.118.101:99/jde/img/va0.gif> 
Co      
Name    
         Co      Name   

Row 1 00000
Worldwide Company 00000
         Co      Name   

Row 2 00001
Financial/Distribution Company
         Co      Name   

Row 3 00002
Aashima
         Co      Name   

Row 4 00004
Tom's Company
         Co      Name   

Row 5 00005
MC TEST
         Co      Name   

Row 6 00006
Chilean Localizations
         Co      Name   

Row 7 00007
Amols Test Company
         Co      Name   

Row 8 00017
Test for City of Olathe
         Co      Name   

Row 9 00020
Marketing Company - Inactive
         Co      Name   

Row 10 00025
Kama Inc.

Oracle <http://www.oracle.com/> 
Don Mauck | Accessibility Evangelist 
Cross Applications Unlimited
7700 Technology Way
Denver CO 80237
Phone (303) 334-4184
Email don.mauck@xxxxxxxxxx 
 

Other related posts:

  • » [jawsscripts] Table navigation script