In order for this site to work correctly, and for us to improve the site, we need to store a small file (called a cookie) on your computer.
By continuing to use this website, you agree to our cookies and privacy policy.
Home page Home page Home page Home page
Pixel Header R1 C1 Pixel
Pixel Header R2 C1 Pixel
Pixel Header R3 C1 Pixel

Catalyst Tips

Since our introductory issue, Catalyst has had several new features added. Most of these new features have been documented on the Readme files supplied with the upgrade diskettes. Several additional undocumented features still exist and our thanks go to those who provided the following exciting features. These have all been tested on 2.01 not 1.16.

Conditional Execution

If an X is appended to the catalyst code, the command will only be executed if the current window record has been modified. This is most useful on a pre-save routine which will be called regardless of whether modifications have been made. As an example of this try putting "HLX, This is a test" on the Pre-Save process of a window.

Subroutine Calls Using Registers

The branches to be passed to a subroutine can be stored in the window registers and thus modified at runtime by changing the contents of the registers. Thus if WC_Register%(5) were loaded with "CLS" and the catalyst call CALL CATALYST("S","PROC,<R5>") were issued, PROC would be called and passed the parameter CLS. One caveat - do not use WC_Register%(10) as the system does not recognise this and uses WC_Register%(0) instead.

Modified Popup Calls

Frequently it is desirable to take a popup record from file, change an attribute or two and display it without modifying the file copy. This can be tedious. A West Coast reader points out that a popup record can be passed in place of the command with a P code and that Catalyst will then display the record. Thus, to change the X position for example, read in the popup record (POP_REC) change field one to the desired value (POP_REC<1> = X) and finally CALL CATALYST("P",POP_REC).

Terminating Catalyst Chains

In issue 1 it was pointed out that catalyst calls can be stacked using semi-colons. If any of the stacked commands sets @ANS to 1, the rest of the commands are not executed. (Ask me how I know....)

(Volume 2, Issue 5, Page 7)
Pixel Footer R1 C1 Pixel