-------------------------------------------------------------------------------- AppMenu.doc -------------------------------------------------------------------------------- AppMenu - Version 2.0 (14.5.94) Copyright © 1993-1994 Marius Chwalczyk. All Rights Reserved. 'Copyright ' 'Introduction ' 'Installing and running' 'Using ' 'Author ' 'History ' -------------------------------------------------------------------------------- Copyright -------------------------------------------------------------------------------- The package "AppMenu - Version 2.0" is Copyright © 1993-1994 by Marius Chwalczyk. All Rights Reserved. It's NOT ALLOWED to sell this package. It can be freely distri- butable as long as: 1. only a moderate charge (copying, data medium price) is allowed. 2. all of the files listed above are included in their original form without modifications of any kind. AppMenu 9996 - preferences command AppMenuCx 4396 - program starter command Copyright-ReadMe 1316 - this file Copyright-LiesMich 1575 - this file in german AppMenu.guide 12281 - english documentation AppMenu_D.guide 15791 - german documentation AppMenu.info 993 - \ AppMenuCx.info 860 - | Copyright-ReadMe.info 835 - | Copyright-LiesMich.info 835 - > icon files AppMenu.guide.info 841 - | AppMenu_D.guide.info 841 - / 3. the pachage can be packed (e.g. with LhA or Lharc), but no crunching of executable files is allowed. If this package will be included in PD series, please inform me ('the author') about it. Thanks for a free copy of the distribution. This program is "as-is", all use is at your own risk. -------------------------------------------------------------------------------- Introduction -------------------------------------------------------------------------------- The pachage AppMenu have two Workbench utilities. Both run only under Release 2 (V37) and later versions of the AmigaOS. The one 'AppMenuCx' is a commodity that adds menu items to the Workbench's Tools menu. When a menu item is activated, AppMenuCx starts a command. The command is started as separate, asynchronous processes. You can also choose its arguments through icons or file requester. All menu items and commands can be free defined with the help of the second program 'AppMenu'. This program works like the others preferences programms. -------------------------------------------------------------------------------- Installing and running -------------------------------------------------------------------------------- Copy both programs 'AppMenuCx and AppMenu' in directories you choosed. Best place first in WBStartup drawer, second in Prefs drawer. Two preferences files will be used too (like by system prefs): "ENV:AppMenu/AppMenu.prefs" and "ENVARC:AppMenu/AppMenu.prefs". You must create both directories with "MakeDir ENV:AppMenu" and "MakeDir ENVARC:AppMenu". You can start both programs from Workbench or from Shell. AppMenuCx is a commodity and uses only one Shell argument or one icon's tool type: CX_PRIORITY=. Default is 0. See Workbench handbook about commodities. AppMenu have folowing Shell arguments: FROM=, EDIT, USE and SAVE. '' is the preferences file (default "ENVARC:AppMenu/AppMenu.prefs"). Use it like Workbench's preferences programs. AppMenu uses two tool types too. They are always used, also by Shell start. SCREENFONT= says if AppMenu should use the preferences Screen Font instead of "Topaz/8". Default is YES. Note that only the height of the gadgets is adjusted, so if the font is to wide the texts can go over gadgets. SAVEICONS= is used for state of the 'Create Icons?' menu item. -------------------------------------------------------------------------------- Using -------------------------------------------------------------------------------- AppMenu creates a file with description of the menu items. AppMenuCx needs it to make items in the Tools menu and to starts the commands. AppMenu's window presents a list gadget with its scroller and a string field below, a separate string field, a cycle gadget and six buttons. It have a menu too. There are folowing gadgets: ' ' ' ' list ' ' Menu Items: ' ' of ' ' ' 'menu items' ' ' ' ' New ' ' Del ' ' 'menu item' ' Command: Arg: ''arguments'' '>' ' 'command' ' ' Save ' ' Use ' ' Cancel ' And folowing menu items: Project Edit Options 'Open... 'O'' 'Last Saved 'L'' 'Create Icons? 'I'' 'Save As... 'A'' 'Restore 'R'' 'About... ' ~~~~~~~~~~~~~ ~~~~~~~~~~~~~ 'Copy 'C'' 'Quit 'Q'' 'Paste 'V'' 'Move Up 'U'' 'Move Down 'D'' AppMenuCx has no window, but you can control it like others commodities with the "Exchange" program. AppMenuCx uses always the newest "ENV:AppMenu/AppMenu.prefs" file. -------------------------------------------------------------------------------- Menu Items -------------------------------------------------------------------------------- This listview gadgets show the item list. To change a item just select it. Now you can update the 'Command' text. Press Return or Tab key or change 'Arg' gadget to activate the string field below the listview gadget. Here you can modify the item text and press Return to take the item back to the list. -------------------------------------------------------------------------------- Command -------------------------------------------------------------------------------- Type the command and its arguments you want to execute. Note that you must specify the full path of the command when you start AppMenu from Workbench. It knows "C:" path only in this case. You can solve this problem when you add this line in "S:User-startup": "ASSIGN C: ADD". The arguments will be added at the end of the command. If it needs them on the other place, mark it with ' [] ' like by Alias command. It's possible to type several files when you separate them with . All programs will be started synchronous. It's made internal through the DOS function System() so you can use it by 'Execute Command...' or in Shell too. -------------------------------------------------------------------------------- '>' - Choose command -------------------------------------------------------------------------------- Show file requester. You can choose new text for 'Command'. -------------------------------------------------------------------------------- Arg -------------------------------------------------------------------------------- Select if and from where you want arguments to a command. If one of the string gadgets is active you can press and to select it. The possibilities are: None Execute command without extra arguments. Requester If you activate the item a file requester appears and you can choose a file name as an argument to the command. You can cancel the execution too. Icons The names of selected icons in Workbench (if any) will be arguments. Icons/Req Same as above. If no icon selected as 'Requester'. -------------------------------------------------------------------------------- New -------------------------------------------------------------------------------- Add a new item to the list. Just type a 'Command' text, choose 'Arg' and write a menu item text. To quick add programs put their icons in the AppMenu window. To add a new item befor an existing item in the list simple select this item first. The number of items you can add is limited only by available memory, the system (V37) however creates only 63 selectable menu items. -------------------------------------------------------------------------------- Del -------------------------------------------------------------------------------- Remove the selected item from the list. -------------------------------------------------------------------------------- Save -------------------------------------------------------------------------------- Save the item list to "ENVARC:AppMenuCx/AppMenu.prefs". Further as 'Use'. -------------------------------------------------------------------------------- Use -------------------------------------------------------------------------------- Save the item list to "ENV:AppMenuCx/AppMenu.prefs" and quit AppMenu. -------------------------------------------------------------------------------- Quit, Cancel -------------------------------------------------------------------------------- Quit AppMenu. If the changed items are not saved a requester appears. -------------------------------------------------------------------------------- Open... -------------------------------------------------------------------------------- Load new items from a selected file. If the changed items are not saved a requester appears. -------------------------------------------------------------------------------- Save As... -------------------------------------------------------------------------------- Save the item list to a selected preferences file. -------------------------------------------------------------------------------- Last Saved -------------------------------------------------------------------------------- Load the at last with 'Save' saved items. -------------------------------------------------------------------------------- Restore -------------------------------------------------------------------------------- Undo all changes in the list since the programm starts. -------------------------------------------------------------------------------- Copy -------------------------------------------------------------------------------- Copy the text of a item to clip. It will be all saved in the form: ';. So you can delete this item and add it back to the list at other place with 'New' and 'Paste'. You can use it in Shell (note ';') too. -------------------------------------------------------------------------------- Paste -------------------------------------------------------------------------------- Change current command with a text from clip. If the text has the form like in 'Copy' all will be changed. -------------------------------------------------------------------------------- Move Up, Move Down -------------------------------------------------------------------------------- Move the selected item in the list by one up or down. -------------------------------------------------------------------------------- Create Icons? -------------------------------------------------------------------------------- Says if create an icon for file from 'Save As...'. -------------------------------------------------------------------------------- Author -------------------------------------------------------------------------------- If you have some comments, additional ideas, bug reports, or you want to reward my work feel free to send me a letter or to call me. You can reach me via Mail: Marius Chwalczyk Zigelstr. 59/165 D-67655 Kaiserslautern Germany Phone: 0631-10944 AppMenu and AppMenuCx are written in C and compiled with SAS/C 6.51. They are tested on an Amiga 3000 (KS 37.175, WB 37.71) with "Enforcer" and "Mungwall". -------------------------------------------------------------------------------- History -------------------------------------------------------------------------------- 2.0 (14.5.94) - Progamm splited in AppMenuCx (Tools menu) and AppMenu (prefs) AppMenuCx: - added: place holder ' [] ' to mark where to place arguments - added: multiple select and pattern matching options to file requester AppMenu: - bug fixed: gadgets ('New') and menus working correct now. - changed: both CREATEICONS and SCREENFONT are default YES and only as tool types, but used if started from Shell too. - changed: 'Copy' uses all texts; 'Paste' doesn't create new items, but changes the current one ('use New' first). - added: menu multiselect support and more menu shortcuts. - added: menu items are execable via shortcuts from active string gadgets. - added: if string gadgets active press for next and for previous 'Arg'. - added: gadget for file requester to select 'Command'. 1.4 (4.7.93) - Bug fixed: if several icons were droped together in the window and some had spaces in names, their commands were false quoted. - After 'Paste From Clip' or 'New' the menus 'Move Item Up/Down' are always "ghosted" now. - Parsing optimized (using ReadArgs()/FindToolType() instead of ArgXXX() now). - New argument added: SCREENFONT. 1.3b (15.6.93) - If prefs file doesn't exists AppMenu1.3 requests 'Error while loading prefs' and quits. Now it stays running after the message. 1.3 (2.6.93) - Changed prefs format from ASCII to IFF, "ConvertPrefs" writen to convert old prefs files. - Storing Prefs temporary in "ENV:AppMenu/AppMenu.prefs" now. - Added new functions: 'Open...', 'Save As...', 'Last Saved', 'Restore', 'Copy To Clip', 'Paste From Clip', 'Move Item Up/Down'. - Bug fixed: preferences were always saved in "ENVARC:AppMenu/AppMenu.prefs" - Bug fixed: Enable/Disable from Exchange (the two bugs only in 1.2 - forgot to test the code that I "optimized"). - Some code optimized but tested this time. :-) 1.2 (29.4.93) - No bugs found or reported - no bugs fixed! :-) - Added possibility to arrange the order of the commands. (Thanks to Kevin A. Kirk for this suggestion.) - New argument added: PROGITEM. - File requester remember previous selections. 1.1 (25.3.93) - first public release. - Saving preferences in separate file instead of in tool types. - Added prefs-not-saved-requester. - Added 'Icons' as arguments. 1.0 first internal release.