home *** CD-ROM | disk | FTP | other *** search
/ Crawly Crypt Collection 1 / crawlyvol1.bin / apps / home / grocry42 / grocery.txt < prev    next >
Text File  |  1994-05-30  |  48KB  |  962 lines

  1.  
  2.  
  3.                         THE GROCERY LISTER
  4.  
  5.  
  6.                            Version 4.2
  7.  
  8.                         by  Randy Hoekstra
  9.  
  10.                             June 1994
  11.  
  12.  
  13.                 Copyright 1992, 1993,1994 Randy Hoekstra
  14.                         All Rights Reserved
  15.  
  16.  
  17.  
  18.  
  19. The Grocery Lister and its accompanying documentation are copyrighted.
  20. No part of the program or this publication may be reproduced, stored
  21. in a retrieval system, or transmitted, in any form or by any means,
  22. electronic, mechanical, photocopying, recording, or otherwise without
  23. the prior written permission of Randy Hoekstra.  Only the
  24. unregistered, fully intact, original archive file may be distributed via
  25. electronic media.
  26.  
  27.  
  28.  
  29.  
  30.   Special Thanks to:
  31.  
  32.       Beta Testers -
  33.        Sam & LuAnn Graf
  34.        Scott Eakins
  35.        David Mackenzie
  36.        Joe Meehan
  37.        Ken Olson
  38.        Morgan Shannon
  39.  
  40.   And all the users who cared enough to register the shareware
  41.   version and support my efforts to improve this program.
  42.  
  43.  
  44.  
  45.  
  46.     Please send bug reports and/or comments to:
  47.  
  48.     Randy Hoekstra
  49.     3414 Norwood Circle
  50.     Richardson, Texas  75082
  51.  
  52.     E-mail: R.Hoekstra1@genie.geis.com
  53.  
  54.  
  55.  
  56. Note: Following is an unformatted ASCII version of the user manual.
  57.       Page numbers refer to the page of the printed user manual which
  58.       is available for $5.00 from the author at the above address.
  59.  
  60.  
  61.  
  62. Table of Contents
  63. -----------------
  64.  
  65. About the program..................................................      4
  66.  
  67. The Grocery Lister Features........................................      4
  68.  
  69. Getting Started....................................................      6
  70.  
  71. The Main Screen....................................................      7
  72.  
  73. Key Commands.......................................................     10
  74.  
  75. The DESK Menu......................................................     11
  76.  
  77. The FILE Menu......................................................     11
  78.  
  79. The EDIT Menu......................................................     15
  80.  
  81. The SORT Menu......................................................     18
  82.  
  83. The VIEW Menu......................................................     19
  84.  
  85. The OPTIONS Menu...................................................     19
  86.  
  87. Limitations........................................................     22
  88.  
  89. Technical Support..................................................     22
  90.  
  91.  
  92.  
  93. About the program:
  94. -----------------
  95.   The Grocery Lister is a household utility program that allows you to
  96. compile a list of grocery items complete with current price and total
  97. estimated cost.  The Grocery Lister can be used to determine approximately
  98. how much you will spend at the store if you know the items that you need.
  99. It can also be used as a budget tool to allow you to select the items you
  100. most need or want if you only have a fixed amount to spend.  With a small
  101. amount of database maintenance work each time you buy groceries you will be
  102. able to maintain a fairly accurate file of the items which you regularly
  103. purchase.  This file can be very useful to remind you of items which you
  104. may need as you compile your grocery list. Finally, for those who have
  105. 'errand boys' do the shopping, The Grocery Lister will generate a very neat
  106. and easy to read printout of the current grocery list.
  107.  
  108.  
  109. The Grocery Lister Features:
  110. ---------------------------
  111.   In addition to the basic grocery list function described above, The
  112. Grocery Lister has the following advanced features:
  113.  
  114. - Easy-to-use, mouse driven, multiple-windowed GEM interface.
  115.  
  116. - A single grocery database file can have grocery item information
  117. including item name, category, location, coupon or sale flag, a taxable
  118. flag, and a price for up to 4 stores.  This is in addition to a 20
  119. character item name and 20 character category.
  120.  
  121. - As items are added to the list, the current active store is tagged to
  122. that item.  When the list is printed, items are grouped by store with a
  123. subtotal for each store. By loading in additional grocery files, a list
  124. for up to 10 different stores can be generated.
  125.  
  126. - An option can be set to automatically tag the item with the store with
  127. the lowest price, making price shopping very easy.
  128.  
  129. - User assignable default file names for automatic loading of the
  130. grocery file, grocery list, and ASCII file when the program is first
  131. started.
  132.  
  133. - Taxable status for each item to indicate if sales tax should be added
  134. to the total when the item is added to the grocery list. Plus, an
  135. option to automatically make all items taxable.
  136.  
  137. - A coupon reminder field for each item to indicate when you have a
  138. coupon for that item.  This field can also be set as a sale or special
  139. reminder.
  140.  
  141. - Independently sorted grocery list and grocery file by either item
  142. name, category, or location.  Items sorted by location make it easy to
  143. find everything at the store because you don't have to search up and
  144. down the list to make sure you didn't miss anything on that aisle.
  145. Everything on that aisle is right there in one group on the list.
  146.  
  147. - Commands to merge both grocery lists and files to make database
  148. maintenance easier.
  149.  
  150. - Define a category or location list of up to 100 entries to easily add
  151. to an item when editing.
  152.  
  153. - A special list of staples (or any items that regularly appear in your
  154. shopping list) that can be merged into the current list with a single
  155. command.
  156.  
  157. - Flexible printer options allowing for complete control of the fields
  158. to be printed, two column printing, print to disk, and user defined
  159. printer codes.
  160.  
  161. - ASCII file viewing for looking at notes, recipes, etc. while compiling
  162. your grocery list.
  163.  
  164.  
  165. Getting Started:
  166. ---------------
  167. Making a Back-Up:
  168.  
  169. You've heard it a million times and yes it really is a good idea to back up
  170. your disk/files before you do anything else, except...
  171.  
  172. Before you back-up The Grocery Lister disk/files, you need to register the
  173. program in your name. When you first run The Grocery Lister, a special
  174. registration dialog will appear on the screen allowing you to enter your
  175. name, program serial number, and special key code to register the program
  176. (see the next section for registration details). Once registered, you may
  177. copy the files to a back-up disk.  If your registered version is ever lost
  178. or damaged, you will need to re-register the program using the original
  179. distribution version and make a new back-up.
  180.  
  181. Registering The Grocery Lister:
  182.  
  183. To obtain a unique program serial number and special key code, send $15.00
  184. registration fee to the author at the address listed prior to the table of
  185. contents.  Once you have received your registration information, simply run
  186. the program and enter the information in the lower left corner window of
  187. the registration dialog that first appears after the program is started.
  188. If for some reason the registration is not successful and the program
  189. continues in demo mode, you can call up the registration dialog again by
  190. selecting 'About Grocery...' from the 'Grocery' menu at the far left of the
  191. menu bar.  If continued attempts are not successful at registering the
  192. program, contact the author for assistance.  Be sure to enter the
  193. information exactly as it is shown on your registration confirmation
  194. (including upper and lower case letters).
  195.  
  196. Once you have entered the correct information and selected the 'REGISTER'
  197. button, the information will be saved to the program file and the fully
  198. functional version of The Grocery Lister will run.  Each time the
  199. registered program is run, it will begin immediately in the fully
  200. functional mode.
  201.  
  202. Note: If you obtained the program on disk directly from the author, the
  203. program will be pre-registered and ready for immediate use.
  204.  
  205. Installation:
  206.  
  207. The Grocery Lister can be run from floppy disk or hard drive partition from
  208. the root directory or within any folder as desired.  Simply copy the files
  209. below to the desired floppy disk or hard drive partition/folder and run the
  210. program from that location.
  211.  
  212. The Grocery Lister package contains the following files:
  213.  
  214. GROCERY.PRG  -     The Grocery Lister program itself
  215. GROCERY.RSC  -     The resource file
  216. GROCERY.TXT  -     ASCII version of user manual
  217. GL_HIST.TXT    -     Revision history
  218. GROCERY.NIC  -     Icon for NeoDesk
  219. SAMPLE.GDT   -     Sample grocery database file
  220. STAPLES.GLD  -     Sample/Staples grocery list file
  221. MEGASAMP.GDT -     Grocery database of nearly 1000 items
  222. GCONV4.PRG -     Converts version 3.x files to v4.0 format
  223. GCONV3_2.PRG -    Converts version 2.x files to v3.0 format
  224.  
  225. The program and resource files must remain in the same folder or directory,
  226. but the other files may be located as desired.
  227.  
  228.  
  229. The Main Screen:
  230. ---------------
  231.  
  232. The main screen of The Grocery Lister provides a simple GEM interface with
  233. a menu bar and two GEM windows.  The window on the left is the grocery list
  234. window and displays grocery items once they have been added to the list.
  235. The window on the right is the grocery file window and displays the grocery
  236. database for selecting items to add to the grocery list.  This is the
  237. initial default configuration, but the windows can be moved or sized as
  238. desired.
  239.  
  240. The Grocery File Window (right side of screen):
  241.  
  242. The grocery file window has a title bar at the very top which will contain
  243. the name of the current open grocery file or simply say "Grocery File" if a
  244. file is not yet open.
  245.  
  246. Beneath the title bar is an information bar which contains the current
  247. active store name and the size of the grocery file.
  248.  
  249. The interior of the window contains a list of the items in the grocery
  250. database file.  The display can be configured as desired with respect to
  251. which fields are displayed and how many characters of the field are
  252. displayed.  Each item is made up of an Item Name, a Category, a Location, a
  253. Coupon flag, a Taxable flag, and a Price.  The Location, Coupon, Taxable,
  254. and Price fields are unique for each of the 4 possible stores, so the
  255. contents of those fields displayed will be for the current active store.
  256.  
  257. If all the fields are set to be displayed, they will be shown in the
  258. following order with a space in between each field:
  259.  
  260.     Item Name  Category  Location  Coupon  Taxable  Price
  261.         (20 chrs)            (20 chrs)         (20 chrs)         ( 1 chr )       ( 1 chr )     ( 5 chrs)
  262.  
  263. The default configuration is shown on the preceding page.  This
  264. configuration is used to allow the most important information to be
  265. displayed in a window half the width of the (normal ST) screen.  It also
  266. allows aisle numbers and an A or B designator, as used in many grocery
  267. stores, to precede a short description in the location field.  This of
  268. course can be changed as desired.
  269.  
  270. A selected item is displayed on top of a black highlight bar.
  271.  
  272. The Grocery List Window (left side of screen):
  273.  
  274. The grocery list window has a title bar at the very top which will contain
  275. the name of the current open grocery list or simply say "Current Grocery
  276. List" if a list is not yet open.
  277.  
  278. Beneath the title bar is an information bar which contains the number of
  279. items in the list and the total estimated cost.
  280.  
  281. The interior of the window contains a list of the items in the grocery list
  282. with items in a similar format as that described  for the grocery file
  283. window.  In addition, there is a field to the left of the item name which
  284. contains the quantity for the given item.  This allows for a quantity of 99
  285. for any item.  There is also an additional field after the location for the
  286. store name (18 chrs) tagged to that item.  Other fields are in the same
  287. order as shown above for the grocery file window.
  288.  
  289. Creating a Grocery File:
  290.  
  291. To create a grocery file database, simply add the desired items using the
  292. 'ADD ITEM' command under the 'EDIT' menu (see the EDIT menu section for
  293. details).  Or load in one of the sample files provided and edit the items
  294. as desired.  Once you have set up your grocery database, you can keep it up
  295. to date by checking the items on your list each time you go shopping and
  296. adjusting the location or prices as needed.  Using this method you should
  297. be able to keep your grocery database up to date with just a few minutes of
  298. editing each time you go shopping.  Also, many stores have a printed store
  299. aisle directory that you can use to help set up the item locations.
  300.  
  301. Creating a Grocery List:
  302.  
  303. Once you have a grocery database set up, you can create a shopping list by
  304. simply selecting items from the database.
  305.  
  306. Items are automatically selected under the mouse arrow, or if the mouse
  307. arrow is outside of the grocery file window, the highlight bar can be moved
  308. up or down by pressing the up arrow key or down arrow key respectively.
  309. Use the standard GEM window gadgets to scroll the file window to the
  310. desired location.  You can also jump to the desired position by pressing
  311. the key corresponding to the first letter of the desired item.  This will
  312. take you to the first item beginning with that letter and then you can move
  313. the mouse or use the arrow keys to select the actual desired item.
  314.  
  315. A selected item can be added to the grocery list by clicking the left mouse
  316. button while the grocery file window is active and the desired item is
  317. highlighted.  Once an item is added to the grocery list, it's quantity can
  318. be increased by clicking again with the left mouse button.  The quantity
  319. can be decreased by clicking with the right mouse button and by clicking
  320. the right mouse button for an item with a quantity of 1, the item will be
  321. removed from the grocery list.  Item quantity can also be increased or
  322. decreased by pressing the left or right arrow keys respectively.
  323.  
  324. When the grocery file window is active, item amount can be increased or
  325. decreased by holding down the shift key and clicking on the item with the
  326. right or left mouse button, respectively.
  327.  
  328. When the grocery list window is active, item quantity can be increased or
  329. decreased by clicking with the left or right mouse button while the mouse
  330. arrow is pointing at the desired item in the grocery list.
  331.  
  332. Items in the list can be immediately deleted from the list (even if the
  333. quantity is greater than one) by holding the control key and clicking the
  334. right mouse button on the item in either window.
  335.  
  336. Once all the items and desired quantities have been added to the grocery
  337. list, the list can be printed and taken to the store.  Use the 'PAGE SETUP'
  338. command under the 'FILE' menu to configure the printout as desired.  The
  339. list will be printed in the same sorting order as displayed in the list
  340. window.  In addition, the items will be grouped according to the store
  341. tagged to each item.  All items for a given store will be printed followed
  342. by a sub-total with the estimated cost for that store.
  343.  
  344. Keyboard Commands and Key Equivalents:
  345. -------------------------------------
  346. Most menu commands can be activated from the main screen by using an
  347. equivalent control-key combination (see menu commands below).
  348.  
  349. Additional key commands available from the main screen are as follows:
  350. ( ^key is used to indicate CONTROL+key; +key is used to indicate SHIFT+key)
  351.  
  352.     [TAB]  -    With the grocery file window active, the TAB key will
  353.         toggle the coupon reminder field of the selected item.
  354.         +[TAB] -     With the grocery file window active, this will toggle
  355.         the taxable field of the selected item.
  356.          [HELP] -     With the grocery file window active, the HELP key will
  357.         bring up the EDIT dialog the same as selecting the EDIT
  358.         ITEM command in the EDIT menu or pressing ^E.
  359.     A to Z -     With the grocery file window active any key A to Z can
  360.         be pressed to cause items beginning with the selected
  361.         letter to be displayed when the file is sorted by Item
  362.         name.  When the file is sorted by either category or
  363.         location, the display will jump to the first entry in
  364.         that field beginning with the selected letter.
  365.  
  366.  
  367. The grocery list window can be made active by pressing the INSERT key and
  368. the grocery file window can be made active by pressing the CLR/HOME key.
  369.  
  370. Arrow keys can be used for scrolling in any window.
  371.  
  372. All windows can be paged up or paged down by pressing SHIFT plus UP arrow
  373. or SHIFT plus DOWN arrow keys respectively.  The Grocery List window and
  374. the ASCII file window can also be paged up and down by pressing the LEFT or
  375. RIGHT arrow keys, respectively.
  376.  
  377. When the grocery file window is active and the AUTO SCROLL option is ON
  378. (see OPTIONS menu section), you can also scroll the items displayed by
  379. moving the mouse arrow just above or just below the display area of the
  380. window.
  381.  
  382. As noted previously, Items in the list can be immediately deleted from the
  383. list (even if the quantity is greater than one) by holding the control key
  384. and clicking the right mouse button on the item in either window.
  385.  
  386. When the grocery file window is active, item amount can be increased or
  387. decreased by holding down the shift key and clicking on the item with the
  388. right or left mouse button, respectively.
  389.  
  390. Finally, when the grocery file window is active, you can call up the Edit
  391. Dialog for a given item by holding the control key and clicking the right
  392. mouse button on the selected item.  See the EDIT menu section for details
  393. of editing grocery items.
  394.  
  395.  
  396. THE GROCERY LISTER MENU COMMANDS
  397. ================================
  398.  
  399. The DESK (Grocery) menu:
  400. -----------------------
  401. About Grocery... - This command displays the version, copyright and
  402. registered owner the program. To exit the dialog, simply select 'OKAY'.
  403.  
  404. Additional accessories are may be available under the DESK menu, depending
  405. on your system configuration.  Most ACCs work correctly with The Grocery
  406. Lister, but some that do not use a GEM window may have display problems
  407. with the highlight bar in the grocery file window.  To avoid this problem,
  408. make sure the grocery file window is NOT active before selecting an ACC
  409. from the DESK menu.
  410.  
  411.  
  412. The FILE menu:
  413. -------------
  414. New ^N - This command can be used to clear either or both the current
  415. grocery list or grocery file from memory.
  416.  
  417. Open Grocery File ^O - Use this command to load a grocery database into
  418. memory.  Once loaded the database may be used to select items for a current
  419. grocery list or it may be edited as desired (see the EDIT menu).
  420.  
  421. When the grocery database is loaded, the following options will also be
  422. loaded and will overwrite their current settings in the menus: sort by
  423. selection, show fields selection, tax rate, category list, location list,
  424. and store names.
  425.  
  426. Note:  If a default filename is entered via the OPTIONS menu, that file
  427. will automatically be loaded into memory when the program is first run.
  428.  
  429. Open Grocery List ^O - Use this command to load a grocery list into memory.
  430. Once loaded, the list may be added to or deleted from using the methods
  431. described under 'The Main Screen'.
  432.  
  433. When the grocery list is loaded, the following options will also be loaded
  434. and will overwrite their current settings in the menus: sort list by
  435. selection, show fields selection, and auto sort.
  436.  
  437. Note:  If a default filename is entered via the OPTIONS menu, that file
  438. will automatically be loaded into memory when the program is first run.
  439.  
  440. Merge File - This command allows you to merge grocery items from another
  441. grocery file into the currently loaded grocery database.  It also allows
  442. you to merge items from a comma or tab delimited ASCII file.  After
  443. selecting this menu command, a small dialog will appear allowing you to
  444. select the type of file to merge from.  This is followed by a file
  445. selector.  Be sure to select the correct type of file for merging to
  446. prevent corrupting the grocery database in memory.
  447.  
  448. When merging from comma or tab delimited files, the following format is
  449. expected.  Each grocery item is on a separate line followed by a CR and
  450. line feed (normal ASCII line end).  In each line, each field is separated
  451. by either a comma or tab.  Each line is read from the file and the data is
  452. loaded into the item fields until no more commas or tabs are found.  If all
  453. possible fields have not been filled in, the rest will be filled in with
  454. blanks.
  455.  
  456. Merge List ^M - This allows for the grocery items of a saved list to be
  457. merge into the current grocery list in memory.  The grocery list menu
  458. options are not altered when the list is merged.  The grocery list subtotal
  459. and total will be recalculated with the merged lists prices and the current
  460. tax rate.
  461.  
  462. Save Grocery File ^S - Once changes have been made to a grocery file in
  463. memory, use this command to save a copy of the updated grocery file to
  464. disk.  The file will automatically be saved to the same filename that was
  465. used when the file was loaded.  This command will only be available after a
  466. file is loaded from disk or after a new grocery database is saved using the
  467. 'Save File As' command.
  468.  
  469. When the grocery file is saved, the following options will also be saved:
  470. sort by selection, show fields selection, tax rate, category list, location
  471. list, and store names.
  472.  
  473. Save File As... - Use this command to save a grocery database to disk for
  474. the first time or to save a loaded database to disk with a different name
  475. than the one it was loaded from.
  476.  
  477. Save Grocery List ^L - This command will save the current grocery list to a
  478. disk file.
  479.  
  480. When the grocery list is saved, the following options will also be saved:
  481. sort list by selection, show fields selection, and auto sort.
  482.  
  483. Save List As... - Use this command to save a grocery list to disk for the
  484. first time or to save a loaded list to disk with a different name than the
  485. one it was loaded from.
  486.  
  487. Save Configuration ^X - This command will save the configuration and option
  488. settings to a GROCERY.CFG file. This file will be read the next time the
  489. program is run and all the settings will be restored to their saved values.
  490. This includes the size and position of the windows, the settings in the
  491. page setup dialog, the SORT and VIEW menu settings, and the various OPTION
  492. menu settings.
  493.  
  494. View ASCII File ^X - This command will bring up a file selector allowing
  495. you to choose an ASCII file to view.  After the file is selected, with
  496. default option settings, a six line window will open at the bottom of the
  497. screen and the grocery list and grocery file windows will be reduced
  498. accordingly.  This window can be scrolled through using the standard window
  499. scroll/slider bar or using the keyboard arrow keys.
  500.  
  501. If 'Auto Size Windows' is not set in the OPTIONS menu, then the ASCII file
  502. window will open on top the the other windows.  If the ASCII file window is
  503. moved or sized, then the next time it is opened it will be re-opened to its
  504. last size and position.
  505.  
  506. Once the ASCII window has been opened, the command will change to 'Close
  507. ASCII File' and selecting it will close the ASCII window and restore the
  508. grocery list and grocery file windows to normal.
  509.  
  510. NOTE: NO checking is done on the file to ensure it contains all ASCII
  511. characters.  Opening non-ASCII files may have unpredictable and very
  512. undesirable affects.
  513.  
  514. Page Setup ^U - This command brings up a dialog allowing you to configure
  515. how your grocery list printouts will look.
  516.  
  517. On the right side of the dialog, under the heading 'Columns to Print:', you
  518. can set the number of columns to print for each field of the grocery item.
  519. You can also set the number of spaces to leave in between fields.  To the
  520. right of each field name, you can click on a box with a + or - in it to
  521. increase or decrease the column count, respectively.  The 'space:' in
  522. between field names indicates the space in between the fields on the
  523. printouts.  At the bottom of the column numbers for each field is a box
  524. which contains the total number of columns for a given line in the
  525. printout.  Be sure to keep this total in a range that can be handled by
  526. your printer.  Also note that the 'space:' at the bottom of the field list
  527. is used to set the space in between items when two column printing is set.
  528.  
  529. In the upper right side of the dialog you can set the top and bottom
  530. margins as well as the the body size of the printout.  These three numbers
  531. will be added and displayed in the 'Page Size:' box to indicate the total
  532. lines per page.  Note that a normal 8.5 x 11 inch page has 66 lines.
  533.  
  534. In the middle right side of the dialog are two text fields allowing you to
  535. enter leading and trailing printer control codes. Enter the decimal codes
  536. needed by your printer to configure the printout as desired.  These codes
  537. can be used for setting the print size to compressed so that two columns of
  538. items can fit on a standard page.  Leading codes are sent to the printer
  539. before sending grocery list text and trailing codes are sent after the
  540. grocery list is finished printing.
  541.  
  542. The lower right side of the dialog contains five buttons.  These buttons
  543. are used as follows:
  544.  
  545. Two Column - Select this button to allow a two column printout of the
  546. grocery list or grocery file.  Items will be printed in sort order in
  547. column one first and then in column two.
  548.  
  549. Form Feed - Select this button to have a form feed sent to the printer
  550. after the grocery list or grocery file is printed.  This form feed is the
  551. standard Epson control character decimal 12.  The form feed is sent after
  552. the trailing codes.
  553.  
  554. Print to File - This allows you to print a grocery database or list to a
  555. disk file rather than to the printer.  This can be useful for loading into
  556. other programs in order to use different fonts or to further customize the
  557. printout.
  558.  
  559. Item Sub-Totals - With this button set, item prices on the printout will be
  560. calculated with the tax and quantity, rather than just the base item price.
  561.  
  562. Set Defaults - This button lets you return all the values in the Page SetUp
  563. dialog to their default values.
  564.  
  565. At the very bottom of the dialog are four more buttons.  The 'LOAD' and
  566. 'SAVE' buttons allow you to load and save particular page setup
  567. configurations.  Any filename can used for these configuration files.  The
  568. 'CANCEL' button allows you to discard any changes to the settings and quit
  569. the dialog.  The 'DONE' button quits the dialog and saves the current
  570. settings.  These settings will be saved to the configuration file if a save
  571. configuration is executed.
  572.  
  573. Print Grocery File - Use this command to print out the current grocery
  574. database in memory.  If 'Print to File' is set in the Page SetUp dialog, a
  575. fileselector will appear allowing you to specify the filename.  If the
  576. printer is not on-line and ready to print, an alert will appear giving you
  577. the chance to correct the problem or abort the printout.
  578.  
  579. Print Grocery List - Use this command to print out the current grocery list
  580. in memory.  If 'Print to File' is set in the Page SetUp dialog, a
  581. fileselector will appear allowing you to specify the filename.  If the
  582. printer is not on-line and ready to print, an alert will appear giving you
  583. the chance to correct the problem or abort the printout. The printout from
  584. this command can be used as a shopping list and to mark changes in prices
  585. while buying groceries.
  586.  
  587. Quit ^Q - Exit the program.  An alert will appear if changes have have been
  588. made to the grocery file or list allowing you to save the changes, quit
  589. anyway, or cancel the command.
  590.  
  591.  
  592. The EDIT menu:
  593. -------------
  594. Add Item ^A - This command will bring up the edit dialog allowing you to
  595. type in a new grocery item, its category, location, coupon reminder,
  596. taxable status, and its price.    The scrolling window in the lower middle
  597. of the dialog is used to enter location, coupon reminder, taxable status,
  598. and price for each of the 4 possible stores.  The window can be scrolled
  599. using the scroll bar and arrow buttons on the right side of the window.
  600.  
  601. The item name, category, and locations can be up to 20 characters in
  602. length.  Any character, except an 'S', can be entered in the coupon field
  603. and it will be changed into a 'C' in the grocery file display.  If an 'S'
  604. is entered in the coupon field then it will stay an 'S' and indicates an
  605. item on sale or a special sale price. Any character can be entered in the
  606. taxable field and it will be changed to a '+' in the grocery file display.
  607. Entering a character in this field will indicate the item is taxable and
  608. leaving it blank will indicate the item is not taxable. Note that these are
  609. the recommend uses of the these fields in the grocery item, but the fields
  610. can actually be used for anything as desired by the user.
  611.  
  612. You can also click on the category or location text fields to bring up the
  613. appropriate list selector dialog.  Clicking on an item in the category or
  614. location selector will automatically insert that item in the appropriate
  615. field in the edit dialog.  You can also add, change, or delete items in the
  616. selector dialog as described later in the EDIT menu section.
  617.  
  618. The item is put into the grocery file based on the type of sorting method
  619. selected under the 'Sort' menu.  The item is not checked to see if it is
  620. already in the file so it is possible to have duplicate items.
  621.  
  622. The item will be entered into the file and the input line will be cleared
  623. so that another entry can be made.  When finished entering new items,
  624. select 'CANCEL' to quit out of the edit dialog.
  625.  
  626. Edit Item ^E -  This command is used to alter an existing grocery item.
  627. Any part of the grocery item may be changed.  To edit an item, move the
  628. mouse arrow over the desired item so that it is highlighted and then select
  629. the 'Edit Grocery Item' command. Be sure that the desired item remains
  630. highlighted when the command is selected.  The item will be placed in the
  631. edit dialog with the cursor positioned at the amount input field.
  632.  
  633. Alter the item as desired and select 'OKAY' or press return.  The edit
  634. dialog will be closed and the altered item will be updated in the grocery
  635. file and in the current grocery list if it is already there.  Select
  636. 'CANCEL' to abort the edit.
  637.  
  638. Delete Item ^D -  Use this command to remove unwanted items from the
  639. grocery file.  Position the mouse arrow over the item to be deleted and
  640. then select this command from the menu line.  Be sure that the desired item
  641. remains highlighted when the command is selected.  The item will be placed
  642. in the edit dialog and you will be asked to verify the delete operation.
  643. Select 'OKAY' or press return to confirm the delete or select 'CANCEL' to
  644. abort the command.
  645.  
  646. Note:  If the item is in the current grocery list, the item will still be
  647. deleted from the grocery file, but it will not be deleted from the current
  648. list.
  649.  
  650. Change Items ^C -  This command can be used to make global or semi-global
  651. changes on the Item Name, Category, and Location fields.  A dialog will
  652. appear allowing you to select the fields you want to change, the 'From' and
  653. 'To' strings, and the stores the change applies to for location field
  654. changes.
  655.  
  656. Select 'SOME' to selectively change some items.  When an item is found with
  657. a matching 'From' string in a selected field, the edit dialog will appear,
  658. allowing you to change that item.  From the edit dialog, select 'OKAY' to
  659. change the item, select 'CANCEL' to not change the item and continue
  660. searching for the next item, or select 'ABORT' to not change the item and
  661. cancel the change items command altogether.
  662.  
  663. Select 'ALL' to change all matching items without asking to verify the
  664. change.
  665.  
  666. Select 'CANCEL' to abort the change items command.
  667.  
  668. Category List ^V - This command brings up the list selector dialog allowing
  669. you to modify the list of pre-defined categories.  You can type in a new
  670. category and select 'ADD' to add it to the list.  Select an existing
  671. category, change the text in the text field, and select 'CHANGE' to modify
  672. that category.  Select an existing category and select 'DELETE' to delete
  673. that category from the list.
  674.  
  675. The 'IMPORT' button allows you to load a category list from another grocery
  676. file into the current grocery database.  All categories in the list before
  677. the import will be overwritten.
  678.  
  679. Note that the category and location list is saved with the grocery database
  680. file and each grocery database can have its own set of categories and
  681. locations.
  682.  
  683. Location List ^B - This command works the same as the 'Category List'
  684. command above, but allows you to modify the pre-defined list of locations.
  685.  
  686. Store Names ^J - This command allows you to define or modify the names of
  687. the four possible stores associated with the current grocery database.  The
  688. store names are saved with the grocery database file and are used in the
  689. grocery list to group items by store on the grocery list printout.
  690.  
  691. Staples List - This command allows you to edit a special type of grocery
  692. list which contains regularly purchased items that are a part of almost
  693. every grocery list.  You can add or delete items in this list just like the
  694. a regular grocery list.
  695.  
  696. Once this command is selected and the staples list is loaded into memory,
  697. the command will change to 'Save Staples' and selecting this will save the
  698. staples list back to the predefined disk file. If you have a grocery list
  699. in memory that has not been saved when you select the 'Staples List'
  700. command, an alert will be presented allowing you to save the current list,
  701. continue without saving the list, or cancel the command.
  702.  
  703. Include Staples ^I - This command will automatically merge the staples list
  704. into the current grocery list in memory.  This allows you to easily add a
  705. set of regularly purchased items to any grocery list at any time during the
  706. creation of that list.
  707.  
  708. Clear Coupons - With this you can clear the coupon flags in the grocery
  709. database either selectively or all at once. An alert will be presented
  710. allowing you to choose 'SOME', 'ALL', or 'CANCEL' the command.
  711.  
  712. If 'SOME' is selected, the grocery database will be searched and if a
  713. coupon flag is found the edit dialog will be presented allowing you to
  714. 'OKAY' the change, 'CANCEL' the change and search for the next flag, or
  715. 'ABORT' the command altogether.
  716.  
  717. Update List Items -  This command will search through the grocery list
  718. items and update the coupon, taxable, and amount fields of any items found
  719. in the current grocery database.  Since the grocery list and grocery file
  720. are independent, it is possible to have a saved list on disk with different
  721. item data from the grocery database used to create that list.  This command
  722. will ensure that any changes made to the grocery database (other than item
  723. names) are correctly reflected in the current grocery list.
  724.  
  725. The SORT menu:
  726. -------------
  727. The sort menu is divided into three sections.  The first two sections allow
  728. you to specify how the grocery database file and grocery list will be
  729. sorted for display and printout purposes.  The options are 'Sort by Item'
  730. name, 'Sort by Category', or 'Sort by Location'.  A check mark will appear
  731. to the left of the menu item indicating the current sort selection.  When
  732. the selection is changed, the list or file will be sorted accordingly and
  733. the display will be redrawn with the new sort order.  Note that when the
  734. grocery list is printed, the items will be grouped by store and sorted
  735. within that group based on the selected sort option at the time of
  736. printing.
  737.  
  738. The third section contains an option to 'Auto Sort' the grocery list and a
  739. command to 'Sort Grocery List' on demand.  If Auto Sorting is set, a check
  740. mark will appear to the left of the menu item.  Auto sorting causes each
  741. item added to the grocery list to be placed in the appropriate sorting
  742. order and the list will be redisplayed entirely if needed.  The
  743. disadvantage of this option is that it slows things down by having to sort
  744. and display the list for each item added.  By leaving this option turned
  745. off, you can build the list with less delay and then periodically sort it
  746. using the Sort Grocery List command.
  747.  
  748. Note that if the grocery database is sorted by location, it will be the
  749. location of the currently active store (indicated in the OPTIONS menu and
  750. the information line of the grocery file window).  If the current store is
  751. changed while the file is sorted by location, the file will be resorted and
  752. re-displayed.
  753.  
  754. The VIEW menu:
  755. -------------
  756. The view menu is also divided into three sections.  The first two sections
  757. allow you to specify which fields of the grocery database file and grocery
  758. list will be displayed in their appropriate windows.
  759.  
  760. In the grocery file section, you have the following display options:  'Show
  761. Item', 'Show Category', 'Show Location', 'Show Coupon', 'Show Taxable', and
  762. 'Show Price'.  Each field set to display will have a check mark to the left
  763. of the menu item.
  764.  
  765. The grocery list section contains the same options as above, plus two
  766. special options unique to the grocery list.  'Show Store Name' will display
  767. an extra field, after the location, with the name of the store tagged to
  768. that item.  'Show Item Sub-Totals' will display the sub-totaled item price
  769. calculated from the quantity and taxable status of that item rather than
  770. just the base price of the item.  Each of these options will also have a
  771. check mark to the left of the menu item when they are selected.
  772.  
  773. The third section contains one command to 'Configure Display' that provides
  774. for even more control over the grocery list and grocery file display.  This
  775. command will bring up a dialog which allows you to specify the number of
  776. columns to display for the three main character fields (Item Name,
  777. Category, and Location).  Use the '+' and '-' buttons next to each field
  778. name to increase or decrease the number of columns to display.
  779.  
  780. The OPTIONS menu:
  781. ----------------
  782. Set File Size - This command will bring up a dialog which allows you to
  783. specify the maximum file sizes for the grocery list, grocery database, and
  784. ASCII file.  Adjusting these
  785. values allows you to determine the amount of memory that The Grocery Lister
  786. will reserve from the system when it is run.  If you do not use large
  787. grocery lists then you can set the grocery list size smaller and use less
  788. memory.  This can be useful for machines will small amounts of ram or for
  789. multitasking environments where additional ram is needed for other
  790. applications to run in.
  791.  
  792. Increase or decrease the file size settings by selecting the '+' or '-'
  793. buttons next to the file type.  The values indicate the maximum number of
  794. items in a grocery database file or grocery list and the maximum number of
  795. lines to load into memory for an ASCII file.  The 'Memory Required' box at
  796. the bottom indicates the amount of memory that the program will use based
  797. on the current settings.
  798.  
  799. When selecting the '+' or '-' buttons you can hold down the shift key to
  800. increase or decrease the value in units of 10 or hold down the control key
  801. to increase or decrease the value in units of 100.
  802.  
  803. Note that you must 'Save Configuration' under the 'FILE' menu after
  804. changing the file size settings and then quit the program and re-run it for
  805. the changes to take effect.
  806. Default File Names - This command brings up a dialog allowing you to
  807. identify the grocery database file and/or grocery list file and/or ASCII
  808. file to be automatically loaded into memory when the program is first run.
  809. Enter an 8 character filename of a grocery list or grocery file or a full
  810. filename plus extension for an ASCII file.  Or click on one of the text
  811. fields to bring up the standard file selector.  The complete pathname will
  812. be used, but only the 8 character filename will be displayed.
  813.  
  814. Note that you must 'Save Configuration' under the 'FILE' menu after
  815. changing the filenames.  The next time the program is run, the files
  816. specified will be automatically loaded.
  817.  
  818. Tax Rate - This command will bring up a dialog allowing you to specify the
  819. tax rate to be used, on any items marked as taxable, in calculating the
  820. grocery list total.  You can also select the box next to 'All Items
  821. Taxable' to cause tax to be calculated on all items regardless of the
  822. taxable field.  Note that the tax rate will also be used to calculate item
  823. sub-totals if that options is selected (see VIEW menu).
  824.  
  825. Set Monetary Units - This option allows you to set the number of digits and
  826. decimal format to be used in the amount field of each item.  The default
  827. setting is for North American (U.S. and Canadian) dollar values.  By
  828. turning off decimals and increasing the number of digits, you can use The
  829. Grocery Lister with a variety of currencies.  This setting will affect both
  830. the on-screen display and the printout of the amount field.
  831.  
  832. After the amount format is changed, selecting 'OKAY' will result in the
  833. currently loaded grocery list and grocery file being reformatted.  If you
  834. save the list or file after such a change, the amount format will be saved
  835. also.  The next time that list or file is loaded, the new format will be
  836. used.
  837.  
  838. To save the new format as the program default, select 'Save Configuration'
  839. from the 'File' menu.  This default will be loaded each time the program is
  840. run, but the format will be over-ridden by loading a grocery file with a
  841. different format.
  842.  
  843. Auto Capitalization - Setting this options will result in the first letter
  844. of item name, category, and location being set to upper case when a grocery
  845. item is added or edited.  When 'OKAY' is selected from the edit dialog, the
  846. first letter of these three fields will automatically be converted to upper
  847. case.
  848.  
  849. Full Capitalization - Setting this option will result in all characters of
  850. the item name, category, and location fields being set to upper case when a
  851. grocery item is added or edited.  When 'OKAY' is selected from the edit
  852. dialog, all characters in these three fields will automatically be
  853. converted to upper case.
  854.  
  855. Auto Scroll - This option allows you to activate or deactivate the
  856. automatic grocery database file scrolling that occurs when the mouse
  857. pointer is moved just above or just below the grocery file interior window.
  858.  
  859. Location Matching - This option is used in conjunction with adding or
  860. editing grocery items.  When entering items in the edit dialog, you can
  861. enter the category and leave the location(s) blank and when the 'OKAY'
  862. button is selected, the existing grocery database will be searched for a
  863. matching category.  If a matching category is found, then any blank
  864. locations will be filled in with the locations found in the existing
  865. grocery item with the same category.  The locations will be copied into the
  866. same store positions as they were found in the existing grocery item (i.e.
  867. the location for store #1 will be copied into the store #1 location for the
  868. item being edited).
  869.  
  870. This can be useful when items of the same category are all in the same
  871. location in the store as you only have to enter the category for new items
  872. and the location(s) will be filled in automatically.
  873.  
  874. Auto Size Windows - Setting this option will result in the grocery list and
  875. grocery file windows being automatically re-sized when the ASCII file
  876. window is opened so that the windows do not overlap.  When the ASCII file
  877. window is closed, the other windows will automatically be re-sized back to
  878. their original sizes.  If either the grocery list or grocery file window
  879. had been previously moved or sized, they may not be re-sized when the ASCII
  880. file window is opened.
  881.  
  882. Note that when this option is set and the ASCII file window is moved or
  883. resized and then closed, the next time it is opened it will not open back
  884. to it's default size and position rather than its previous size and
  885. position.
  886.  
  887. If this option is not set, then the ASCII file window will be opened on top
  888. of the other windows.  If the ASCII file window is moved or resized and
  889. then closed, the next time it is opened it will open up to the previous
  890. size and position.
  891.  
  892. Auto Expand - Setting this option will result in all fields being set to
  893. display all columns whenever the window full box is used to expand the
  894. window to full screen size.  This allows you to set the window sizes,
  895. fields, and columns displayed such that both windows will not overlap on
  896. the screen and the important grocery item information is displayed.  Then,
  897. if you do need to take a quick look at some of the hidden information, you
  898. can select the window full box and see all the information and then select
  899. the full box again to return to normal operation.
  900.  
  901. Note that resizing the window after it has been expanded to full screen
  902. (and before the full box is selected again) will cause the display settings
  903. to become the default for that window and you will not be able select the
  904. full box to return to the previous size and display configuration.
  905.  
  906. Retain Item Info - This option is used in conjunction with the 'Add
  907. Item...' command in the 'Edit' menu.  With this option selected, when you
  908. are adding new items, the category and location fields will retain the
  909. values of the item just added so they can be reused with out retyping them.
  910. This is useful when adding several items in the same category or location.
  911.  
  912. If this options is not set, then the category and location fields will be
  913. cleared when an item is added.
  914.  
  915. Store Names ^K - This is actually a menu heading for the next four menu
  916. options which allow you to specify which store is the current store to be
  917. tagged to items added to the grocery list.  The next four menu items will
  918. contain the names of the stores as defined using the 'Store Names' command
  919. under the 'EDIT' menu.  The current store will be indicated with a check
  920. mark to the left of that menu item.  The current store name will also be
  921. displayed in the information bar in the grocery file window.  Pressing '^K'
  922. will change the current store to the next store name in the list.
  923.  
  924. Auto Select - This option will override the current store name selected and
  925. cause the store with the lowest price for a given item to be used when that
  926. item is added to the grocery list.  With this option selected, you will be
  927. able to easily price shop at up to four stores and automatically save the
  928. maximum amount possible by buying the right items at the right store.
  929. Selecting this option will also result in 'Auto Select' being displayed in
  930. the grocery file information bar rather than a store name.
  931.  
  932.  
  933. * LIMITATIONS *
  934.  
  935. - As noted under The Desk Menu section, there may be some
  936. incompatibilities (with respect to display behavior) with accessories
  937. that do not use a GEM window.
  938. - Although it is possible to keep the grocery file very accurate with a
  939. lot of database maintenance, The Grocery Lister is really designed to
  940. give you a rough estimate of your grocery bill and only needs to be
  941. maintained with a few minutes of editing after returning with your
  942. grocery store receipt.
  943. - The Grocery Lister has been tested on a variety of Atari ST, TT, and
  944. Falcon machines and various TOS releases.  Although there are no
  945. apparent incompatibilities with any TOS version, the author makes no
  946. guarantees as to compatibility with any present or future Atari
  947. computers.
  948.  
  949.  
  950. Technical Support:
  951.  
  952. If you experience problems using The Grocery Lister you can contact me at
  953. the following addresses.  I also welcome any suggestions for enhancements
  954. to the program.
  955.  
  956.     Randy Hoekstra
  957.     3414 Norwood Circle
  958.     Richardson, Texas  75082
  959.  
  960.     E-mail: R.Hoekstra1@genie.geis.com
  961.  
  962.