| RTP Series - RTP57 |
| File Variables |
| Reader's Clinic - Volume Pointer Record |
| REVMEDIA Revisted |
| Utility Diskette # 4 |
| Catalyst |
| Capture |
| @ATTACK - @PlayBack |
| QTIPS - @Playback Vs @Data |
| Capture Playback and Convert.Keystrokes |
| Reader's Clinic - Capture Command and Captured Keystrokes |
| Make.Index |
| Capture |
| REVMEDIA Revisted |
| QTIPS - Assorted Oddments |
| Capture Playback and Convert.Keystrokes |
| Playing with Scan Codes |
| QTIPS - Compiling Protection Code |
| QTIPS - Invalid Code and Command |
| QTIPS - Code/Command Help |
| Compiling 64K on a Shoestring by Blaise Wrenn (LexStat Systems Ltd) |
| Reader's Clinic - Capture Command and Captured Keystrokes |
| @ATTACK - @Macro.Hex |
| Capture Playback and Convert.Keystrokes |
| Form.List.S |
| QTIPS - Aesthetically Improving RLIST Reports |
| QTIPS - Form Processor |
| QTIPS - Suppressing Initial Form Feed |
| QTIPS - Using RTP29 In Place of V6 |
| Reader's Clinic - Line Length > 256 Characters |
| QTIPS - String Space |
| QTIPS - String Space Format Errors |
| Reader's Forum - Numeric Precision in R/Basic - Hal Wyman |
| Reader's Clinic - Different Id Same Record |
| Reader's Clinic - Scaled Masked Decimal Conversions |
| Base Conversions |
| User Defined Conversions |
| Reader's Forum - Numeric Precision in R/Basic - Hal Wyman |
| Reader's Clinic - Capture Command and Captured Keystrokes |
| Catalyst |
| Popups |
| Catalyst Tips |
| QTIPS - NoRead |
| Reader's Clinic - EVAL |
| QTIPS - New Catalyst Option |
| Reader's Clinic - Functions and Subroutines |
| Reader's Letters - Jim Owen |
| Playing with Scan Codes |
| Argument passing - Subroutines and Functions - Mike Pope |
| Reader's Clinic - Functions and Subroutines |
| Argument passing - Subroutines and Functions - Mike Pope |
| QTIPS - Command Line Options |
| QTIPS - Invalid Code and Command |
| QTIPS - Code/Command Help |
| Utility Diskette # 4 |
RevMedia FKB
| Document | V4I10A1 |
| Title | Capture Playback and Convert.Keystrokes |
| Keywords | CAPTURE @PLAYBACK CONVERT.KEYSTROKES |
| Text | Way back in Volume 1 we showed how @Playback could be loaded WITH a capture script for instant replay of captures Recently a number of people have reported a problem WITH capture scripts namely that embedded code and commands no longer work as they ought For EXAMPLE the script WINDOW {SPACE} DEMO {CR} @HLP Here we are in the demo window@ 1234 {CR} ought to invoke the Demo window (if run FROM TCL) pause and display a help message then AFTER a key was pressed continue on and enter 1234 into the key field What in fact happens is that this script fails to run Examination of CONVERT KEYSTROKES the routine responsible for converting text to and FROM internal form (scan codes escape sequences et al) to external form ({F1} {ALT 8} et al) identifies this problem CONVERT KEYSTROKES takes four parameters as follows : String The string to be converted to or FROM internal form Action "W" for convert to "K" for convert from Unknown Does not seem to be used Flag Returns result of operation 1 for failed 0 for OK The string to be converted is both passed and returned in the first parameter If the conversion is successful a string is returned suitable for placing DIRECTLY into @PLAYBACK If the conversion fails the string is unchanged and Flag is set to 1 Thus for the above script we would establish the call STUFF = "WINDOW {SPACE} DEMO {CR} " STUFF< 1>= "@HLP HELLO@" STUFF< 1>= "1234 {CR}" CALL CONVERT KEYSTROKES(STUFF "K" "" FLAG) However this call fails to convert and returns a Flag of 1 REMOVING the "LP" FROM the "HLP" causes the conversion to work Further examination reveals that any Catalyst code of more than one character now causes the conversion to fail hence the failure of an HLP The good news is that catalyst CALLS of only one character still function so until this problem is resolved it can be worked around by USING the following subroutine which simply takes a branch and treats it as a code and command Subroutine Replay(Branch) SavePlay = @Playback @Playback = "" Code = Branch[1 "*"] Command = Branch[ 1 "B*"] Call Catalyst(Code Command) @Playback = SavePlay Return Then our script would become WINDOW {SPACE} DEMO {CR} @S REPLAY HLP*Here we are in the demo window@ 1234 {CR} Note though that the * delimiter will need to be changed if you wish to do B catalyst CALLS etc (Volume 4 Issue 10 Pages 4 5) |
Page last modified: 31/01/03