home *** CD-ROM | disk | FTP | other *** search
/ Archive Magazine 1996 / ARCHIVE_96.iso / discs / mag_discs / volume_7 / issue_09 / templed / !TemplEd / Manual < prev    next >
Text File  |  1993-09-12  |  26KB  |  592 lines

  1.  
  2.  
  3.                             TemplEd User Manual
  4.                             -------------------
  5.  
  6.  
  7. 1. About TemplEd
  8. ________________
  9.  
  10. TemplEd is a template editor. With it, you can create and edit Template
  11. files, which contain definitions of the windows used by an application. If
  12. you want to know what can be in template definitions, and how they can be
  13. read by a program, read the information about the SWIs Wimp_CreateWindow,
  14. Wimp_CreateIcon and Wimp_LoadTemplate. This can be found in the RiscOS PRM
  15. (Programmer's Reference Manual), and on-line in Guttorm Vik's !StrongHlp
  16. application.
  17.  
  18. TemplEd is FreeWare. For conditions of use, read the copyright notice at the
  19. end of this manual.
  20.  
  21.  
  22. 2. About this manual
  23. ____________________
  24.  
  25. If you are an experienced user, the !Help file will probably contain enough
  26. information for you to get started. You may want to skip the boring
  27. discussion of TemplEd's operation that follows. However, there are some
  28. technical details that may be of interest. These have been marked with <TD>.
  29. There is also a list of operation shortcuts and "hidden" features at the end
  30. of this manual.
  31.  
  32.  
  33. 3. Starting the program and loading files
  34. _________________________________________
  35.  
  36. After you have double-clicked on the application, the program installs
  37. itself on the icon bar. A double-click on a Template file also starts
  38. TemplEd, after which TemplEd loads the file.
  39.  
  40. You can load a template file by:
  41.  
  42. * Double-clicking on a Template file. If TemplEd is running and has not
  43. loaded any templates, it loads the file. Otherwise, a new copy of TemplEd is
  44. started.
  45.  
  46. * Dropping the file on the TemplEd icon on the icon bar. TemplEd deletes the
  47. currently loaded templates, and loads the new file. If the current templates
  48. have been modified, TemplEd first asks you to confirm before deleting them.
  49.  
  50. * Dropping the file in the Templates window. TemplEd adds the templates in
  51. the file to the currently loaded ones.
  52.  
  53. If the file is called "Templates", then TemplEd will look for a sprite file
  54. called "Sprites" in the same directory. If there is such a file, TemplEd will
  55. assume that it contains the sprites to be used with the templates, and will
  56. automatically load the sprite file as well.
  57.  
  58. Other sprite files with sprites used in the templates, can be loaded by
  59. dropping them on the icon bar icon.
  60.  
  61. When you drop an application on the icon bar icon, TemplEd will load the file
  62. "Templates" in the application directory (if present). If there is a sprite
  63. file called "Sprites" in that directory, TemplEd will also load it.
  64.  
  65.  
  66. 4. Opening and closing a template window
  67. ________________________________________
  68.  
  69. A click with Select on the TemplEd icon on the icon bar opens the Templates
  70. window. This displays the currently loaded templates. A small window icon
  71. before the name indicates what type of window it is (scrollbars, title). A
  72. yellow background of this icon means that it is currently open.
  73.  
  74. You can open a template by double-clicking on its name. If the template was
  75. already open, it is closed. The "Open" and "Close" entries in the menu serve
  76. the same purpose.
  77.  
  78.  
  79. 5. Selecting icons
  80. __________________
  81.  
  82. Many operation on icons can be done on a single icon but also on a selection
  83. of icons. There are several ways to select (and deselect) icons:
  84.  
  85. * Click with Select to select a single icon while deselecting the others. A
  86. click on the background of the window clears the current selection.
  87.  
  88. * Click with Adjust to select an icon, without changing the rest of the
  89. selection. If the icon was already selected, it is deselected.
  90.  
  91. * A drag with the mouse creates a drag-box in the window area. When you
  92. release the mouse button, all icons within the box are selected.
  93.  
  94. * There are "Select all" and "Clear selection" items in the menu.
  95.  
  96. <TD> Like most other template editors, TemplEd creates a window for each
  97. template, and creates icons exactly as they have been defined. This means
  98. that the Wimp reacts to the mouse just as it would when a program was using
  99. the template. That's why a menu icon is hard to select: you can click on
  100. it, but if you move the pointer away from the icon, the icon is deselected
  101. again. The Wimp also interferes if you want to select several radio buttons
  102. from the same ESG. Even if you click with Adjust, the Wimp deselects the
  103. other buttons (unless their 'Allow adjust' bit is set). You can select these
  104. "difficult" icons with a drag-select.
  105.  
  106. <TD> If you want to check the behaviour of icons to mouse clicks, without
  107. TemplEd reacting to the clicks, press a combination of keys (e.g. Shift +
  108. Alt) while clicking. That way you can check if the ESGs of radio buttons
  109. are set right, if option buttons are switched on and off, etc.
  110.  
  111.  
  112. 6. Moving and resizing icons
  113. ____________________________
  114.  
  115. To move an icon or a selection, click inside the window with Select while
  116. holding down the Shift key. An outline appears around the icon(s) that moves
  117. with the pointer until you release the mouse button. During the operation,
  118. the pointer shape is changed to a hand.
  119.  
  120. To resize an icon or a selection, click on it with Shift+Adjust. A "rubber
  121. box" drag is started, allowing you to move one side. The side that is moved
  122. is the one that was nearest to the pointer when you clicked. It is also
  123. indicated by the pointer shape. Though a resize operation will usually be
  124. done on a single icon, it is possible to resize more than one icon at a
  125. time; the icons are scaled according to the size of the drag-box.
  126.  
  127. An alternative way to move or resize icons is by clicking on them without
  128. using the Shift key, and keeping the mouse button pressed for about half a
  129. second.
  130.  
  131. During the drag, you can move the pointer with the cursor keys. The left,
  132. right, up and down keys move the pointer 1 pixel (in the expected direction).
  133. If you press a cursor key in combination with the Shift key, the movement is
  134. 4 times as fast.
  135.  
  136. Pressing the cursor keys without starting a drag first moves the selected
  137. icons.
  138.  
  139.  
  140. 7. The "Icon Edit" dialogue window
  141. __________________________________
  142.  
  143. Except for size, position and number, all properties of an icon can be set
  144. from the "Icon Edit" dialogue window. To open this window, click with
  145. Shift+Menu, or choose the "Icon ë Edit..." entry in the menu.
  146.  
  147. Icon flags can be set by clicking on the buttons, text and sprite names can
  148. be entered in the appropriate fields. Use the up and down arrow keys to move
  149. the cursor around. Some fields (e.g. button type, colours, font name) can
  150. contain a limited number of values. These can be selected either by clicking
  151. on the arrow icons to the left and right, or by clicking a mouse button while
  152. the pointer is over the field. This pops up a menu from which you can select
  153. a value.
  154.  
  155. <TD> The "1:1" button for the font is the only button not connected to an
  156. icon flag. When on, it keeps X and Y size of the font equal, so you don't
  157. have to set them both.
  158.  
  159. The changes to the icon only take effect if you press the "Update" icon.
  160. "Exit" closes the window, leaving the icon as it was since the last update,
  161. and "Update & Exit" combines the two.
  162.  
  163. <TD> If the indirected text that you entered is longer than the "Max
  164. size" field allows, TemplEd automatically increases the maximum. It also
  165. sets the "Indirected" flag if the text or sprite name uses more than 12
  166. characters.
  167.  
  168. When you edit a selection of icons, not all fields can be modified (to be
  169. exact: only the icon flags). The unchangeable fields are shaded. When you
  170. press "Update" or "Update & Exit", the changeable fields are modified in
  171. all selected icons. In some cases, you may only want to change one field,
  172. e.g. the button type. To do this, click Menu above the "Update" or
  173. "Update & Exit" button. A menu pops up from which you can select the flags
  174. that must be changed.
  175.  
  176.  
  177. 8. Moving and resizing windows
  178. ______________________________
  179.  
  180. Usually, you can move a window by dragging the title bar, and you resize it
  181. by dragging its resize icon. But some windows don't have a resize icon, and
  182. some don't even have a title bar. You could of course edit the windows, give
  183. them a title bar or resize icon, and remove these when you are done. But in
  184. TemplEd, it is also possible (and much faster) to move and resize windows
  185. directly. Use Ctrl+Select to move a window, and Ctrl+Adjust to resize it.
  186.  
  187. Just as with moving and resizing icons, the cursor keys can be used during
  188. the drag to position the mouse pointer.
  189.  
  190.  
  191. 9. The "Window Edit" dialogue window
  192. ____________________________________
  193.  
  194. Editing the data of a window is split in two parts. Flags, colours and
  195. button type are edited in the "Window Edit" dialogue window. This window
  196. is opened when you click Ctrl+Menu over the window, The contents of the
  197. title bar are edited separately, using the "Icon Edit" window. It is
  198. accessible with a Shift+Menu click while the pointer is over the title bar.
  199. Both dialogue windows can also be opened from the menu.
  200.  
  201. <TD> The "transparent" colour number 255, that has a special meaning as the
  202. title foreground colour or as the work background colour, is only selectable
  203. from the colour menu, not by clicking on the arrow icons.
  204.  
  205.  
  206. 10. TemplEd's menus
  207. ___________________
  208.  
  209. Most entries in the menus ought to speak for themselves. Some others may
  210. take a small explanation:
  211.  
  212. 10.1 The "Window" menu
  213.  
  214.   Create ë
  215.  
  216.   Leads to a submenu with a number of standard icons. Selecting one of these
  217.   creates such an icon, at the position that the pointer was on when the
  218.   menu was popped up. Selecting the "Create" entry itself is equal to
  219.   selecting the first standard icon from the menu.
  220.  
  221.   You can change the set of standard icons, see the section "Customizing" at
  222.   the end of this manual.
  223.  
  224.   <TD> The new icon will be positioned so that its bottom-left corner is at
  225.   the position where the pointer was when you popped up the menu.
  226.  
  227.   Icon/Selection ë Renumber ë
  228.  
  229.   You can renumber single icons or selections. When a selection is
  230.   renumbered, the icons are numbered from top to bottom and from left to
  231.   right.
  232.  
  233.   <TD> It is not possible to give an icon a number that is equal to or
  234.   higher than the number of icons in the template. If, for instance, if there
  235.   are 10 icons, they are always numbered from 0 to 9. You may enter a higher
  236.   number but TemplEd will decrease it to 9. (In fact, what TemplEd does when
  237.   renumbering is swap the definitions of two icons: the one that you want to
  238.   renumber, and the one carrying the new number.)
  239.  
  240.   <TD> After renumbering an icon, TemplEd increases the new number by one
  241.   and stores it. You can see this the next time you open the menu. This
  242.   feature comes in handy when you renumber using Alt+Select (see
  243.   "Shortcuts")
  244.  
  245.   Icon/Selection ë Align ë
  246.  
  247.   Changes the selected icons so that they are lined up. There is a choice
  248.   of aligning the left-hand sides, right-hand sides, top, bottom, and the
  249.   centres (in either the horizontal or vertical direction).
  250.  
  251.   The icons can be either moved or resized. When resized, the coordinates
  252.   of the icons stay the same except for the side that must be aligned.
  253.  
  254.   <TD> As an anchor for aligning, the outer icon is chosen. For horizontal
  255.   aligning this is the leftmost icon, for top aligning the topmost, etc.
  256.   This ensures that if the icons were inside the visible area before the
  257.   aligning, they will remain fully visible afterwards (except for some cases
  258.   when you align the centres).
  259.  
  260.   Icon/Selection ë Space out ë
  261.  
  262.   Moves the selected icons so that there is a constant space between the
  263.   icons. You can choose between horizontal and vertical distribution, and
  264.   between setting a fixed space and using the available space between the
  265.   outer icons. For example:
  266.  
  267.   Suppose you have four icons, positioned
  268.  
  269.      -----               -------  ---        ---
  270.     |  A  |             |   B   || C |      | D |
  271.      -----               -------  ---        ---
  272.   
  273.   Using a fixed space gives you something like
  274.   
  275.      -----    -------    ---    --- 
  276.     |  A  |  |   B   |  | C |  | D |
  277.      -----    -------    ---    --- 
  278.   
  279.   and choosing "Use available" results in
  280.   
  281.      -----        -------        ---         --- 
  282.     |  A  |      |   B   |      | C |       | D |
  283.      -----        -------        ---         --- 
  284.  
  285.   <TD> Before doing a Space out operation, TemplEd sorts the icons on their
  286.   minimum coordinate. This means that the leftmost (or bottommost) icon
  287.   always remains in place. It also means that if some icons have equal
  288.   minimum X (or Y) coordinates, they may end up in any order.
  289.  
  290.   <TD> Both the "Align" and the "Space out" operations change the position
  291.   of icons in only one direction. So if you do a horizontal Space out, the Y
  292.   coordinates of the icons remain the same.
  293.  
  294.   Icon/Selection ë Min. size
  295.  
  296.   Minimizes the size of icons, keeping their bottomleft corner at the same
  297.   position.
  298.  
  299.   <TD> It is very complicated to calculate the minimum size correctly,
  300.   especially for icons with outline fonts, 3D borders or multi-line text.
  301.   The procedure used may not always give the best results.
  302.  
  303.   Icon/Selection ë Center
  304.  
  305.   Centers the icon (or icon selection) in the window, relative to the
  306.   area that is currently visible.
  307.  
  308.   Icon/Selection ë Same size
  309.  
  310.   Sets the size of the selected icons to be equal to the topleft one. The
  311.   bottomleft corner is kept at the same position.
  312.  
  313.   Work area ë
  314.  
  315.   Leads to a window in which you can set the dimensions of the window work
  316.   area. The "Minimize" button limits the work area to the maximum
  317.   coordinates that are currently visible. The "Maximize" button sets the
  318.   minimum size equal to the current window size. The "Default" button resets
  319.   all values to those of a standard full-screen window.
  320.  
  321.   Misc ë Sprite area
  322.  
  323.   Enables you to choose from which sprite area the sprites in the template
  324.   are read. This can be either the Wimp area or a private area that is
  325.   created when you drop a sprite file on the TemplEd icon.
  326.  
  327.   <TD> When saving templates, TemplEd always sets the sprite area to 1 (i.e.
  328.   the Wimp area). If your program is using a private sprite area, it will
  329.   have to re-direct the sprite area pointers after it has loaded the
  330.   template.
  331.  
  332.   Misc ë Tidy icons
  333.  
  334.   Does two things: (1) check if all icons are within the work area, and
  335.   move them if needed; (2) remove deleted icons from the template
  336.   definition, so that there are no "gaps" in the icon numbering.
  337.  
  338.   <TD> Normally, when you delete an icon, it is only marked as deleted. The
  339.   numbering of the other icons stays the same. (If, later on, you create an
  340.   icon, it may get the number of a deleted icon.) Also, if you save the
  341.   templates, the deleted icons take up some space (32 bytes per icon), both
  342.   in the file and in the memory of the program that uses the templates. To
  343.   prevent this, you can either use "Tidy icons", or make sure that there are
  344.   no gaps in the numbering by renumbering the existing icons.
  345.  
  346. 10.2 The icon bar menu
  347.  
  348.   Options...
  349.  
  350.     Opens a window in which you can set a number of options:
  351.     * Double click starts edit
  352.         When on, TemplEd reacts to double-clicks on icons, window title bar
  353.         or background, by opening an Edit window.
  354.     * Support 'Interface' module
  355.         Provides support for the Interface module, by making the
  356.         appropriate calls for redrawing icons. (The Interface module
  357.         provides a number of enhancements, the most important being
  358.         icon borders with 3D look. Most of these are also present in
  359.         Risc OS 3.)
  360.         <TD> Support is limited to redrawing icons, including selecting and
  361.         deselecting them upon a click. Other features of Interface, such as
  362.         changing pointer shapes and strings for !Help, are not supported.
  363.     * Support 'AEH' module
  364.         Similarly, provides (limited) support for the AEH module.
  365.     * Allow duplicate template names
  366.         If this option is off and a template is added with a name that
  367.         already exists, the old template is deleted. Renaming a template to
  368.         an existing name will also be refused.
  369.     * Hatch user-redrawn templates
  370.         When on, the background of windows of which the "Auto-redraw"
  371.         flag is cleared, will be shown with a cross-hatch pattern.
  372.     * Show icon info
  373.         Enables or disables the Icon info window that shows information
  374.         on the icon that the pointer is currently over.
  375.     * Save icons as unselected
  376.         When on, TemplEd stores all icons as unselected when you save any
  377.         templates. Otherwise, the "selected" state of icons is saved with
  378.         the rest of the data to the file, and when your program uses the
  379.         templates, it will have to make sure that the correct icons are
  380.         selected.
  381.     * Delete icons moved outside
  382.         If you move icons, and drop them outside a template window, they
  383.         will be deleted if this option is on. When off, nothing happens to
  384.         the icons. This option allows for fast deletion of icons.
  385.     * Grid
  386.         Locks the position of icons that are created or modified to
  387.         a grid (as in !Draw). This makes it easier to get icons lined
  388.         up properly. The grid size can be set by clicking on the arrow
  389.         icons. There are two grids:
  390.           - Icon size grid
  391.             Locks all four corners of an icon, so that its size will be a
  392.             multiple of the grid size
  393.           - Icon position grid
  394.             Locks only the bottomleft corner of the icon; this can be handy
  395.             if you want to keep icons lined up, but want to keep their sizes
  396.             unchanged
  397.         Normally, the Icon position grid will be at least as large as the
  398.         Icon size grid.
  399.         <TD> If you are working in a high-resolution screen mode, it is
  400.         advisable to use at least an Icon size grid of 2x4, so that your
  401.         templates look the same in medium-resolution modes (like 12 and 15)
  402.         <TD> TemplEd automatically adjusts the grid size in case of a mode
  403.         change; the grid size must be at least equal to the number of OS
  404.         units per pixel.
  405.  
  406.     The "Save & Exit" button stores the current settings to a file in
  407.     the application directory, then closes the window. The "Exit" button
  408.     just closes the window.
  409.  
  410.   Statistics...
  411.  
  412.     Opens the statistics window, showing the amount of memory that the
  413.     templates will need if you use them in a program. The amounts can be
  414.     shown in decimal or hexadecimal numbers.
  415.  
  416.     <TD> Note that the statistics window does not change as you modify your
  417.     templates. The figures are re-calculated only when the window is opened
  418.     or when you click on the "Decimal" or "Hex" buttons.
  419.  
  420.   Custom sprites ë View/Edit
  421.  
  422.     "Run"s the file with the custom sprites that your templates are using.
  423.     This ususally means that !Paint will load the file.
  424.  
  425.   Custom sprites ë Re-load
  426.  
  427.     Reads the sprite file again, e.g. after you have edited it with !Paint.
  428.  
  429.   Custom sprites ë Reset
  430.  
  431.     Removes the sprites from memory; the templates will use the sprites from
  432.     the Wimp area.
  433.  
  434.  
  435. 11. Shortcuts
  436. _____________
  437.  
  438. * Opening the Icon Edit and Window Edit windows can be done from the menu,
  439. but a faster way is to click on them while pressing a key. Shift+Menu opens
  440. the Icon Edit window. Ctrl+Menu opens the Window Edit window. To edit the
  441. title bar icon, click Shift+Menu on the title bar.
  442.  
  443. * The Edit windows can also be opened with a double-click with the Select
  444. button. Double-clicks on an icon, on the background of a window, or on the
  445. title bar open the appropriate Edit window. This only works if the
  446. corresponding option is on.
  447.  
  448. * Inside the Icon Edit and Window Edit windows, pressing the F2, F3 and F4
  449. keys has the same effect as clicking on the Update, Update&Exit and Exit
  450. icons, respectively. The Escape key has the usual function which is exiting
  451. without doing anything. Escape works not only in these two cases, but in all
  452. windows with writable icons, such as the Save, Space Out and Options
  453. windows.
  454.  
  455. * Many operations on icons can also be done with a control-key:
  456.  
  457.       Ctrl-A    Select all
  458.       Ctrl-C    Copy selection
  459.       Ctrl-D    Copy icons downward
  460.       Ctrl-E    Edit selection
  461.       Ctrl-J    Open "Align" box
  462.       Ctrl-K    Open "SpaceOut" box
  463.       Ctrl-L    Copy icons to left
  464.       Ctrl-Q    Close window (Ctrl-F2 works, too)
  465.       Ctrl-R    Copy icons to right
  466.       Ctrl-T    Edit title bar
  467.       Ctrl-U    Copy icons upward
  468.       Ctrl-W    Edit window
  469.       Ctrl-X    Delete selection
  470.       Ctrl-Z    Clear selection
  471.  
  472. (This only works if the window has the input focus, of course)
  473.  
  474. * Renumbering icons can also be done faster. Click Alt+Select on an icon, and
  475. the icon gets the number that is visible when you open the "Icon ë Renumber"
  476. menu. After the renumbering, this number is increased by one, so you can
  477. number the icons sequentially by clicking on them one by one. A click with
  478. Alt+Adjust does the same, except that the number is decreased after the
  479. renumbering.
  480.  
  481. * A fast way to delete icons is by moving them outside the template. (This
  482. only works if you have set the "Delete icons moved outside" option on.)
  483.  
  484.  
  485. 12. "Hidden" features
  486. _____________________
  487.  
  488. TemplEd has a number of features that may not be immediately visible, but
  489. can come in handy. (That's not counting the bugs ;-)
  490.  
  491. * It is possible to copy icons to other templates; just move the icons and
  492. drop them into the other template. This makes it easy to use icons from
  493. other templates. 
  494.  
  495. * Extended icon info. When TemplEd starts, the Icon info window is small,
  496. showing only the name of the template and number of the icon that the mouse
  497. is over. If you click on the "toggle size" icon, it becomes full size and
  498. also shows the dimensions of the icon plus the mouse position in window
  499. coordinates. Still more icon info can be gotten from !Help, Acorn's
  500. interactive help application. Open the help window, and move the pointer
  501. over an icon.
  502.  
  503. * Fine-tuning when moving and resizing icons and windows is possible with
  504. the cursor keys. The up, down, left and right keys move the pointer 1 pixel
  505. (or 4 pixels, if Shift is pressed).
  506.  
  507. * Pressing Esc during dragging (icon move, resize, etc.) aborts the
  508. operation.
  509.  
  510. * In the Icon Edit window, clicking Adjust on "Max Size" (the text itself,
  511. not the writable icon) minimizes the contents of the "Max Size" field.
  512.  
  513. * Closing the Templates window with the Adjust button opens a Filer window
  514. of the parent directory of the file you are editing. Shift+Adjust also opens
  515. the Filer window but does not close the Templates window. (This is, in fact,
  516. standard Acorn practice for editor-like applications.)
  517.  
  518.  
  519. 13. Customizing
  520. _______________
  521.  
  522. Apart from setting the options, you can also customize TemplEd's menu of
  523. standard icons. Load the file "Templates" in the application directory into
  524. TemplEd. The template "StdIcons" contains the definitions of the standard
  525. icons. TemplEd loads them at program startup. You can change these
  526. definitions to your liking, but bear the following in mind:
  527.  
  528. * There are "name" icons that contain the text of the menu entries. They
  529. must be indirected-text icons, with their ESG set to 31.
  530.  
  531. * The other icons contain the definitions. These MUST have a different
  532. value for the ESG (i.e. 0-30). TemplEd links them to the "name" icon with
  533. the number preceding them. For instance, suppose icons 0 and 3 are "name"
  534. icons. This means that icon 1 and 2 are taken as a group belonging to
  535. icon 0. When you select the text in icon 0 from the "Create icon ë " submenu,
  536. these two icons will be copied to your template window.
  537.  
  538. For those who like windows with 3D-look, there is an alternative set of
  539. templates and sprites. To make TemplEd use them, rename them to the default
  540. "Templates" and "Sprites", after you have given the standard "2D" files a
  541. different name. (Note: you need Risc OS version 3.10 or later to get the
  542. 3D effect.) Alternatively, run the "Use3D" Obey file in the "Extras"
  543. directory; run "Use2D" to switch back to standard templates.
  544.  
  545.  
  546. 14. Credits
  547. ___________
  548.  
  549. Although the edit-dialogue windows are my own idea, not all features
  550. implemented in TemplEd are. Some have been borrowed from RiscForm (the
  551. version of !FormEd by The Risc Squad), some from Jonathan Marten's excellent
  552. !DrawPlus (notably the Align and Space Out windows).
  553.  
  554. Martin Ebourne made the hires sprites file (!Sprites22). The MenuUtils
  555. module which TemplEd uses was written by Alex Petrov.
  556.  
  557. TemplEd has also been much improved by the testing, comments and suggestions
  558. of Stephen Burke, Martin Ebourne, Michael Ellis, Edwin Hautus, Paul Hobbs,
  559. Rupert Johnson, Merlin Hughes, Olaf Krumnow, Paul Lebeau, Ian Palmer, John
  560. Pullan, Niklas R╓jemo, John Tytgat, Julian Wright, and I'm sure I forgot
  561. some others.
  562.  
  563.  
  564. 15. Copyright notice
  565. ____________________
  566.  
  567. This program is FreeWare. This means that I retain the copyright. You may
  568. freely copy and distribute it, provided that it is complete with all
  569. original files, and that you do not sell it. PD libraries may charge a
  570. nominal fee for the cost of duplication, postage etc. When you use the
  571. program, you do so entirely at your own risk. You may change the program to
  572. suit your own needs. If it's a bug fix, or if you think it's an improvement,
  573. then please send the changes to me at the address below.
  574.  
  575. The MenuUtils module is ⌐ Alex Petrov (address: Bld. 1, Flat 107 ; Kavkazsky
  576. boulevard, 29 ; Moscow 115541 ; RUSSIA. e-mail: APetrov@misis.msk.su)
  577.  
  578.  
  579. 16. Finally
  580. ___________
  581.  
  582. If you have any questions, bug reports or suggestions for improvements,
  583. you can contact me at the following address:
  584.  
  585. Lijnslagerstraat 204
  586. NL-5625BP  Eindhoven
  587. The Netherlands
  588.  
  589. or by e-mail: wsinda@info.win.tue.nl
  590.  
  591. Dick Alstein
  592.