═══ 1. Copyright ═══ (C) Copyright 1995, 1997 by Janosch R. Kowalczyk. All rights reserved Greed is a universal source code generator to work with user defined code templates (e.g. REXX, VREXX, IPF, HTML etc.). This Greed version is free of charge -> but it isn't FREEWARE. You are allowed to use this program as an "evaluation copy" for private puposes only. With this present version you are not able to change any of the contents except the contents of the *.FNC files. If you like to use this application for education or commercial purposes, contact the Author for license agreement and pricing. Greed Logo Image Copyright CompuServe ═══ 2. Trademarks ═══ The following terms are trademarks of the IBM Corporation:  Common User Access (CUA)  Database 2 OS/2 (DB2/2)  Extended Services for IBM  IBM  Operating System/2 (OS/2)  Warp  Presentation Manager  Systems Aplication Architecture (SAA) ═══ 3. Disclaimer ═══ This package is provided as is, without any guarantees or warrantees whatsoever. The author is not liable or responsible for any loss or damage of any kind whatsoever, including, but not limited to, losses of a financial, physical, emotional, marital, social, or mental nature that may result from the use or the purported use of anything in this package, for any purpose whatsoever. Thanks to Michael Shillingford for this wording. ═══ 4. System Requirments ═══ System Requirments HARDWARE - IBM PC or PC Compatible - 3,5 MB free harddisk space (more for your own extentions) - Mouse or other pointing device Recommended - CPU: 6x86, K5, Pentium or higher - at least RAM 16 MB - Video resolution 800x600 or 1024x768, 256 colors - Soundblaster 16/32 Bit (optional) SOFTWARE - IBM OS/2 Warp 3.0 with REXX support, Warp 4.0 or higher ═══ 5. Motto ═══ No windows, No gates, No bill! ═══ 6. What is GREED ? ═══ GREED - General Rexx Extended EDitor - is a universal source code generator to work with user defined code templates. It has a modular structure and consists of three independent modules:  Templates Controller, the universal code controller.  Template Editor to edit the templates for Greed and Greed Templates Controller.  Browser - the small file viewer with both text and hexadecimal mode. The menu bar option Rexx of the main window is the interface to the code templates for Rexx, RexxUtil, VRexx and mciRexx functions from either the 'greed.fnc' or 'greedx.fnc' file. The calls for extended modules are built-in into the main window menu options, but you can call these out of the main program too. Copyright | Trademaks | Disclaimer | System Requirements | Motto | Thanks | Author | ═══ 6.1. Last change. ═══ GREED's last change at Jan, 26, 1998 Current Version: 2.23 ═══ 7. General information ═══ The following section describes general features of Greed. ═══ 7.1. Standard buttons. ═══ In most of Greed's windows you'll find the keys (Push Buttons) which have same meaning everywhere:  Undo - all changes are suspended.  Default - the affected options are set to their standard values.  Help - the context sensitive help will be displayed.  Back - all changes will be saved and the window closed.  Save - all changes will be saved but the window will be not closed. All other buttons, if present, have their own description in the context sensitive help windows. ═══ 7.2. Call parameters line ═══ The Call Parameters Line is situated on the top of Greed's window. It is a combination box with the list of all up to now entered commands and/or call parameters for run the just edited Rexx procedure. The contents of the Call Parameters Line will be interpreted as call parameter(s) when you have pressed the push button Run. If you use the Execute push button instead, it will be interpreted as OS/2 Command. You can call from the Call Parameters Line Entry Field all OS/2 Commands and all programs. The current working directory is this one of the file just edited. Enter the required Command in the Call Parameters Line and click the button Execute or press the Enter key on the Keyboard . The Command output will be directed into the file $EXECUTE.$$$ and showed in the Editor and the File Manager as Execute command output The Command output file will be deleted after you exit Greed. You can fetch one of the up to now used call parameters or commands from the Call Parameters Line's Combination Box. ═══ 7.3. Greed's Features ═══ The most important (but not all) features of GREED are: 1. Switch between 2 template files for the simple or extended code generation. This Option needs the file named GREED.FNC for simple templates and the file GREEDX.FNC for extended templates. If you are using these files for Greed Extents be sure you don't delete any function from them; they are templates for the main menu option Rexx. Note: The menu options have same names as the functions in the template files. 2. Generation of frames for a Rexx program with:  Comment ,  Exception handling,  Registration of other Rexx functions (default: RexxUtil, VRexx, mciRexx). 3. Ability to insert the contents of any other text file into the source code just edited. 4. Test run for the edited source without the necessity to store it. 5. Print control functions:  Choice of the Print port.  Spool control. 6. Work with the clipboard:  Copy/Cut to clipboard.  Paste from clipboard.  Edit clipboard. 7. Set comment for selected textstring. 8. Find and change textstrings. 9. Notebook for settings:  Code and Clipboard control functions.  Font and Color change functions.  Store settings (upper case, lower case, free).  File information and attributes change function.  Internal Greed Options. 10. Call of Info files (if existant) for Rexx, Vrexx, mciRexx and ORexx and OS/2 Command References from the help menu. ═══ 7.4. Greed Templates Controller. ═══ Greed Templates Controller is an Add-On product for GREED. You can use it to work with the templates that are written into either your own templates files or standard GREED-templates files, but they are out of reach the main menu option Rexx It is a container with a tree-view of template applications. You can copy the template's code into the clipboard either via the pop-up menu or via the double mouse click (button 1) on the function name. This kind of work allows you to use Greed Templates Controller for all possible editors which can paste from the clipboard. See help of Greed Templates Controller for more information. ═══ 7.5. Template Editor. ═══ Template Editor is a universal editor for the text-string Values of the INI-files. The Greed's functions files (usually but not always with the extent *.FNC) are stored into this file type. The structure of this file is used as follows: application is the group of functions, key is the name of the function value is the template by itself. The benefits of the usage of this file structure are:  prompt search for the value in a large template file,  switch between different template files,  exclude functions which you will not actually use,  ascending sort for functions and their groups,  selective edit of the template value. You can write the templates directly into the template file by using the Template Editor or you can edit the function groups using control characters (like VisPro addon files): @ - for function group, % - for function name, $ - for function value. as a Text file and then translate it to the INI-format. See help of Template Editor for more information. ═══ 7.6. Browser. ═══ PM Browser is a program to view all sorts of files in both:  text mode or  hexadecimal mode. You can't directly edit the already viewed file, although you can call the OS/2 system editor to do that. In the hexadecimal mode, the hex digit will be showed verticaly below the character line:  zone in the first line after and  numeric in the second line. See help of PM Browser for more information. ═══ 7.7. Lock Editor. ═══ Lock Editor is a feature that allows you to protect your edited text against happen to overwrite. You can set the editor into the read-only state using the menu option Utilities - Lock editor The menu item text will be changed to Unlock editor, so you see the option works as flip-flop switching unit. If the editor is locked, you will see in the title bar of Greed following message: EDITOR LOCKED. To unlock it, use menu option Utilities - Unlock editor ═══ 8. File related functions. ═══ This chapter describes all file related functions of Greed. The most of these functions are accessed over the menu option File. Others such as Switch, direct over the dedicated push button. ═══ 8.1. Edit a new program. ═══ With the menu option New from the main menu option File you can open a new file for edit. This file, named NEWREXX.CMD, will be situated in the current working directory. This file gets the frame that is dependent on the current frame settings in the options-notebook. ═══ 8.2. Open edit file. ═══ To open an existing file for edit, use menu option Open from the main option File. You get the standard OS/2 dialog box to open a file. You can select the drive, the directory and file you want to open. Use the OK button to confirm or Cancel to suspend your choice. Greed allows you to edit up to 256 files simultaneous (in parallel). You can switch between edited files either in the File Manager (in the menu option File or the push button File Mgr.) or by using the push buttons << (backward) and >> (to the front). You will be prompted to save all modified files at the Greed close time. ═══ 8.3. Switch. ═══ Greed allows you to edit up to 256 files simultaneous (in parallel). When you open an existing file or create a new file to edit, the currently edited file will be hidden. You can switch between edited files either in the File Manager (in the menu option File or the push button File Mgr.) or by using the push buttons << (backward) and >> (to the front). You will be prompted to save all modified files at the Greed close time. ═══ 8.4. Test run. ═══ You can start the test run of the currently edited file. The menu option Run allows you to start the Rexx procedure either:  in PMRexx window or  in-Storage routine or  as Traced with Result in PMRexx window. The Run push button started the Rexx procedure in a PMRexx window. You always run the newest release of your file without the necessity to save it. The test file gets the temporary name RUNxxxxx.CMD, where 'xxxxx' is a 5-digit random integer. This temporary File will be created in the current directory and always deleted if you run the next test or you end the Greed session. Note: You get no output on the Screen if you use the in-Store run method. ═══ 8.5. Print functions. ═══ You can send the file just edited or the selected text to a printer. Refer to the operator's manual of your printer for more information. The function Cancel print allows you to delete the current print job. Other function: Spool delete clears the print spool from all actually queued jobs Printer options ═══ 8.6. Insert file. ═══ The file option with the same name (Insert file) provides the possibility to insert an external file into your currently edited file. You get the standard OS/2 dialog box to open a file to insert. If you confirm your choice with the OK-key, the new file will be inserted at the current cursor possition. ═══ 8.7. File Manager. ═══ Greed allows you to edit up to 256 files simultaneous (in parallel). When you open an existing file or create a new file to edit, the currently edited file will be hidden. You can switch between edited files either in the File Manager (in the menu option File or the push button File Mgr.) or by using the push buttons << (backward) and >> (to the front). File Manager help you to manage already opened and open new files. You have following options to do it:  Open - Opens a new file to edit.  Save - Saves currently selected file.  Save as - Saves currently selected file under other name.  Free - Closes current file and free it from the File Manager.  Cancel - Closes the File Manager without any changes. You will switch to an another file, if you select a file name from the File Manager's List Box. You will be prompted to save all modified files at the Greed close time. ═══ 9. Edit functions. ═══ This chapter describes all editor functions of Gredd. The most of these functions are accessed over the menu option Edit. Others such as Copy or Paste, additional over the dedicated push buttons. ═══ 9.1. Clipboard. ═══ You can use the Clipbord in the same manner as used by other editors: Cut Copy Paste. Additionally you have a tiny Clipboard editor which helps you to edit the contents of the clipboard separately. In this editor you can: Paste from clipboard to multiply its contents, Undo the last change, Delete the Clipboards contents and Save the edited text back. ═══ 9.2. Find and change text. ═══ This function allows you to search for and change a text in your actually edited file. It works (like other editors) with the following options and buttons:  Find - the button that starts the search process (at the current cursor position). This button is only enabled if you have already entered the string to be searched for.  Change then Find - the button to carry out the change action and to start the search for the next occurance of the search string. This button is enabled if at least one searcheded string was found.  Change - the button to carry out the change action. This button is enabled if at least one searcheded string was found.  Change all - the button to carry out the change action for all occurances of the searched string. This button is enabled if at least one searcheded string was found.  Cancel - end this function.  Case sensitive - use this check box to search for exactly equal strings.  Wrap - use this check box to start the search again at the beginning of your file. ═══ 9.3. Clear text. ═══ They are two options that allow you to clear a portion of or the total text you are editing:  Clear - to delete the selected portion of the text,  Clear all - to delete the entire (selected) text. Note: If you have cleared the total text and saved your file - the empty file will be saved. ═══ 9.4. Set comment. ═══ With this option you can set comment characters around the selected text: "/*" at the beginning and "*/" at the end of selection. ═══ 9.5. Set border strings. ═══ Set border string allows you to set any strings at the start and at the end of the selected text. These strings can be defined in the Settings notebook on the page General. The default value for the prefixing string is >>> and for the suffix: <<<. The maximum length for the strings is 256 bytes each. ═══ 10. Greed's options. ═══ With the menu option Settings you can personify your Greed installation. This option displays an Settings Notebook to change or set Greed's properties. Following Notebook pages are for your disposal:  Options  General  Attributes  File All pages of the options notebook have at least two buttons: Undo - to undo your current changes Default - to set the default values for these options. ═══ 10.1. Editors settings ═══ There are three arrows of options for the editor. All these options you can set on the Options pge of the Settings Notebook: 1. Backup - this option allows you to made a backup for the just opened file. The default is NO. If you selected this option, you can decide what extent will you use for the backup file. The default is .G~D. 2. Save options - you have three kinds of save options to choose: Case free (default) - the text will be saved in this form, you have used, Uppercase - the text will be saved in upper case, Lowercase - the text will be saved in lower case. 3. Auto saving - you can set the auto saving interval between 1 and 60 seconds. Additional you can set following general options on this page:  Exit confirm - if this option is ON, you will be prompted for confirmation befor the editor will close.  Use alternate templates file - this option switches between both standard templates files: greed.fnc and greedx.fnc. You can select and change the active port for your print output. This is possible via the settingss notebook, page Options You have 4 possibles ports to select from: 1. LPT1 (default), 2. LPT2, 3. LPT3 or. 4. PRN. Print functions ═══ 10.2. Change colours. ═══ Although you can change the color settings using the systems color palette, you can also use internal Greed possibilities too. To change the current color, select the arrows of the spin buttons:  Foreground to change the color of the text,  Background to change the color of the editor's window, and select the required RGB values. The changes can be immediately seen in the test field of this pages and in Greed's edit window. ═══ 10.3. Change font. ═══ You can change the font settings using the systems font palette but you can also use internal Greed possibilities too. Greed allows you to set only the monospaced fonts to edit. This make sense because Greed is really an editor to write the source code of programs. To change a font select the desired font name and font size on the Font page of the options notebook. The changes can immediately be seen in the pages test field and in Greed's edit window. ═══ 10.4. General settings ═══ They are four arrows of the general options for the editor: 1. Border strings. It allows you to set any strings at the start and at the end of the selected text. These strings can be defined in the Settings notebook on the page General. and used from the menu option Edit - Set border strings. 2. Warning - a warning (a beep) for the definite record length (cursor position) between 1 and 256 characters. Position 0 for the warning switches off it. 3. Logo. It enables or disables showing of the Greed's logo at the call time. You can set the show time to the value between 0 (switched out) and 30 seconds. 4. Exit. If this option is true, you will be prompted to confirm exit from the editor. (Only if you use Push button Exit or same named menu option in the option File. ═══ 10.5. File attributes ═══ This notebook page allows you to show the following files information: 1. File size in Bytes 2. EA size in Bytes 3. Last access date - for HPFS only 4. Last change date - for HPFS only 5. Create date 6. Standard Attributes (these Attributes can you change directly from this page):  Archive,  Hidden,  Read only  System ═══ 10.6. Printer options. ═══ You can select and change the active port for your print output. This is possible via the settingss notebook, page Options You have 4 possibles ports to select from: 1. LPT1 (default), 2. LPT2, 3. LPT3 or. 4. PRN. Print functions ═══ 10.7. Save settings ═══ The current settings are always saved after you end work with Greed. These settings are standard settings for the next call. You can save your current settings from the Options notebook, using the Push Button OK, without the need to exit Greed. This is very useful to protect your settings from a crash. ═══ 11. Rexx option. ═══ The menu option Rexx includes templates for the following subjects:  Constructs,  API,  Rexx built-in functions,  RexxUtil, ═══ 11.1. Rexx API. ═══ Rexx API is a Rexx interface to manage the external functions packages and data queues for OS/2. Following functions are at your disposal: 1. RxFuncAdd, 2. RxFuncDrop, 3. RxFuncQuery, 4. RxQueue:  Create,  Delete,  Get,  Set. Refer to Rexx Information for details. ═══ 11.2. Rexx built-in functions. ═══ Rexx built-in functions are part of the Rexx language definition. They are subdivided in Greed as follows: 1. Boolean, 2. Data conversion, 3. Date and time, 4. Environment, 5. File system, 6. Numeric, 7. String, 8. Word, 9. Miscellaneous. ═══ 11.3. Rexx Utilities. ═══ The most interesting property of the Rexx Language is the ability to work with external functions packages. The standard function package for Rexx is RexxUtil. The following are function groups for RexxUtil in Greed's menu: 1. SysLoadFuncs, 2. Console related functions, 3. File system related functions, 4. Functions to control the objects, 5. Functions to read and write the INI files and object's EA's, 6. System related functions, 7. SysDropFuncs. ═══ 11.4. VRexx functions. ═══ The function templates for VRexx and mciRexx are only within reach of the Templates Controller. They are to find in the standard templates file (greed.fnc and greedx.fnc). Refer to the VRexx and mciRexx documentation for more information. ═══ 11.5. mciRexx functions. ═══ The function templates for VRexx and mciRexx are only within reach of the Templates Controller. They are to find in the standard templates file (greed.fnc and greedx.fnc). Refer to the VRexx and mciRexx documentation for more information. ═══ 12. Rexx books. ═══ In the menu option Help you can see the follwing INF files directly:  Rexx,  Vrexx,  mciRexx,  ORexx.  OS/2 References. Note: Only if the INF files can be found in the HELP path of the file CONFIG.SYS, are these menu options enabled. ═══ 13. Credits to ... ═══ Especially great thanks to Heribert Josef Gruenbauer (76155.3335@compuserve.com), for many new ideas, improvement suggestions (some of these you can see already in this release) and encouragement to further developement of Greed. Moreover, he is the author of the new Greed Icons, all Bitmaps and the main co-author of this information file. David L. White for his help in testing this product. He had new ideas and did some improvement suggestions and the correction of many texts. Moreover, he is the author of the HTML Code templates. That is a part of this packaging (html.fnc). Peter MacCarthy-Morrogh for correction of this help and info files and for his help in testing this product. Uwe Aust for his help in testing this product. To all the following GREED users thanks for draw my attention to some bugs and problems, for some im provement suggestions and requests and for praising of my job. I hope, with this version, to fulfil the most of these requests. - Tobias Herp 100073.3563@compuserve.com - Peter Adeberg 101456.3332@compuserve.com - Gerald Goertzel 70740.503@compuserve.com - Gottfried Enderer Gottfried.Enderer@lessons.sesom.de ═══ 14. Author ═══ Janosch R. Kowalczyk Oberwaldstrasse 42 D-63538 Grosskrotzenburg GERMANY Telephone: 0049 6186 201676 CompuServe: Janosch Please send your improvement suggestions Internet: Janosch@compuserve.com and your bug reports via email. I have a favour to ask of all, which read this document. My knowledge of the english language is just not very high. If you find so something merry or unintelligibly, send me the correction or call my attention to the unclear spot, please. By this means can this document appear with less mistakes in the next issues.