		About ASL's Recipe Gourmet

		Gary Alston -- 1 Jan 1999
		http://alstonlabs.pair.com

Recipe Gourmet was a program developed originally in 1992
and then recompiled in 1993 for American Software as the
title "Emily's Kitchen Keeper." You may have seen this title
a few years ago at various stores. It sold pretty well. There 
are people still using it. It wouldn't be surprising if there
were still copies being sold as dealers liquidate old stocks.

This archive contains the executable (which is still pretty
usable) and the complete source code (VB3, 16 bit.) Compare
the feature set in this program vs. those of current programs
people are trying to sell. The primary difference is that the
majority of current programs have "added value" with recipes
and a couple of features we didn't put in, but otherwise the
base functionality is similar. As the program was designed to
be sold on 720k disks as the base media there was only so 
much one could do.

SOURCE CODE:

The program was written using Visual Basic Ver 3. It was one
of a small handful of projects we wrote in the early 90's to 
play with what was then the only affordable RAD tool. 

The source is essentially pretty simple, although people new
to VB will find many of the methods pretty instructive. For
instance the concepts of dynasets are used (albeit in a non
microsoft fashion) as well as an internal clipboard. Many of
today's programs could benefit from these simple techniques.

Despite being a data manager the program doesn't use "normal"
database technique. Instead, it loads the data file into RAM
and goes from there. When a search is made, it doesn't churn
the disk; searches are faster in memory. This allows for some
interesting search mechanisms -- for example, double-click a
word in the recipe text and you will initiate a search for 
that word in ALL recipes. This can't really be done with any
efficiency with a disk based system, no matter HOW you index
things -- especially free-form text.

Lots of other little goodies are present, such as a demo of
the use of sendkeys, mouse hit testing on a graphic, graying
out of menus, calling help files, using graphics as ratings
symbols, using the same format for different data types, and 
so on. 

For recipe printing we assumed that the user would rather have 
a nicely formatted copy. In those days they didn't have rich
text available, although you could spend quite some time with
the MS win3 SDK to figure out the WRI format... being that this
was meant to be a rather simple and inexpensive program what 
we opted to do was simply print using WRITE.EXE. The method
used was simply to copy the contents of the recipe box and 
paste it into a copy of WRITE that would be opened, and using
SENDKEYS to drop the text in. I don't think this works in 95
(wordpad is differet) but you should be able to get the code
adjusted for this in just a few lines.

One thing not directly in the program but implemented as an 
add-on is the sorting utility. Source for it is inside the 
source ZIP file as FS.ZIP. You may wonder why sorting was 
done as an add-on and not as part of the main EXE. The 
baseline machine was 2 Megs RAM using a 386. We felt there 
wasn't enough memory to do in-memory searches AND sorting at 
the same time, especially on a machine with quite a few 
programs open. Also this same "bottom line" limited the 
number of recipes we decided it could hold cleanly in a 
given data file. These days of course 32+ Megs is common, 
so in theory it could hold a lot more records...

The source code is provided for instructional purposes only.
It is still copyrighted code. You'll find it in the main
folder in the SOURCE.ZIP file. You can use the source as you
see fit, PROVIDING that you don't use it to recreate this 
recipe program. In other words, you can't update the thing 
using VB5 and release it as your own work under a different 
name. Instead, use the techniques and the ideas as you like
in other programs...

YOU CAN MODIFY THE SOURCE AS YOU WISH AND UPLOAD IT TO ANY
VB WEB SITE OR BBS YOU LIKE. PLEASE KEEP THIS FILE WITH IT
WHEN YOU DO.

This section of the notes assumes that someone has uploaded
our original ZIP file to a site or BBS -- 

Alston Software Labs (http://alstonlabs.pair.com) is the 
original source of this program and source code. 