ArexxMenu.rexx - An ARexx based menu system. © 1990 by Steven D. Kapplin Version 1.0 - 11/12/90 Requires the following shared libraries from Dissidents Software: rx_intui.library (in rxintui.lzh uploaded to CIS) requestor.library (in fileio.lzh uploaded to CIS) Also requires ARexx Vers. 1.0 by William Hawes Files included: ArexxMenu.rexx - main menu program Exec1.rexx - support macro which autoruns programs RunF1.rexx - support macro to run programs in foreground with CLI ArexxMenu.rexx This is the main menu macro. The programming will be fairly self- evident. You can change the programs executed and alter the menus by simply changing the basic text elements. For more information on Dissident Software's shared libraries, I suggest you download the two archives listed above from CIS or PLINK. ArexxMenu.rexx is executed by the command line: Run ArexxMenu Or if you use William Hawes WSHell, then use: ArexxMenu & ArexxMenu will not automatically detach itself, so it must be RUN. Place the two support macros, RunF1.rexx and Exec1.rexx in your REXX: directory. REXX: must be assigned because the ArexxMenu macro will only find them in the assigned REXX: directory. Exec1.rexx This macro takes a passed filename argument and based on the detected filetype will automatically run the program to which that file belongs, or if it's an executable the program will be run. You must edit Exec1 to provide the particular programs you want to be called depending on the filetype. Exec1 recognizes the following filetypes: Executables IFF picture files Excellence! word processing files Prowrite word processing files Advantage spreadsheet files MaxiPlan III spreadsheet files CanDo decks 8SVX sound files Professional Page 1.3 files Pagestream 1.8 files IFF animation files DigiPaint .DYN files LHarc archive files ARC archive files ZOO archive files ZIP archive files (PKAZip is hard coded in Exec1, but can be changed) ARexx macros Exec1 has an internal list of filetypes and programs which are run for certain of these filetypes. You can change these programs to those you use. The programs you can provide are: textviewer program to run to view text files pictureviewer program to show picture files unzoo program to unzoo ZOO archives unlzh program to unarc LZH archives unarc program to unarc ARC archives arcdir directory to receive dearced files playsound 8SVX sound player player program to run animations editor program to use to edit files All of these may be changed according to your particular setup. Changes should be obvious from the code. RunF1.rexx This support macro is used to provide a CLI for executing programs which have no .info file. ArexxMenu checks the selected file for a corresponding .info file in the same directory. If none is found, then ArexxMenu assumes the program requires a CLI and will automatically use RunF1 to execute the file and provide a CLI. You should edit the parameters ypos and hite in RunF1 to position the CLI window where you want it. It is currently set up for my system which uses a 704 x 472 screen. You will need to change this to conform to your system. Bugs and comments to: Steven D. Kapplin CIS 70055,1021 These macros are intended for instructional purposes to demonstrate the use of Dissident Software's new ARexx support libraries. Understand that Willy Langeveld's RexxArpLib.library is quite similar. Both libraries have functions not duplicated in the other. Please be aware than both libraries cannot be used simultaneously because some of the function calls use the same name. This is perhaps the major drawback because it isn't possible to supplement missing functions with the other library. Perhaps Dissidents will consider changing the names of the duplicate functions and permit both libraries to be used together.