home *** CD-ROM | disk | FTP | other *** search
/ Frozen Fish 1: Amiga / FrozenFish-Apr94.iso / bbs / alib / d5xx / d551 / toolmanager.lha / ToolManager / Doc < prev    next >
Text File  |  1991-10-28  |  28KB  |  734 lines

  1.  Documentation for ToolManager 1.5                                   10.10.1991
  2.  =================================
  3.  
  4.  
  5. NOTE to first time users: Please read the entire document!
  6.  
  7. NOTE to users of ToolManager 1.0-1.4: This version contains MANY changes and
  8.                                       enhancements, so please re-read the
  9.                                       entire document!
  10.  
  11. This program is freely distributable, but copyrighted by me. This means that
  12. you can copy it freely as long as you don't ask for any more money than a
  13. nominal fee for copying. THIS APPLIES TO GERMAN PD DEALERS TOO!!! This program
  14. may be put on PD disks, especially on Fred Fish's AmigaLibDisks. If you want to
  15. distribute this program you MUST keep this document and the source code with
  16. it. Program, document and source code must be distributed in their original
  17. unmodified form. Of course you can use an archiver like LHarc to make it
  18. available on mailboxes and FTP sites. This program cannot be used for
  19. commercial purposes without written permission from the author. The author can
  20. not be made responsible for any damage which is caused by using this program.
  21.  
  22. This program is freely distributable, so you don't have to spend a buck for it.
  23. But this program has cost me a lot of time (and sweat) to create it (especially
  24. version 1.3), so the only thing I'm asking for for it is that you send me a
  25. note if you are using ToolManager.
  26.  
  27. Send comments, suggestions or bug reports to:
  28.  
  29.    Snail : Stefan Becker, Holsteinstrasse 9, 5100 Aachen, GERMANY
  30.    Domain: stefanb@cip-s01.informatik.rwth-aachen.de
  31.    FIDO  : 2:242/7.6, Stefan_Becker@mowgli.fido.de
  32.  
  33.  
  34.  
  35.  
  36.  I. What is ToolManager?
  37.  -----------------------
  38.  
  39. ToolManager's purpose is starting Workbench tools and CLI programs. You can
  40. add your own programs to the Tools menu or put a special Application Icon on
  41. the Workbench, which works even with CLI tools. Every tool can have a special
  42. icon that is "docked" to a line of icons. The programs can be started by
  43. selecting their entries in the Tools menu and any selected icon from the
  44. Workbench will be the startup parameters for the program. You can also start a
  45. program by dropping an icon on the Application Icon or by double-clicking the
  46. icon. Or you can drop an icon on the "docked" icon or by clicking the "docked"
  47. icon. Last but not least you can start a program with a keyboard short cut.
  48.  
  49. BEWARE: This program makes heavily use of new 2.0 functions, so its completely
  50.         useless to all people who are still forced to use 1.3 :-) To get the
  51.         full functionality you should run it only under 2.04.
  52.  
  53.  
  54.  
  55.  
  56.  II. How to install ToolManager
  57.  ------------------------------
  58.  
  59. ToolManager needs to know what to put in the Tools menu. It can obtain this
  60. information from three possible sources: Either from the command line when
  61. it is started from CLI (in which case all applications must be CLI startable),
  62. interactively from the user on the workbench (applications must be WB
  63. startable), or from a configuration file.
  64.  
  65.  
  66. * CLI
  67.   Run ToolManager NOICON/S,ICONNAME/K,ICONFILE/K,CONFIG/K,OUTPUT/K,PATH/K,
  68.                   CX_POPUP/S,CX_POPKEY/K,CX_PRIORITY/K/N,NOREQ/S,DELAY/K/N,
  69.                   Tools/M
  70.  
  71.     Parameter         Description                          Default
  72.  
  73.     NOICON            Don't show the program icon          Show icon
  74.     ICONNAME <string> Name of the program icon             ToolManager
  75.     IC0NFILE <file>   File name for the program icon       Internal icon
  76.     CONFIG <file>     Name of configuration file           S:ToolManager.config
  77.     OUTPUT <file>     Name of the CLI output file          (see below)
  78.     PATH <pathlist>   List of directories for CLI path     No path
  79.     CX_POPUP          Open status window after startup     Don't open
  80.     CX_POPKEY <key>   Commodities HotKey definition        "rcommand help"
  81.     CX_PRIORITY <num> Commodities priority                 0
  82.     NOREQ             Don't display quit requester         Show requester
  83.     DELAY <num>       Wait "num" seconds before startup    Don't wait
  84.     Tools             Name of programs to add to the menu
  85.  
  86.   The default for the OUTPUT window is:
  87.   CON:0/0/640/150/ToolManager CLI Tool Output/INACTIVE/AUTO/WAIT/ALT
  88.  
  89.   The path list is a comma separated list of directory names, which will be
  90.   scanned by CLI tools to find programs they want to execute.
  91.   Example: BIN:,SYS:,S:
  92.  
  93.   The name of tool x will also be the name of its corresponding menu item.
  94.   All programs will be added as CLI tools.
  95.  
  96.   To install ToolManager permanently, add the following line to the
  97.   S:StartupSequence somewhere after the LoadWB command:
  98.  
  99.     Run >NIL: ToolManager [parameters...]
  100.  
  101.  
  102.  
  103. * Workbench:    <Click on ToolManager's icon>
  104.                 [<Click on program 1's icon>] ...
  105.                 [<Double click program n's icon>]
  106.  
  107.     ToolType          Description                       Default
  108.  
  109.     NOICON            Don't show the program icon
  110.     ICONNAME=<string> Use <string> as name for the
  111.                       ToolManager icon                  ToolManager
  112.     INTERNALICON      Use the internal icon instead
  113.                       of the startup icon
  114.     CONFIG=<file>     Read <file> as config file        S:ToolManager.config
  115.     OUTPUT=<file>     Use <file> as CLI output file     (see above)
  116.     PATH=<pathlist>   Use <pathlist> as CLI path        No path
  117.     CX_POPUP=YES|NO   Open status window after startup  No
  118.     CX_POPKEY=<key>   Set status window HotKey.         rcommand help
  119.     CX_PRIORITY=<num> Set TM's Commodities priority.    0
  120.     NOREQ             Don't show quit requester.
  121.     DELAY=<num>       Wait <num> seconds before
  122.                       adding App* stuff                 Don't wait
  123.  
  124.   The name of the icon will also be the name of its corresponding menu item.
  125.   All programs will be added as WB tools.
  126.  
  127.   If you want to start ToolManager at Workbench startup time, move its
  128.   icon into the Wbstartup drawer and add the ToolType 'DONOTWAIT' to
  129.   it. ToolManager uses the icon from which it was started as its icon,
  130.   if you don't set the 'INTERNALICON' ToolType.
  131.  
  132.   After startup you will notice additional entries in the Workbench Tools
  133.   menu and a neat icon on the Workbench (if you don't disable it).  To stop
  134.   ToolManager you can select the menu entry "Quit ToolManager" or send a break
  135.   signal to its process.
  136.  
  137.   NOTE: You can't exit ToolManager if a Workbench tool is still running.
  138.         ToolManager will flash the screen if you try it.
  139.  
  140.  
  141.  
  142.  
  143.  III. The configuration file
  144.  ---------------------------
  145.  
  146. After processing the startup parameters, ToolManager reads the configuration
  147. file. It is normally called "S:ToolManager.config", but this can be overridden
  148. by the CLI/WB Parameter 'CONFIG'. The configuration file consists of one or
  149. more of the following entries (all keywords are case insensitive):
  150.  
  151. <Tool type keyword>:
  152. <Parameter keyword> = <parameter>
  153.    .
  154.    .
  155. <Parameter keyword> = <parameter>
  156. #
  157.  
  158.  
  159.   Tool type keywords
  160.  
  161.     dummy      Non-operational dummy tool
  162.     cli        CLI tool
  163.     wb         WB tool
  164.  
  165.  
  166.   Parameter keywords
  167.  
  168.     alias      Name for the menu entry and the icon.
  169.  
  170.     realname   Program name of the tool. If this one is missing, the alias
  171.                name will be used to start the tool.
  172.  
  173.     workdir    Path name of the current directory for the tool. When a tool is
  174.                started, it will use this directory as the current directory.
  175.                ToolManager will also search the icon file in this directory. If
  176.                this one is missing, ToolManager's startup directory will be
  177.                used.
  178.  
  179.     path       (CLI Tools only!) Comma separated list of directory names for
  180.                the path of the CLI tool. The Global path list will be appended
  181.                to this list before the tool is started. Default: No path
  182.  
  183.     outfile    (CLI Tools only!) File name for CLI output file. This keyword
  184.                sets the "output" flag. Default: No output
  185.  
  186.     stack      Stack size for the tool. Minimum is 4096 bytes.
  187.  
  188.     hotkey     Hot key description. When you issue this key combination
  189.                ToolManager will start this tool. See table below for the
  190.                Commodities HotKey description keywords. Default: No hot key.
  191.  
  192.     menu       Switch the menu item on or off. Default: On.
  193.  
  194.     args       Switch the argument passing on or off. If a tool does not
  195.                except startup parameters or doesn't need them, you can switch
  196.                off the argument passing with this option. Default: On.
  197.  
  198.     wbfront    Move the Workbench screen to front before starting the tool.
  199.                Default: Off.
  200.  
  201.     output     (CLI Tools only!) Use the CLI output file as standard output
  202.                for the tool. Default: Off.
  203.  
  204.     iconname   Show the name of the icon. Default: On.
  205.  
  206.     icontype   Type of the icon file. This can be a normal icon (Icon) or an
  207.                IFF file (Brush). Default: Icon.
  208.  
  209.     iconfile   File name for the icon. If this one is missing, the real name or
  210.                the alias name will be used. The suffix ".info" is automatically
  211.                appended if the type is set to Icon.
  212.  
  213.     iconpos    Position of the icon. Default: No fixed position.
  214.  
  215.     dockon     This enables the "docked" icon. Default: No "docked" icon.
  216.  
  217.     sameicon   Use the same image for the Application icon and the "docked"
  218.                icon. Default: Use separate image.
  219.  
  220.     docktype   Type of the dock file. This can be a normal icon (Icon) or an
  221.                IFF file (Brush). Default: Icon.
  222.  
  223.     dockfile   File name for the dock icon. If this one is missing, the real
  224.                name or the alias name will be used. The suffix ".info" is
  225.                automatically appended if the type is set to Icon.
  226.  
  227. If you want to switch off one entry temporarily, then put a semicolon before
  228. its keyword like this: ";Menu" BEWARE: Don't save the configuration when some
  229. entries are commented out, because they will disappear!
  230.  
  231. The Application icon will appear if any of the icon parameters are supplied. If
  232. the Workbench decides that the icon won't fit on the place you selected, the
  233. icon will be moved to a free place chosen by the Workbench.
  234.  
  235. The "docked" icon will appear if any of the dock parameters are supplied. It
  236. will be added at the end of the dock line. You should only use icons with the
  237. same size for "docking," otherwise the dock window will have empty spaces.
  238.  
  239.   DUMMY entries:  Dummy tools do actually nothing and exist only for
  240.   "aesthetic" reasons.
  241.  
  242.   CLI entries: You can add any command line parameters after the program name
  243.   of a CLI tool.
  244.  
  245.   WB entries: You cannot supply command line parameters for a WB tool.
  246.  
  247.   ICON entry: There is one special configuration file line for describing the
  248.   position of the ToolManager icon:    ICON:<x>,<y>
  249.  
  250.   DOCK entry: There is one special configuration file line for describing the
  251.   position, orientation and the backdrop state of the dock window and the size
  252.   of one "docked" icon:
  253.     DOCK:<x pos>,<y pos>,<x size>,<y size>,<H or V><B or F>
  254.   H stands for horizontal, V for vertical orientation. B stands for move to
  255.   back, F for stay in front after opening. If you move the dock window around,
  256.   this entry will be updated automatically if you save your configuration.
  257.   Default: DOCK:0,0,41,41,VB
  258.  
  259.   NOTE: If a program name contains spaces (e.g. ram disk:prog) you MUST
  260.         enclose it in double quotes (e.g. "ram disk:prog").
  261.  
  262.  
  263.  
  264.  
  265. HotKeys are done via Commodities. A HotKey description looks like this:
  266. (everything is case insensitive)
  267.  
  268.   [<qualifier> [<qualifier>...]] <key>
  269.  
  270.   Qualifier keywords
  271.  
  272.     alt           either Alt key
  273.     ralt          right Alt key
  274.     lalt          left Alt key
  275.     shift         either Shift key
  276.     rshift        right Shift key
  277.     lshift        left Shift key
  278.     capslock      Caps Lock key
  279.     rcommand      right Amiga key
  280.     lcommand      left Amiga key
  281.     control       Control key
  282.     numericpad    Enables the use of a key on the numeric keypad
  283.     rbutton       Click the right mouse button
  284.     midbutton     Click the middle mouse button
  285.     leftbutton    Click the left mouse button
  286.     newprefs      Preferences changed
  287.     diskremoved   Disk removed
  288.     diskinserted  Disk inserted
  289.  
  290.  
  291.   Keys
  292.  
  293.     a .. z, 0 .. 9, etc.   Normal keys
  294.     f1 .. f10              Function keys
  295.     up, down, left, right  Cursor keys
  296.     help                   Help key
  297.     del                    Delete key
  298.     return                 Return key
  299.     enter                  Enter key (MUST be combined with 'numericpad'!)
  300.     backspace              Backspace key
  301.     esc                    Escape key
  302.     space                  Space key
  303.     comma                  Comma key
  304.     upstroke               Upstroke key
  305.  
  306.  
  307.   Examples
  308.  
  309.     lalt ralt enter
  310.     ramiga f10
  311.     alt x
  312.  
  313.  
  314.    NOTE: Choose your hot keys CAREFULLY, because Commodities has a high
  315.          priority in the input events chain (i.e. will override existing
  316.          definitions).
  317.  
  318.    NOTE: The Workbench screen can be moved to front before starting the tool
  319.          via HotKey.
  320.  
  321.  
  322.  
  323.  
  324. Configuration file example:
  325.  
  326. ICON:200,10
  327. WB:
  328. Alias    = New Shell
  329. RealName = C:NewShell
  330. Path     = BIN:,S:
  331. Menu     = OFF
  332. IconFile = SYS:Shell
  333. IconPos  = 300,200
  334. SameIcon = On
  335. #
  336. CLI:
  337. Alias    = Edit Text (CLI)
  338. RealName = C:DME
  339. WorkDir  = SYS:
  340. Stack    = 20000
  341. HotKey   = ralt e
  342. WBFront  = ON
  343. IconName = OFF
  344. IconFile = Editor.iff
  345. IconType = Brush
  346. IconPos  = 300,250
  347. #
  348. CLI:
  349. Alias    = Show Directory
  350. RealName = Dir SYS: all
  351. Output   = CON:0/0/640/256/Test
  352. #
  353. DUMMY:
  354. Alias    =
  355. #
  356.  
  357. The last one gives you an empty menu entry. For more examples please look at
  358. the supplied configuration file.
  359.  
  360.  
  361.  
  362.  
  363.  IV. How to use ToolManager
  364.  --------------------------
  365.  
  366. When ToolManager is active, you can see additional entries in the Workbench
  367. Tools menu. To start a tool you select its entry. Easy, isn't it? You can also
  368. select some icons on the Workbench to supply the tool with parameters. If the
  369. tool has an icon you can start it with a double-click or by dropping another
  370. icon on the tool icon. If the tool has a "docked" icon you can start it with a
  371. click or by dropping another icon on it. Last but not least you can start a
  372. tool using a HotKey.
  373.  
  374. ToolManager supports two different startup methods for tools:
  375.  
  376.   CLI startup
  377.     The tool is started as a CLI process. The selected icons will be converted
  378.     to file names, which are then joined with the tool name to a CLI command
  379.     line. The system default stack size will be used to run the tool.
  380.  
  381.     NOTE: There is a limitation of 4096 characters for the resulting command
  382.           line.
  383.  
  384.     NOTE: You can supply a path for a CLI tool.
  385.  
  386.     NOTE: The output of a CLI tool can be redirected into the CLI output file.
  387.  
  388.   Workbench startup
  389.     The tool is started as a Workbench process. If the tool has a project icon,
  390.     ToolManager will retrieve the name of the default tool. From the tool icon
  391.     it will read the ToolWindow definition and the stack size. This one will
  392.     override the configuration file stack parameter if it is greater. The
  393.     selected icons will be directly passed to the tool.
  394.  
  395. There are two special menu entries. The first one is "Quit ToolManager", which
  396. causes ToolManager to quit if you select it. The second one is "Open TM Window",
  397. (this one shows only up when the program icon is switched off ) which causes
  398. ToolManager to open its status window. You can also open this window by double
  399. clicking the program icon, or you can use the status window HotKey, in which
  400. case the Workbench screen will be moved to front so that you can see the
  401. window.
  402.  
  403. To add a new tool, you just drag a Tool (or Project) icon on ToolManager's icon
  404. or on the status window and it will be added as a WB tool. If you start
  405. ToolManager a second time, it will pass its startup parameters to the already
  406. running ToolManager process. They will be added as WB tools if an icon exists
  407. for them, otherwise as CLI tools.
  408.  
  409. The status window contains a list of all tools and allows you to manipulate
  410. them. You can select a tool by clicking on its name in the list. If you double
  411. click an item the tool will be started. The status windows contains some
  412. gadgets to manipulate the tool list or to control ToolManager. All these
  413. gadgets also have entries in the status window menu (Right Amiga keyboard short
  414. cuts in parenthesis).
  415.  
  416.    Start (G, menu only)
  417.     Start the selected tool.
  418.  
  419.     NOTE: You can not supply any selected icons as startup parameters if you
  420.           use the start menu entry or the double click feature of the list
  421.           gadget. The same is true for HotKey startup.
  422.  
  423.    Top (T)
  424.     Move the selected tool to the top of list
  425.  
  426.     NOTE: If the tool has a menu entry or a "docked" icon, these entries will
  427.           NOT be moved. But the tool entry will be saved at the right place in
  428.           the configuration, so the entry will be at the right position next
  429.           time you start ToolManager. The same is true for the gadgets Up, Down
  430.           and Bottom.
  431.  
  432.    Up (<)
  433.     Move the selected tool one place up in list
  434.  
  435.    Down (>)
  436.     Move the selected tool one place down in list
  437.  
  438.    Bottom (B)
  439.     Move the selected tool to the bottom of list
  440.  
  441.    New
  442.     Add an empty dummy tool to the list, which can then be edited. If a tool is
  443.     selected, then the new entry will be inserted after that tool, otherwise it
  444.     will be added at the end of the list.
  445.  
  446.    Edit (E)
  447.     Opens a window for editing the definition of the selected tool.
  448.  
  449.    Remove
  450.     Remove the selected tool.
  451.  
  452.    Enable (A)
  453.     This enables the HotKey feature.
  454.  
  455.    HotKeys (Menu item: List, L)
  456.     Opens a window with a list of all active HotKeys.
  457.  
  458.    Disable
  459.     This disables the HotKey feature.
  460.  
  461.    Dock On
  462.     If tools with "docked" icons exist, then the dock window will be opened.
  463.  
  464.    Dock H/V
  465.     Change the orientation of the dock window from horizontal to vertical or
  466.     vice versa.
  467.  
  468.    Dock Off (C)
  469.     Close the dock window.
  470.  
  471.    Save (A)
  472.     A file requester will open, in which you can select the name of the
  473.     configuration save file. If you click on the OK gadget, ToolManager will
  474.     write its current configuration on this file.
  475.  
  476.    Hide (H)
  477.     Close the status window.
  478.  
  479.     NOTE: It will remember its current screen position for the next time you
  480.           open it.
  481.  
  482.    Quit (Q)
  483.     Quit ToolManager.
  484.  
  485. Additional menu entries in the Project menu:
  486.  
  487.    New (N)
  488.     Delete the current configuration.
  489.  
  490.    Open (O)
  491.     Delete the current configuration and load a new one from a file.
  492.  
  493.    Append
  494.     Read new tool definitions from a file and append them to the list.
  495.  
  496.    Save (S)
  497.     Save the current configuration to the last specified configuration file.
  498.  
  499.    About
  500.     Tells you something about ToolManager.
  501.  
  502.  
  503. The edit window shows the current definition of the selected tool. It is
  504. displayed in the same format which is used in the configuration file. You can
  505. now change the definition. If you select the OK gadget, the changes will be
  506. used by ToolManager. To cancel your action, click on the cancel or close
  507. gadget.
  508.  
  509.    NOTE: The changed menu entry and the "docked" icon will be added to the END
  510.          of the list. This is because 2.0 provides no choice where to put the
  511.          menu entry. But the tool entry will remain at the old position and
  512.          when you save the configuration, it will appear at its old place.
  513.  
  514.    NOTE: To create a menu entry with an empty name, the Alias string gadget
  515.          MUST contain at least one space.
  516.  
  517. Every string gadget, which represents a file name, has an additional button
  518. gadget. If you click on this button gadget, a file requester will open and you
  519. can choose the file name that should be put into the string gadget.
  520.  
  521. The edit window has gadgets which allows you to select the position of the tool
  522. icon with the mouse. To use this feature you either click on the "Position"
  523. gadget, then press the right mouse button, move the mouse pointer to the
  524. position you want and release the right mouse button, or you can also type in
  525. the coordinates directly. The icon will then be moved to the new position and
  526. the Icon X/Y gadgets will be updated. (BTW.: If you wonder about this strange
  527. method, you must remember that there are many mouse-auto-activate programs!)
  528.  
  529.    NOTE: The edit window MUST be active when you release the right mouse
  530.          button. If it is not active any more, simply reselect it and press the
  531.          right mouse button again.
  532.  
  533.    NOTE: If the Workbench decides that the icon won't fit on the place you
  534.          selected, the icon will be moved to a free place chosen by the
  535.          Workbench.
  536.  
  537.    NOTE: ToolManager tries to retrieve the correct coordinates of the mouse
  538.          relative to the Workbench screen, but it may sometimes fail.
  539.  
  540.  
  541.  
  542.  
  543.  V. How to use DeleteTool
  544.  ------------------------
  545.  
  546. DeleteTool is a program that can be used in conjunction with ToolManager to
  547. build a trashcan. It will delete all files and their icons; just drop their
  548. icons on the Application icon.
  549.  
  550.    NOTE: It really deletes files and does NOT move them to a temporary
  551.          directory as the Workbench does!
  552.  
  553.    NOTE: It puts up a safety requester before it deletes the files. This
  554.          requester can be suppressed with the option QUIET.
  555.  
  556.    NOTE: It can't delete drawers that are open on the Workbench.
  557.  
  558. To use DeleteTool, copy it to your C: directory and add the following entry to
  559. the configuration file:
  560.  
  561. CLI:
  562. Alias    = Trashcan
  563. RealName = C:DeleteTool
  564. Menu     = OFF
  565. IconFile = sys:Trashcan
  566. #
  567.  
  568.  
  569.  
  570.  
  571.  VI. Caveats
  572.  -----------
  573.  
  574. If you start a program as Workbench tool and it immediately crashes with a
  575. GURU #87000004, then the startup code of this program contains a bug. This
  576. can be circumvented (hopefully :-) by using it as a CLI tool.
  577.  
  578. There have been several reports of mysterious ToolManager crashes, but most of
  579. them turned out to be bugs in the tools or the configuration. So if you
  580. experience mysterious crashes with some tools, check them and the configuration
  581. first, before you start to yell at me:
  582.  
  583.    - Set the stack size higher,
  584.    - Switch the tool type from CLI to WB (or vice versa),
  585.    - Check if the selected icons crashed the tool (e.g. wrong parameters).
  586.      If so, switch off the argument passing (Args=Off)
  587.    - Set the stack size even higher,
  588.    - Try a newer version of the tool,
  589.    - Set the stack size to the highest possible value,
  590.    - and last (but not least): The tool is TOO BUGGY, dump it and try another
  591.                                one :-)
  592.  
  593. There have been several reports that TM slows down and crashes the machine
  594. sometimes. I wasn't able to reproduce it and so I have to guess where the bug
  595. is hidden. I think the main problem is that the Workbench doesn't like adding
  596. App* stuff too early, so I have added a DELAY switch for it. You should try
  597. this switch if you get those crashes.
  598.  
  599. The configuration files of version 1.0-1.3 will NOT be recognized by the new
  600. version 1.4 (or above). Please re-read the corresponding chapter for the
  601. changes.
  602.  
  603. Some of the ToolManager CLI parameters/Workbench tooltypes have been changed in
  604. the release 1.5. Please re-read the corresponding chapter for the new names.
  605.  
  606. Now to some weird things, that are NOT bugs or 'undocumented features' of my
  607. my program:
  608.  
  609.    - The Workbench seems not to support multiple menu selects.
  610.  
  611.    - The Workbench loses menu select events when it is busy (e.g. if a disk is
  612.      inserted). So if you insert a disk and select a tool menu entry at the
  613.      same time, the tool will NOT be started, because ToolManager didn't
  614.      receive the menu event.
  615.  
  616.  
  617.  
  618.  
  619.  VII. How to compile ToolManager and DeleteTool
  620.  ----------------------------------------------
  621.  
  622. This program was developed with DICE (nice job, Matt!). You will need the
  623. registered version, because I used the __chip keyword, but DICE is worth its
  624. $50 anyway. Of course you need the 2.0 include files and the 2.0 amiga.lib.
  625.  
  626.  
  627.  
  628.  
  629.  VIII. TODO (or not :-)
  630.  ----------------------
  631.  
  632.    - ARexx interface
  633.    - Load 2 IFF images to build an icon with two images
  634.    - Better looking internal icon (hey, I'm not a painter :-)
  635.    - "About" menu entry with a super MEGA demo, containing astonishing 2D & 3D
  636.      graphics and 16 Bit digitized stereo sound (Hi Juergen :-)
  637.  
  638. The following things CANNOT be implemented (yet):
  639.  
  640.    - More than one Tools menu
  641.    - Sub menus in the Tools menu
  642.    - The 2.0 menu bar line cannot be used in menu entries
  643.    - "Snapshot" of Application icons
  644.  
  645.  
  646.  
  647.  
  648.  IX. HISTORY
  649.  -----------
  650.  
  651. 1.5: Release version (10.10.1991)
  652.    - Status Window: New/Open/Append/Save As menu items for config file
  653.    - Edit Window: File requesters for file string gadgets
  654.    - Added a Dock Window (a la NeXT)
  655.    - Added a DeleteTool
  656.    - A list of all active HotKeys can be shown
  657.    - Tools can be moved around in the list
  658.    - Icon positioning in the edit window added
  659.    - Name of the program icon can be set
  660.    - CLI tools can have an output file and a path list
  661.    - Uses UserShell for CLI tools.
  662.    - Maximum command line length for CLI tools is now 4096 Bytes
  663.    - AppIcons without a name are supported now
  664.    - Workbench screen will be moved to front, if you pop up the Status window
  665.    - Workbench screen can be moved to front before starting a tool via HotKey
  666.    - TM will wait up to 20 seconds for the workbench.library
  667.    - Added a DELAY switch, which causes TM to wait <num> seconds before adding
  668.      any App* stuff
  669.    - renamed some tooltypes/parameters
  670.    - some visual cues added
  671.    - some internal changes
  672.  
  673. 1.4: Release version (09.07.1991)
  674.      (Appeared on Fish Disk #527)
  675.    - Keyboard short cuts for tools.
  676.    - AppIcons for tools.
  677.    - Menu item can be switched off.
  678.    - Configuration file format completely changed (hopefully the last time)
  679.    - CLI commandline parsing is now done by ReadArgs().
  680.    - Status & edit window updated to new features.
  681.    - Safety check before program shutdown added.
  682.    - Menu item "Open TM Window" only appears, if the program icon is disabled
  683.    - WB startup method changed. Now supports project icons.
  684.    - several internal changes.
  685.  
  686. 1.3: Release version (13.03.1991)
  687.      (Appeared on Fish Disk #476)
  688.    - Now supports different configuration files
  689.    - Format of the configuration file slightly changed
  690.    - Tool definitions can be changed at runtime
  691.    - Now supports CLI & Workbench startup method
  692.    - Selected icons are passed as parameters to the tools
  693.    - Now uses the startup icon as program icon if started from Workbench
  694.    - The position of the icon can now be supplied in the configuration file
  695.    - The program icon can now be disabled
  696.    - New menu entry "Show TM Window"
  697.    - Every new started ToolManager passes its startup parameters to the
  698.      already running ToolManager process
  699.  
  700. 1.2: Release version (12.01.1991)
  701.      (First version to appear on a Fish Disk: #442)
  702.    - Status window changed to a no-GZZ & simple refresh type
  703.      (this should save some bytes)
  704.    - Status window remembers its last position
  705.    - New status window gadget "Save Configuration": saves the actual tool
  706.      list in the configuration file
  707.    - Small bugs removed in the ListView gadget handling
  708.    - Name of the icon hard-wired to "ToolManager"
  709.  
  710. 1.1 Release version (01.01.1991)
  711.    - Icons can be dropped on the status window
  712.    - Status window contains a list of all tool names
  713.    - Tools can be removed from the list
  714.  
  715. 1.0 Release version (04.11.1990)
  716.    - Initial release
  717.  
  718.  
  719.  
  720.  
  721.  X. THANKS TO
  722.  ------------
  723.  
  724.    Martin Horneffer, Juergen Lueg, Georg Sassen, Olaf 'Olsen' Barthel,
  725.    Georg Hessmann, Martin Steppler, Bill Hogsett, Roger Westerlund,
  726.    Rickard Olsson, Dominik Mueller (scripts & documentation enhancement),
  727.    Brian Wright (icons, IRC online debugging & never ending source of ideas),
  728.  
  729. and anyone I forgot to mention for their suggestions, alpha/beta testing,
  730. support, flames.....
  731.  
  732.          Stefan Becker
  733.  
  734.