X-Files Components 1.0
 ======================

 X-Files Components 1.0 contains (as yet) one component (TXDBGrid) designed for
 Inprise Delphi 4.

 TXDBGrid is  a functional extension  of standard TDBGrid.  Assumption was that
 TXDBGrid should execute  all standard TDBGrid functions  and a few additional,
 which are turned on by Options or setting values for new properties.  TXDBGrid
 is fully compatible with TDBGrid on properties level and can be used as a rep-
 lacement without  losing existing values.  TXDBGrid has its own  ColumnEditor,
 which can fully support all new properties.


 Overview
 ========

 Additional functions accessible in TXDBGrid:
   + Right mouse button column moving
   + Column titles handled like buttons
   + Showing markers in title area
   + Switching markers between columns
   + Showing multirows headers (common for near columns)
   + Showing multilines text for data, titles and headers
   + Showing word wrapped text for data and titles
   + Vertical text justification for data and titles
   + Ending long text by "..." for data and titles
   + Enable/disable edit for any individual column
   + Data lines count change possibility
   + Showing ftMemo or ftGraphic field into cell
   + Defining width range for any column
   + Defining height range (in data lines) for any row
   + Vertical column synchronization between grids allows creation of
     multilevel footers with several summarization !!!
   + Showing/Hiding horizontal and/or vertical scrollbars
   + Any column moving can be accepted or discarded
   + Searching columns by field name
   + Changing color and font properties for any data cell
   + Drawing pictures into cell
   + Drawing text onto pictures (wallpapers)

 Additional Options accessible in TXDBGrid:
   dgRightMoving      - enable right mouse button column moving
   dgTitleButtons     - enable handle for title buttons
   dgTitleHeaders     - enable column headers showing
   dgTitleWidthOff    - exclude title width from default column width
   dgMarkerAutoAlign  - enable markers alignment (to title text)
   dgMarkerAutoSwitch - enable markers switching between columns
   dgRowResize        - enable row resizing
   dgRowScroll        - enable horizontal scrolling by keyboard, if dgRowSelect
                        option is enabled

 Additional Properties and Events accessible in TXDBGrid:
   HeaderColor       - determine background color for column headers
   HeaderFont        - determine font properties for column headers
   HeaderLinesCount  - determine header row height in lines
   LinesCount        - determine data row height in lines
   LinesCountMax     - determine maximum lines count for data row height change
   LinesCountMin     - determine minimum lines count for data row height change
   MasterGrid        - determine master grid for grids synchronization
   ScrollBars        - determine scrollbars handled by TXDBGrid
   TitleLinesCount   - determine title row height in lines
   OnColumnMoving    - determine event allows accepting of column moving
   OnHeaderClick     - determine event user clicks on a header
   OnPaintColumnCell - determine event allows changing of default color, font
                       or image for any data cell

 Additional Properties accessible in TXColumn:
   Ellipsis    - determine ending long data text by "..."
   ImageDraw   - determine image draw type for any column
   QuickDraw   - determine display bitmap without using a palette
   ShowBlob    - determine display ftMemo or ftGraphic field into cell
   ShowEdit    - determine individual edit possibility for any column
   Transparent - determine display image into cell transparently
   VAlignment  - determine vertical justification for data text
   Wallpaper   - determine display data text onto pictures
   WidthMax    - determine maximum width for column width change
   WidthMin    - determine minimum width for column width change
   WordWrap    - determine display word wrapped data text

 Additional Properties accessible in TXTitleColumn:
   Button      - determine using column title as button
   Ellipsis    - determine ending long title text by "..."
   Header      - determine header text for any column
   Marker      - determine showing marker type
   VAlignment  - determine vertical justification for title text
   WordWrap    - determine display word wrapped title text

 Intended changes implemented in TXDBGrid:
   - For original names of class added 'X'
   - For types TDBGridOption and TDBGridOptions added 'X'
   - Corrected title width calculation for last visible column
   - Corrected setting and storing default column width
   - For dgTitleButtons event OnTitleClick is performed in button like style
   - For dgRightMoving column moving doesn't perform event OnTitleClick

 Additional remarks:
   - Character #13 or #10 should be used as lines separator sign
   - Character '|' should be used as header rows separator sign
   - As header rows separate sign, can be used character '|'
   - Headers for columns are merged while rows lines contain identical text
   - Multilines texts cannot be entered by Object Inspector, but it is possible
     to do this in your program or in mode "View as Text" ('Two'#13'lines')
   - Original TDBGrid component  with properties already set can be replaced by
     TXDBGrid  without losing  properties values.  To do this,  you must rename
     component type TDBGrid to TXDBGrid in *.pas file, enter mode "View as Text"
     and rename TDBGrid to TXDBGrid in *.dfm file. After these changes you MUST
     close all project files and reopen it. If your modules contain referencies
     to any class declared in DBGrids, you must added 'X' to these referencies.
     After all, you can remove module DBGrids from 'uses' line.
   - Similarly TXDBGrid can be replaced by TDBGrid too,  but all values entered
     into new properties will be lost. TXDBGrid can work like original TDBGrid,
     if you set new properties to:
     - additional Options to False
     - Button, Ellipsis, ShowBlob, WordWrap to False
     - LinesCount, LinesCountMin, TitleLinesCount to 1
     - LinesCountMax, WidthMin, WidthMax to -1
     - VAlignment to tvTopJustify
     - ScrollBars to ssBoth
     - MasterGrid to Nil
     - ShowEdit to True
     - Marker to tmNone


 Installation
 ============

 To use "X-Files Components" in Delphi, you should:
 1. Uninstall previous version of "X-Files Components" from "Component->Install
    Packages...->Design Packages", if exist.
 2. Use "File->Open..." menu item to open "XFiles40.dpk".
 3. Click "Install" in "Package - XFiles40.dpk" and then confirm "TXDBGrid"
    installation on the "Data Controls" page.
 4. If needed, add "...\XFiles40" directory to "Tools->Environment Options->
    Library->Library Path".


 Registering
 ===========

 Package "X-Files Components" is a Shareware product.  Trial version of package
 can be used only onto programmers computer.  If you find it useful and want to
 receive full version, you should register it.  You can receive registered ver-
 sion with or without components source code, depending on registration fee.

 Registered version of "X-Files Components"  can be used in your programs with-
 out additional fee. See "Register.txt" file for detailed description.

 All registered users will be notified via internet about new package versions.
 All updates for version 1.x will be send FREE via internet.


 Contact
 =======

 Contact me via internet,  if you have any questions, comments,  suggestions or
 orders from Poland:

 Author: Krzysztof Szyszka
 e-mail: [email protected]
 e-mail: [email protected]
 icq no. 13241014
 http://friko.onet.pl/ka/kszyszka/x-files.html


 DISCLAIMER OF WARRANTY
 ======================

 PRODUCT IS SUPPLIED "AS IS" WITHOUT WARRANTY OF ANY KIND. THE AUTHOR DISCLAIMS
 ALL WARRANTIES, EXPRESSED OR IMPLIED, INCLUDING, WITHOUT LIMITATION,  THE WAR-
 RANTIES OF MERCHANTABILITY AND OF FITNESS FOR ANY PURPOSE.  THE AUTHOR ASSUMES
 NO LIABILITY FOR DAMAGES,  DIRECT OR CONSEQUENTIAL,  WHICH MAY RESULT FROM THE
 USE OF THIS PRODUCT.