Thanks for your reply. I wil study it and try it out. Dean ----- Original Message ----- From: "David Farough" <David.Farough@xxxxxxxxxxxxx> To: <jawsscripts@xxxxxxxxxxxxx> Sent: Tuesday, March 10, 2009 3:30 PM Subject: [jawsscripts] Re: repost of dean's problem re ScheduleFunctionnot Working |I initially responded to Dean's post and suggested that he use the | ScheduleFunction in his TopOfText function. | | From my original message: | The timing issue you mention could be rectified if you used the | ScheduleFunction to run a function that contained the code from your | function which came after the press of the space bar. This of course | will have the effect of breaking your TopOfText function in to two | functions. You will need to make any variable that was defined in the | TopOfText function that is used in the new function a global variable | so that it's value can be read in the new function. This will allow you | to increase the time before this function is called to an appropriate | amount. | | His problem is not really the ScheduleFunction so much as it is a | problem of having two while loops running simultaneously. | | In his ReadContinuously script he sets up some variables for schemes | and other things, then he runs his TopOfText function. So far so good. | | In his TopOfText function he activates the Jaws cursor, loads a couple | of string variables to hold the current line and last line. and sets up | a variable which will become true if a key is pressed during the while | loop in this function. | | Now while loop runs until key is pressed or until last line and current | line are equal. | He needs to remove the following lines from his TopOfText function in | the while loop: | If iKeyWasPressed then | Return | | This causes control to go back to the script that called TopOfText | Immediately. His loop will not be entered again after the key was | pressed so the return is not necessary here. | He checks for this condition immediately after the EndWhile for his | loop. | He could use the following if in his while loop. | If iKeyWasPressed ==0 then | | SayLine () | | Let LastLine = CurrentLine; sets up for new comparison | | NextLine ();scrolls down one line | | Let CurrentLine = GetLine (); saves the new line | | EndIf | | After the while loop ends he checks the value of the iKeyWasPressed and | returns if this is true. | | I suggest that he changes the schemes as appropriate in this if and set | up the Reading of verses as appropriate here before returning. much of | this code already exists in his ReadContinuously script. | So the rest of his TopOfText function could look something like this: | | If iKeyWasPressed then | set up schemes and verse reading etc. | | Return | | Else | | PCCursor () | | TypeKey ("spacebar");new keystroke in Libronix 3c to go to next screen | | scheduleFunction ("PositionForNextRead", 2) | | EndIf | | EndFunction | His new PositionForNextRead function would contain the rest of the | Lines taken from the TopOfText function: | Void function PositionForNextRead () | | Say ("next page", ot_status, false); for testing purposes | | JAWSCursor () | | If FindString (GetFocus (), CurrentLine, s_bottom, s_restricted) then | | NextLine () | | Else | | JAWSPageUp () | | JAWSHome () | | EndIf | | RefreshWindow (GetCurrentWindow ()) | | TopOfText() | | EndFunction | | Doing things this way means that you no longer need to use another | while loop in the ReadContinuously function because the topOfText | function is called again in the PositionForNextRead function. | | As I mentioned previously, this approach will require a few new global | variables. The while loop in the ReadContinuously function should be | removed and the schemes etc. can be set up again in the TopOfText | function. | | That's my take on it for what it's worth. | | David Farough | Application Accessibility Coordinator/coordonateur de l'accessibilité | Information Technology Services Directorate / | Direction des services d'information technologiques | Public Service Commission / Commission de la fonction publique | Email / Courriel: David.Farough@xxxxxxxxxxxxx | Tel. / Tél: (613) 992-2779 | | >>> "Geoff Chapman" <gch@xxxxxxxxxxxxxxxx> 01:37 am Sunday, March 08, | 2009 >>> | Hi list, I thought I'd just rePost Dean's issue since I hadn't seen | any | responses to it yet, and hoped that a reminder might help if anyone has | time | to take a look? | | __________ | Visit and contribute to The JAWS Script Repository http://jawsscripts.com | | View the list's information and change your settings at | http://www.freelists.org/list/jawsscripts | __________ Visit and contribute to The JAWS Script Repository http://jawsscripts.com View the list's information and change your settings at http://www.freelists.org/list/jawsscripts