

           README.TXT for CLIPPER 5.2 POWER TOOLS



INSTALLATION

To install the Clipper Power Tools Library, simply enter the
following command from the DOS prompt:

         A:PTOOLS <Destination Drive>

If <Destination Drive> is not specified, it will default to the
current drive.  Approximately 4MB of free disk space are 
required for the installation.

PTOOLS.EXE is a self-extracting archive file that was created
with LHA Version 2.13, a high-quality file compression and
decompression program.  LHA Installer (c) 1991, Yoshi.  All
rights reserved.

LHA will create the following directory structure on
<Destination Drive>:

   \PTOOLS
      50LIB       The Clipper 5.0 Power Tools Library
      52LIB       The Clipper 5.2 Power Tools Library
      NG          The Power Tools files for the Norton Guides engine
      INCLUDE     The Power Tools header files
      SOURCE      
         SAMPLE   Sample programs from the text of Clipper 5.2 Power Tools
         PROGRAM  The entire Orion program discussed in the text
      DEMOS    
         PLEIADES Demo program for Sirius Software's Pleiades
         HELIOS   Demo program for Sirius Software's Helios
         HERMES   Demo program for Sirius Software's Hermes

Once the installation program has completed, a number of
additional steps are needed to make the Clipper 5.2 Power Tools
software fully functional:

1.  LIBRARY FILES.  The Power Tools diskette contains library
(.LIB) files for both Clipper 5.01 and Clipper 5.2.  The former
is installed in \PTOOLS\50LIB and is named PTOOL50.LIB, while
the latter is installed in \PTOOLS\52LIB and is named
PTOOL52.LIB.  It is our recommendation that the library file
that you are actually planning to use be renamed to PTOOLS.LIB,
since this is the library name that may be referenced within the
Power Tools Library itself.  This .LIB file should also be
copied or moved to the directory that contains your other .LIB
files, like CLIPPER.LIB, EXTEND.LIB, and TERMINAL.LIB.  If you
elect not to move it, you should modify the DOS LIB
environmental variable to reflect the path to the directory in
which PTOOLS.LIB is located.  If, for example, CLIPPER.LIB
is in C:\CLIPPER5.2\LIB, you can change the value of the LIB
environmental variable as follows:

      SET LIB=C:\CLIPPER5.2\LIB;C:\PTOOLS\52LIB

2.  NORTON GUIDES FILES.  The Norton Guides files contained in
\PTOOLS\NG should be moved to the directory in which Clipper's
own Norton Guides files reside.  In this case, running the
Norton Guides will automatically load both the Clipper help
files and the Power Tools help files.

3.  HEADER FILES.  The Power Tools header files should also be
copied or moved to the directory that contains your other
Clipper header files, most notably STD.CH.  If you elect not to
move them, you should modify the DOS INCLUDE environmental
variable to reflect the path to the directory in which you have
placed the Power Tools header files.  If, for example, your
Clipper header files are in C:\CLIPPER5.2\INCLUDE, you can
change the value of the INCLUDE variable as follows:

   SET INCLUDE=C:\CLIPPER5.2\INCLUDE;C:\PTOOLS\INCLUDE

4.  The demo programs illustrate the features and capabilities
of the three software products currently available from Sirius
Software Development, Inc.  Ordering information can be found
in the file ORDER.FRM in the root directory of the Power Tools
disk.


NORTON GUIDES FILES

Included on the Power Tools diskette are Norton Guides files
that contain complete documentation for the Clipper Power Tools
Library.  Be sure to check these when working with particular
Power Tools commands and functions, since in many cases these
incorporate last minute changes to the software.  However, at
release time, these are the known additions and changes:


Spreadsheet()

