DELPHI Components TCMDigit/TCMDisplay version 1.0
Copyright (c) 1997 Christian Maas
                   chmaas@hit.sb.sub.de
All Rights Reserved


CONTENTS
========
I.   Summary
II.  Requirements
III. Installation
IV.  License agreement
V.   Disclaimer agreement
VI.  Order form


I. SUMMARY
==========

a) Note
   You can evaluate this component *BEFORE* installing:

   1. Try the demo CMclock.EXE which is supplied with this archive.
   2. You can compile and modify the demo source *WITHOUT* having
      installed TCMDisplay, because of dynamically creation within
      this project. Note that you will not see the TCMDisplay component
      on the form at design time.

b) About TCMDigit/TCMDisplay
   TCMDigit is a visible component to realize a single digit in 7-segment
   or 5x7 dot style. There are many properties to change the look (color, size
   of segments and so on).

   TCMDisplay is a convenient extension of TCMDigit to realize displays with
   up to 32 digits. Normally, you will use this component instead of TCMDigit.

   In 7-segment style, numbers are formatted automatically. Decimal point must
   be represented by value in global variable "DecimalSeparator", (optional)
   sign must be placed on first position.

   Examples for 8 digit display in 7-segment style:
   Caption       Contents of display
   '123.45'      '   123.45' (right aligned with automatic setting of decimal point)
   '123.45   '   '123.45   ' (prevent right alignment)
   '-123.45'     '-  123.45' (right aligned with leading sign and automatic
                              setting of decimal point)
   '-123.45  '   '-123.45  ' (prevent right alignment)


   A new type is defined for switching between 3 possible display styles
     TDisplayStyle = (ds7Seg, ds5x7Dot, ds5x7Square);

   The following characters can be displayed in 7-segment style:
   0..9, A..F (upper/lowercase look the same)
   (Blank)
   "
   '
   G H h L o
   P (upper/lower look the same)
   U r [ ] -
   Invalid characters are displayed as "-"
   E.g., you can display the text "Error"

   In 5x7 style, all 7 bit ASCII chars can be displayed (including some greek
   chars and german "Umlaute" which are converted automatically from 8 bit
   ASCII chars). The following table denotes decimal ASCII code and according
   character for characters codes under 32 (Blank):

    0 triangle left
    5 alpha
    6 beta
    7 delta
    8 triangle up
   11 lambda
   12 my
   13 pi
   14 sigma
   15 SIGMA
   16 tau
   17 PHI
   18 OMEGA
   21 
   22 
   23 
   24 
   25 
   26 
   27 triangle right
   28 root sign
   29 in the second power
   30 Pound
   31 Yen


c) Properties
   The following new properties are defined for TCMDigit:

   { display information about the author }
   property About: TAboutProperty read FAbout write FAbout;

   { character to be displayed }
   property Digit: char read FDigit write SetDigit default ' ';

   { color of lit segment }
   property ColorOn: TColor read FColorOn write SetColorOn default clLime;

   { color of dark segment }
   property ColorOff: TColor read FColorOff write SetColorOff default clGray;

   { color of background }
   property ColorBack: TColor read FColorBack write SetColorBack default clBlack;

   { thickness of segment or diameter of dot }
   property SegmentThick: integer read FSegmentThick write SetSegmentThick default 8;

   { inner margin between segments (insignificant for 5x7 style) }
   property MarginIn: integer read FMarginIn write SetMarginIn default 1;

   { margin between outer segments and border }
   property MarginOut: integer read FMarginOut write SetMarginOut default 4;

   { switch between 7-segment, 5x7 dot and 5x7 square }
   property DisplayStyle: TDisplayStyle read FDisplayStyle write SetDisplayStyle default ds7Seg;

   { turn display of decimal point on/off }
   property DecimalPoint: boolean read FDecimalPoint write SetDecimalPoint default false;


   The following new properties are defined for TCMDisplay:

   { display information about the author }
   property About: TAboutProperty read FAbout write FAbout;

   { text to be displayed; decimal point is automatically set for 7-segment }
   property Caption: string read FCaption write SetCaption;

   { number of digits (1 - 32) }
   property DigitCount: integer read FDigitCount write SetDigitCount default 8;

   { color of lit segment }
   property ColorOn: TColor read FColorOn write SetColorOn default clLime;

   { color of dark segment }
   property ColorOff: TColor read FColorOff write SetColorOff default clGray;

   { color of background }
   property ColorBack: TColor read FColorBack write SetColorBack default clBlack;

   { thickness of segment or diameter of dot }
   property SegmentThick: integer read FSegmentThick write SetSegmentThick default 8;

   { inner margin between segments (insignificant for 5x7 style) }
   property MarginIn: integer read FMarginIn write SetMarginIn default 1;

   { margin between outer segments and border }
   property MarginOut: integer read FMarginOut write SetMarginOut default 4;

   { switch between 7-segment, 5x7 dot and 5x7 square }
   property DisplayStyle: TDisplayStyle read FDisplayStyle write SetDisplayStyle default ds7Seg;

   { position of decimal point
     -1: no decimal point visible
      0: decimal point at rightmost position
      ...
      DigitCount - 1: decimal point at leftmost position }
   property PointPosition: integer read FPointPosition write SetPointPosition default 0;

   The following new event is defined for TCMDisplay:

   { occurs if DigitCount is insufficient }
   property OnOverflow: TNotifyEvent read FOnOverflow write FOnOverflow;


