RandySnd
========

This program allows you to define a set of sound files for
each Windows system sound.  RandySnd will then select, at random, 
for each of the system sounds, one of the files to play for that
sound.  The randomizing process takes place whenever RandySnd
is run "minimized" or on demand by pressing the "Randomize Now!"
button. You can enable/disable randomizing on a sound-by-sound basis.
Note that NO sounds are randomized by default.

Your sounds can also be randomized periodically if you enter a
non-zero value into the 'Dynamic randomizing period' field.
If this value is zero, randomizing will take place only when 
RandySnd starts.

Defining the set of sound files to be used by each system sound can 
be done either by choosing each file using a (boring) standard file 
open dialog, or via (thrilling) drag/drop from file manager.  The 
latter mechanism is by far the easiest when first setting up. 
RandySnd doesn't prevent you from placing non-sound files in its list,
so be a bit careful.  (You normally only want to consider .WAV files.) 
I don't know quite what happens when the system attempts to play 
an .exe file...!?

If you specify that the application should be run minimized
(cf: the checkbox in the program manager's Properties box)
then a small dialog will be displayed that informs you that
your system sounds are being twiddled. This vanishes of its
own accord after about 5 seconds.  If you find this dialog irritates
you, it can be disabled by unchecking the 'Show Startup Dialog'
checkbox.

So, I suggest you have two icons in Program Manager to control
RandySnd. One in the StartUp group, with the minimize button
checked; the other in a utilities group that isn't run minimized.

Have fun!


Acknowledgements:

The authors of the snd.cpl Control Panel Applet, for the icon
upon which I based the icon in RandySnd. (My version has chords
next to the ear instead of single notes... trying to give the 
impression of lots of sounds in one...)

Members of cix' windows conference, for the concept of a Windows
system sound randomizer.

Carl Pettypiece (pettypi@gaul.csd.uwo.ca) for valuable constructive
criticism of v1.00.  His comments provided the inspiration for v1.01.


-----


RandySnd is (C) 1992 Anthony McCarthy

Feel free to use and abuse this program to your own ends.
However, it is provided FREE, AS-IS and with absolutely NO
WARRANTY whatsoever. Use it at your own risk.

The above statement is especially appropriate as this is
my very first program built using MSC++ 7 and Microsoft's
Foundation Classes. As yet I haven't really got my head
around how to play with precompiled headers. Also, I ain't
yet played with the diagnostic services provided by MFC
and so there may well be memory leaks that I haven't seen
yet.

Please forgive the proliferation of literal integers and
strings in the code - this code was a quick hack - they
should all really be symbolic at least.  Also, I haven't yet
developed/decided on a personal coding style for C++ so 
things might feel inconsistent.

If you really like this program, a donation of a few pounds,
dollars, roubles, francs or whatever would be appreciated, to:
Anthony McCarthy, 14 Beryl Road, Bedminster, Bristol, BS3 3DH, UK
(No written receipts will be supplied, but I will acknowledge receipt
via e-mail.)

Having said there's no warranty, please report any bugs, enhancement
requests or source code criticisms to (in order of preference):
  amc@beryl.demon.co.uk
  amccarthy@cix.compulink.co.uk
  100012.3712@compuserve.com   


CAVEAT: if you're trying to recompile this source with the same 
release of MSC 7.0, as I'm using, the compile will fail. Microsoft 
failed to include the AfxSig_vh enum in afxmsg.h although it is 
referenced in the ON_WM_DROPFILES() macro in the same file!  To work 
around this, I simply changed 'AfxSig_vh' to 'AfxSig_vw' in my copy 
of afxmsg.h.


Change History
~~~~~~~~~~~~~~

v1.01 : AMcC : 22Aug92 : Added option to enable/disable the startup
                         dialog that appears briefly when RandySnd
                         is run minimized.

                         Added a facility to request that randomization
                         takes place automatically every n seconds.

                         Bug fix: the sound files list box is now
                         correctly filled when the configuration
                         dialog is initially loaded.

v1.00 : AMcC : 10Jun92 : initial creation


Revision id: $Id: readme.txt 1.3 92/08/22 15:36:29 AMc Exp Locker: AMc $


