Shell Menus By: Mark Ritter Do you get tired of typing long path names for programs that are not in the directory you are currently in? Do you forget arguments for programs? Do you hate flipping through Workbench drawers, waiting for all the icons to be displayed, just to find one icon? Is your Workbench cluttered with many open drawers because your most often used programs are in different drawers? Do you forget which function key and qualifier has the macro you want? Is your hard- drive root directory packed with files and their icons? If you answered yes to any or all of these, then you need Shell Menus (SM). SM is a simple program to help Shell users be more prolific and save time. SM creates user definable menus that attach to the Shell window. SM offers an intuition interface to edit your menus instead of a text editor. To start SM, you must execute SM AFTER a Shell window has been opened. If no Shell window is open it will notify you and terminate execution. A good place to ensure that the Shell is opened first is to add a line to the end of S:Shell-Startup. You can put many commands there since it is just a script file that is executed. This, again, saves time and typing. To open SM's window, choose `Edit Menus...' from the Project menu or press the short-cut keys, RAmiga+E. To quit, either choose the menu or the short-cut RAmiga+Q. To execute a program in a menu, just select the item you want. Upon opening SM's window you will have the usual options: Load, Save, OK, and Quit. There is also a Menu dial for switching menus, a Clear Menu gadget to clear the current menu, and a Clear All gadget to clear all the menus. The menus are also accessible from SM's window for easy testing of your commands. SM is intelligent enough to know when a program needs an output window or not. Disk and file archives like DMS and LhA automatically have an output window opened to view what's going on. If a program has it's own window or screen, a window is not opened. The default menu preferences are stored in ENVARC:ShellMenus/ShellMenus.prefs. The directory will be created if it does not already exist. The rest is very self-explanatory and I don't wish to indulge in what you already should know. I hope you find SM to be a useful tool and that it makes your life a little more easy. Read the version notes below for new features; their instructions will be grouped with them. To clean-up your harddrive root directory it would be wise to group your programs in subdirectories by subject. ex: Music, MyUtilities, Archivers, Graphics, etc. Then, with SM, you won't have to type the path name, just pick the menu item to launch it. NOTES: * SM will only run on a Kickstart 2.04 or greater system. I did that for two reasons: to use the Asl and GadTools libraries and to motivate KS1.3 users to upgrade. * A harddrive is recommened, but not required. * The ENTIRE path must be given for programs not in the `C' directory or if their path was not added (ex: Path sys:MyStuff add). You must also supply all command line arguments. ex: DH0:MyUtilities/NewZap DH0:Tools/Commodities/AutoPoint ex: LhA -2 a VDK:test.lha DH0:c/#? Version 1.0 Released: 00-XXX-00 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - Not released to the public. - Preliminary construction. - Completely re-written from original attempt. - Beta testing and code improvements. - Update from SAS/C 5.10b to SAS/C 6.00 - Menu preferences: 5 Menus with 10 items each: Title: 10 characters Text: 15 characters Command: 255 characters Version 1.1 Released: 00-XXX-00 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - Still not released to the public. - Even more code improvements. - Added new Project menu items: Project Edit Menus... E Load Prefs Save Prefs ~~~~~~~~~~~~~~~ NewShell Launcher... L ~~~~~~~~~~~~~~~ Video Mode » -------------------------> NTSC Format Disk » --------> DF0: PAL ~~~~~~~~~~~~~~~ DF1: ~~~~~~~~~ Quit Q DF2: Boot NTSC DF3: Boot PAL ~~~~~~~~~ FFS NOICONS QUICK ~~~~~~~~~ Install Load and Save Prefs use the default path and name. You must use the interface to specify a different one. NewShell will open a new Shell window. You may edit line 2 of the prefs file to either `NewShell' or a custom string like: `NewShell "CON:0/100/100/100/Blah/CLOSE"'. Launcher is another little time saver. It will open a file requester allowing you to choose a program and have SM launch it for you. This is handy to load a program that has a space in the directory or the file, or both, on a different volume, or imbedded in multiple directories. Good For: "DF0:Downloads/New Demo.exe" or "DH0:Programming/C Files/My Prog/My Prog 1.0" Format Disk is just what it says. You can select certain options if you so desire. By default, FFS and NOICONS are checked. To format a disk, select the device from the menu. Multiple formats can be going simultaneously. NOTES: Selecting only install will still format the disk with the OFS and put a Trashcan icon on the disk. You must type "Install DFX:" in the shell. I will fix this in a later version, I don't know how just yet and not double-up the drive sub-menus. The disk name is line 7 of the preferences file. Quotes ARE necessary if you have a space in the name. Video Mode allows you to switch between NTSC and PAL via external programs. Boot NTSC and Boot PAL set the ROM Tags and after a reset the appropriate mode will be used. This is very useful for European megademos that have custom boot blocks. Paths: The programs are found in the default preferences path and may be substituted for any of your choice. To do so, you must edit your preferences file with a text editor. Lines 3 through 6 are the program paths and command line arguments. - Fixed bug in load and save code. Version 1.2 Released: 25-Oct-92 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - First public release - Added additional menu items. SM now has more menu items for users that use many programs under the same catergory. There are now 5 menus with 20 items each: Title: 10 chars Text: 20 chars Command: 255 chars This allows five additional menu-item text characters and ten additional menu-items. This should satisfy all users. It will also allow for more sections of similar programs, such as a diskcopy section of all combinations of drives in the bottom portion of a ¼ filled menu that was sitting empty. - Created a new Graphical User Interface (GUI). There are now two LISTVIEW_KIND gadgets, one for menu text and one the commands. The first item in the text gadget is the menu name, it is blank in the command gadget. All twenty items are in the gadgets with the menu title and ten items visible; all others may be scrolled into view. Clicking on an item or command will activate the string gadgets and place the item and command in them. Menu title's are selected the same way. Once an item and command are selected, the text gadget is selected for input. Pressing RETURN will jump to the command gadget. Pressing RETURN here will enter the menu item into the menu and gadget and de-activate the string gadgets. Below the string gadgets are two new gadgets: Swap Items and Clear Items. These are only active if a menu item is active in the string gadgets. `Swap Items' is a check-box gadget that, when checked, will allow you to swap the positions of two items in the same menu. After checking, click on the first item, then click on the item to switch with. The gadget will stay checked for multiple swaps. You must un-check the gadget to stop swapping and/or to change menus. `Clear Item' will erase only the currect item text and command strings, not the entire menu. - Fixed font and centering bug. SM will now handle larger title bar fonts with more than 8 pixels. The window will be adjusted and sized correctly to fit on the Workbench screen like the Workbench window does: Title bar is placed below screen title, height is adjusted for larger fonts, if font is too large the window will be moved up to accommodate. - Fixed a major menu text bug that plagued SM from day one. SM could not have been released until that problem was fixed. Copyright © 1992 Mark Ritter All Rights Reserved Mark Ritter 2008 Valley Vista Drive Bettendorf, IA 52722-3870 USA Shell Menus may be put on any disk-magazine or the like. All I ask is that you send me a copy of the disk-magazine just so I know how wide spread it has gone. The more I know it is being used the more time and effort I will put into future versions. Shell Menus is NOT Public Domain, it is Freeware. Please respect it.