II. REQUIREMENTS
================

TCMDigit/TCMDisplay are components for DELPHI 2.0. The component unit CMDISPL.DCU
can't be installed under DELPHI 1.0.


III. INSTALLATION
=================

1. Extract CMD10US.ZIP into a directory on your hard disk.
2. The archive contains the following files:
   README.TXT   (this file)
   CMDISPL.DCU  (the installable unit containing TCMDigit/TCMDisplay)
   CMDISPL.DCR  (DELPHI component resource for TCMDigit/TCMDisplay)
   CMclock.EXE  (demo for TCMDisplay; try before you install it!)
   CMclock.DPR  (demo project source)
   CMclk_W1.PAS (first form of demo project source)
   CMclk_W1.DFM (.dfm for first form of demo project)
   CMclk_W2.PAS (second form of demo project source)
   CMclk_W2.DFM (.dfm for second form of demo project)

3. Copy CMDISPL.DCU and CMDISPL.DCR in the directory which contains your own
   component units. Then install the component unit CMDISPL.DCU from
   DELPHI IDE (don't forget to change the filter from *.pas to *.dcu!).
   The new components TCMDigit/TCMDisplay are added to the page "CM".


IV. LICENSE AGREEMENT
=====================

This components are Shareware. You can freely distribute copies of the main archive
CMD10US.ZIP as long as no alterations are made to the contents and no charge is
raised except a reasonable fee for distributing costs.

You are hereby granted the permission to use TCMDigit/TCMDisplay for a period of
30 days (from first use on) for evaluation purposes. If you use this component after
that, you are required to register. Note that the unregistered version of this
components will not work outside DELPHI IDE.

Register by sending the ordering form along with US$ 20 or the equivalent in any
other currency to the author.

The US$ 20 registration fee will license one copy for use on one computer. You
must treat this component like a book that cannot be read by two different
persons at the same time.

Registered users will get a fully functional version with source code as well
as subsequent versions via e-mail. Please understand that it's not possible to
deliver this component on floppy disk.


V. DISCLAIMER AGREEMENT
=======================

This software has been thoroughly tested. Nevertheless it is provided "as is" and
without any warranties expressed or implied, including, but not limited to, implied
warranties of merchantability and fitness for a particlar purpose.

Any liability of the author, Christian Maas, will be limited exclusively to product
replacement or refund of the product purchase price. In no event shall the author
be liable for any damages whatsoever (including, without limitation, damages for loss
of business profits, business interruption, loss of business information, or other
pecuniary loss) arising out of the use of or inability to use this software or
documentation, even if the author has been advised of the possibility of
such damages.


VI. ORDER FORM
==============

Thank you for choosing TCMDigit/TCMDisplay. Please fill in the information below
and send this form along with the registration fee to:

  Christian Maas
  Nelkenweg 7
  D-66740 Saarlouis
  Germany

If you have an e-mail address, please send simultaneous a message to

  chmaas@hit.sb.sub.de

This is the most reliable way to transmit your address (prevents from illegible handwriting
in the form below).



Hereby, I order the DELPHI components TCMDigit/TCMDisplay for delivery via e-mail as follows:

Name:            ___________________________________________

Organization:    ___________________________________________

Address:         ___________________________________________

                 ___________________________________________

                 ___________________________________________

                 ___________________________________________

Phone:           ___________________________________________

e-mail address:  ___________________________________________

Where did you hear about TCMDigit/TCMDisplay?

                 ___________________________________________


Single-user copy:   ____ copies at US$ 20 each =    ________


Total amount                                        ________


Price is guaranteed until end of 1997.


Date and signature: __________________________________________


Comments:
