READ_ME.TXT

WMFH  Version 1.0  Release Notes 
================================

Gianfranco Boggio-Togna		  gbt@computer.org
C.P.  14021
I-20140 Milano (Italy)


This file contains the following topics:

  1. License
  2. Installation
  3. File list
  4. Documentation (a disclaimer)
  5. Modifying the code
  6. Reporting


1. LICENSE
==========

The WMFH package is free software, distributed under the terms of the
GNU Library General Public License and the GNU General Public License,
as published by the Free Software Foundation; either version 2 of the
License, or (at your option) any later version.

This package is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
Library General Public License and the GNU General Public License for
more details.

The text of the GNU Library General Public License is available in
file COPYING.LIB.  The text of the GNU General Public License is
available in file COPYING.  If either file is missing, write to the
Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139,
USA.


3. FILE LIST
============

  3.1 Information
  ---------------

	README.TXT		this file
	COPYING.LIB		the GNU Library General Public License
	COPYING			the GNU General Public License
	HLP_UNIT.DOC		documentation for the help unit

  3.2 Source code
  ---------------

	KB_UNIT.PAS		the keyboard unit  
	MS_UNIT.PAS		the mouse unit
	WND_UNIT.PAS		the windows unit
	MN_UNIT.PAS		the menu unit
	FS_UNIT.PAS		the file selection unit
	HLP_UNIT.PAS		the help unit
	HLP_TYPE.PAS		interface between HLP_UNIT and MAKE_HLP
	MAKE_HLP.PAS		the 'compiler' for help files

	DEMO.PAS		the demonstration program
	DEMOHELP.TXT		the help file for the demo program

	WMFHCOMP.BAT		a batch file for compiling the package

  3.3 Compiled modules
  --------------------

	KB_UNIT.TPU		the keyboard unit  
	MS_UNIT.TPU		the mouse unit
	WND_UNIT.TPU		the windows unit
	MN_UNIT.TPU		the menu unit
	FS_UNIT.TPU		the file selection unit
	HLP_UNIT.TPU		the help unit
	HLP_TYPE.TPU		interface between HLP_UNIT and MAKE_HLP
	MAKE_HLP.EXE		the 'compiler' for help files

	DEMO.EXE		the demo program for the package

	Compiled with Turbo Pascal 6.0


	DEMOHELP.HLP		the help file for the demo program

	"Compiled" by MAKE_HLP
	

4. DOCUMENTATION (a disclaimer)
===============================

I developed the package for a specific purpose: to provide a reasonable
user interface for my program QUINE (which implements a scratchpad for
truth-functional logic), having looked in vain for a free library
comprising all the features I needed. I then decided to make the package
freely available, in the hope that it may prove useful to Turbo Pascal
programmers.

I have tried to provide enough documentation to enable a competent 
programmer to use the package without having to waste too much time in
trying to understand its workings, but I have neither the inclination
nor the time to prepare documentation that comes near the standards of
commercial products.  So learning the package will involve some effort:
I am confident that it will, in any case, be at least an order of magnitude
smaller than the effort required for writing equivalent code from scratch.

I suggest this approach:

1) run the simple demo program which uses almost all the functions
   provided within the package;

2) read the source code of the demo program;

3) read the Interface section of the units; each function or procedure
   is (I hope adequately) commented;

4) read the source code of FS_UNIT and HLP_UNIT, if you are interested
   in seeing how some special features, such as "buttons" and slide rules,
   are implemented using the windows unit.

5) to see a realistic application using the whole package, you may consider
   downloading QUINExx.ZIP from the /simtelnet/msdos/math directory of the
   Simtel.Net archives.  QUINE is released under the terms of the GNU General
   Public License, with the complete source code. (You might even discover
   that truth-functional logic is not such a boring subject as it sounds)


5. MODIFYING THE CODE
=====================

Please note that all files containing Pascal source code have been
formatted assuming TAB stops to be set at columns 5, 9, 13, ...
All other source files have been formatted assuming TAB stops to be
set at columns 9, 17, 25, ...

The batch file WMFHCOMP.BAT compiles all units and MAKE_HLP in the right
order, taking dependencies into account.


6. REPORTING
============

If you use the package in one of your programs and find that it has
saved you some work, I should appreciate your letting me know with
a short note to one of the addresses shown at the start of this file.
Having spent quite some time in developing the package beyond what
was strictly necessary for my own personal use, I should naturally be
pleased to know that it has proved useful to another programmer.