A number of changes have been made to the Spreadsheet()
function.  The full range of features supported by
Spreadsheet(), and the keystrokes necessary to invoke them, are
shown in the Spreadsheet's Help screen, which is displayed if
the user presses F1 when the Spreadsheet() function is
executing.  Features that are not listed in the printed
documentation include:

   1.  ADDED FUNCTIONS.  Support for the following internal
   spreadsheet functions:

      @CALC -- calculates the value of an expression that includes
      references to cells containing numeric values and valid 
      operands (+,-,*,/,^)

      @DATE -- returns the current system date

      @DAY -- returns the character day of the week

      @WORDDATE -- returns a formatted text string representing the
      system date

      @MONTH -- returns the character month

      @SECONDS -- returns the number of seconds from the system clock

      @SUM( <cRange1> : <cRange2> ) -- sums the numeric values in a
      range of cells

      @TIME -- returns the current system time

      @YEAR -- returns the current year based on the system clock

   Note, however, that formulas in individual cells cannot be edited
   by pressing F2;  instead, they must be reentered.	

   2.  EXPRESSION MODE.  The Spreadsheet can be put in Expression
   Mode to derive a cell's value by pressing +( (that is, the plus 
   sign and an open parenthesis), entering the expression, and 
   terminating the expression with ) (a closed parenthesis).  
   Although    intended to perform mathematical operations on 
   numeric constants, the expression can be any valid Clipper 
   expression, which expression mode will attempt to macro-expand.  
   If Clipper functions are used, these should be explicitly 
   defined to insure that their references can be found in the 
   symbol table.  The following operands are supported:  
   +,-,*,/,^,=.  Note that expression mode must be terminated with 
   a closing parenthesis before the Enter key is pressed;  failure 
   to do so will result in a syntax error.

   3.  SAVE/RESTORE.  The ability to save spreadsheets created by
   the Spreadsheet() function and to restore files created by
   Spreadsheet() from disk.  Spreadsheet data can be saved to disk
   by pressing Alt-S;  it can be stored by pressing Alt-R.

   4.  PRINTING.  An entire spreadsheet can be printed by pressing
   Alt-P.  In response to the user pressing Alt-P, the user will be
   asked whether the spreadsheet is to be printed to the screen
   (which basically will result in an unformatted version of the
   spreadsheet being displayed to the screen), to the printer, or
   to an alternate file.  If the latter, the user is then prompted
   for the name of the alternate file.

   5.  RECALCULATION.  The ability to recalculate the spreadsheet
   so that formulas are computed from the most recent data.  A
   single cell can be recalculated by pressing the F5 key;  the
   entire worksheet can be recalculated by pressing Alt-F5.

   6.  COPYING CELLS.  The ability to copy the contents of a single
   cell to another cell by pressing Alt-C.  If the source cell
   contains a formula, the formula in the destination cell will
   have the same formula, as if the Spreadsheet() function used
   absolute addressing.

   7. SUPPORT FOR 43-LINE MODE.  Pressing Alt-L will toggle the
   spreadsheet between 25-line mode and 43-line mode.

   8. SIZABLE COLUMNS.  Pressing ALT-W prompts the user for the
   width of the current column.


WSet()

Because support for exploding windows has been added to the
WSet() function, one parameter has been modified and one has
been added.  The complete syntax of WSet() now is:

      WSet( [<nTop>] [, <nLeft>] [, <nBottom>] [, <nRight>]
         [, <cColor> ] [, <cBorder>] [, <nShadow>] [, <nExplode>]
         [, <cTitle>] [, <nTitleLocation>] [, <bOperation>]
         [,cExplode] )

Valid values for <nExplode> are:

         0  The window does not explode.
         1  The window explodes from the bottom left corner.
         3  The window explodes from the bottom right corner.
         5  The window explodes from the center.
         7  The window explodes from the top left corner.
         9  The window explodes from the top right corner.

A number of manifest constants to help with these definitions
have been added to the PTWINDOW.CH header file.

The character used to create the effect of an exploding window
is indicated by the value of <cExplode>.  By default, <cExplode>
is CHR(178), which is an opaque block.  However, if the
background on which the window is being exploded also has an
opaque background, the explosion will not be visible.  In this
case, we recommend that CHR(219), the solid block character, be
used as the exploding character.

WOpen()

  This function now saves the contents of the previously opened screen
  to that screen.  This means when a screen is closed, all of the original
  contents of that screen will be refreshed.  To clear a screen of it's
  contents, the WClear() function should be used.

