CROCK 


     By Kelly Roach.  Last revised 25-Feb-84.  CROCK sets up an analog
face clock in the user's environment.  To use, LOAD
<LISPUSERS>CROCK.DCOM and call (CROCK).  CROCK requires that
PROCESSWORLD be running (automatic in Fugue or later).  Bugs and
comments can be sent to ROACH.PA.
     (1) CROCK. Function CROCK has the form
	(CROCK REGION)
The first invocation creates a clock window, CROCKWINDOW, occupying
REGION with style CROCK.DEFAULT.STYLE.  If REGION is left NIL, a
region will be prompted for.  Subsequent invocations use
CROCKWINDOW.  Only one clock window may exist at any given time.
The clock is updated once a minute.
     (2) STYLE. The clock's style is maintained as a property list and
can be found by (WINDOWPROP CROCKWINDOW 'STYLE). There are four
independent boolean properties which the user may control: HANDS (the
hands of the clock), TIMES (time digits printed where the hands end),
RINGS (rings on the clock face), and NUMBERS (12 numbers around the
outside of the clock face).  The style first used will be
CROCK.DEFAULT.STYLE (bound to '(HANDS T TIMES NIL RINGS NIL NUMBERS T)
when <LISPUSERS>CROCK is first loaded).
     (3) CROCK.ALARM AND CROCK.TUNE.  The user can set CROCK's alarm
via
	(CROCK.ALARM DATESTRING)
where DATESTRING is any arg acceptable to Interlisp's IDATE (such as
the date CROCK prints in CROCKWINDOW).  CROCK will act appropriately
when time reaches DATESTRING.  Dandelion users can set global
CROCK.TUNE to a tune to be played by Interlisp's PLAYTUNE when CROCK's
alarm acts.
     (4) RECOMMENDED USAGE.  The simplest way to call CROCK
from your init file or other function is to set up your CROCK globals,
then call CROCK:
	(SETQ CROCK.DEFAULT.STYLE <style>)
	(SETQ CROCK.TUNE <tune>)
	(CROCK <region>)
You supply <style>, <tune>, and <region>.     
     (5) LEFT MOUSE BUTTON.  Buttoning CROCKWINDOW with the left
mouse button requests immediate update of the clock.  (Of course, it
may take a while for the process scheduler to get to it.)
     (6) MIDDLE MOUSE BUTTON.  Buttoning CROCKWINDOW with the middle
mouse button presents a menu of commands for modifying the clock's
style.  Menu item SHOW.STYLE prints the clock's style.
     (7) RIGHT MOUSE BUTTON.  Buttoning C ROCKWINDOW with the left
mouse button presents the usual window menu.  RESHAPEing the
CROCKWINDOW causes the clock to change its size to fit the new window
region.  CLOSEing the CROCKWINDOW deletes the clock process.