TMULTLANG PACKAGE FOR DELPHI v1.12
(C) 1995 Patrik Wang
							     24 October 1995
DESCRIPTION
Forget the Windows resource files (.RES, .RC ...) this component will make you
internationalized without writing any additional code. Just drop it on your
form and compile, finished.
This component will change the properties of controls on forms in Delphi, at 
both design and runtime. Targeting multi language support, but it can be used
for many other things. This component will alter almost all properties that the
object inspector can edit. You can choose if you want your languages to
be saved in the form or a file. You can use the same file for all your form 
configurations within the same application. It works in a multiuser 
environment and it is aware of other forms. You can share languages 
between different forms and manipulate those even in the runtime mode.


INSTALLATION
If you already have installed a previous version you will have to uninstall
that one first. Please advice the old readme.txt file in the previous version.

1. First unpack MULTLANG.ZIP in an own directory (you have probably already 
done that by reading this) or if you have the diskette, run the setup program
and do as directed.

2. Move all *.HLP files to any directory in your search path, preferable the 
DELPHI\BIN directory where other Delphi helpfiles resides.

3. Then install the MULTREG.PAS file via the 'Install Component' menu option 
in Delphi. If any problems occurs, you can get your old library back from the
backup file *.BAK that Delphi automatically makes. (for more instructions see 
page 69 in the Users Guide).

4. Install the MULTLANG.KWF file with the Helpfile installer program 
(HELPINST.EXE) supplied by Delphi. This enables you to press F1 in the Object
Inspector to invoke help on that property. (Not necessary if you just want to
have a quick look at the component).

!!!!! NOTE !!!!!!
I recommend to increase the stack size from the standard 16384 bytes to at
least 32768 in your large projects. If you plan to edit languages at run-time
you will have to increase the stack size, otherwise it may crash your computer
depending on how much stack memory your application uses. However, since
I have concentrated on making the component as little memory consuming as
possible, I cannot change the Delphi Pascal object structures with the standard
units that declares lot of global variables. The stacksize can be changed in
the 'Options-Project' menu under the tab 'Linker' and also by using compiler
directive {$M 32786 8192} in your source.

Thats it !!!!
Look at the Multi Lingual component palette in Delphi. Why not start with the
Step-By-Step right away, the quick one takes only 5 min. Check the helpfile for
more details. 


FILES
These files is included in the TMultLang package.
ADDPROP.DCU   Compiled unit of the Add properties dialog.
ADDPROP.DFM   Add properties dialog.
COPYFROM.DCU  Compiled unit of the Copy From dialog.
COPYFROM.DFM  Copy From dialog.
LANGEDIT.DCU  Compiled unit of the Language Property Editor dialog.
LANGEDIT.DFM  Language Property Editor dialog.
LANGUTIL.DCU  Compiled unit for language utilities functions.
MBUTTONS.DCU  Multi language support component for Delphi standard buttons.
MDIALOGS.DCU  The common dialogs multi language support.
MULABOUT.DCU  Compiled unit for the About dialog.
MULABOUT.DFM  About dialog.
MULTLANG.DCU  Compiled unit for the TMultLang component (TMultLang component).
MULTLANG.HLP  TMultLang helpfile.
MULTLANG.KWF  TMultlang keyword index for Delphi Help system.
MULTREG.DCR   Design-time bitmaps for the component palette.
MULTREG.PAS   The component palette installation file.
ORDER.EXE     Entry Form for order to print or to send as E-Mail.
README.TXT    Instructions/registrations text file (This file).
REGFORM.DCU   Compiled unit of the key registration form.
REGFORM.DFM   Key registration form.

TMULTLANG DEPENDENCIES
The units below must be available in the library search path when rebuilding
the library. All used units are standard and is included in the Delphi package.
I have tried to keep the dependent units to a minimum so that the overall size
of your EXE will not be too big. You will probably need almost all units in
your own project so it does not matter that it is used by this component.
SysUtils, WinTypes, WinProcs, Messages, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Menus, FileCtrl, DsgnIntf, TypInfo, OutLine, Tabs, ShellAPI,
LibConst, LibHelp, ClipBrd, ExtCtrls, Buttons, Grids, TabNotBk, Mask, INIFiles;
The units not included in the Delphi package is:
AddProp, CopyFrom, LangEdit, MulAbout, RegForm;
You dont need to include any of these in the USES clause, the component is
already compiled. If you start with an empty project this component will add
about 200K because of the dependencies, however the larger your project grows
the less the component adds. If you have an EXE file for about 400K, by adding
this component it may only grow to 515K because of the re-use of classes in
Object pascal.

UN-INSTALL
1. First remove the component from the component palette in Delphi via the 
'Install Component' menu options in Delphi.

2. Re-generate the keyword index for helpfiles in the Helpfile installer
program (HELPINST.EXE) without the MULTLANG.KWF file.

3. Just delete all files in the TMultLang package in the directory you choosed
when it was installed. Dont forget to delete the helpfiles (*.HLP) also,
which is in the DELPHI\BIN directory if you installed it according to the
installation instructions.


FEATURES
* Specialized for multi language support in Delphi.
* Double byte language support
* Edit almost all Component and Control properties
* TStrings items or TFont objects editable.
* Multi-user shared resource file(s).
* 16-bit Common dialogs support (On the fly, without any DLL or RES files)
* Delphi standard Message dialogs support (ShowMessage, MessageDlg, Input ...)
* Write you own run-time property editor via INI files
* Date, Time, Currency and Number format translations
* Show languages on selectable controls (Menus, DropDown, RadioGroup etc)
* Save resources in forms (design time) or files.
* Translate the component it self (circular component referenses)
* Aware of other forms within the same application.
* Properties browsable, just point and click.
* Share languages/properties/values between several forms.
* One run- and design-time editable resource file for one or more forms.
* An extensive help integrated with Delphi.
* Safe synconisation when changing names, removing or inserting components.
* Associate icons (stretchable) to each configuration.
* An easy property editor which is integrated in the Delphi environment.
* Filter to restrict special configurations (usable in multi user environm.)


SHAREWARE
This version of TMultLang is released as shareware and means in this case that 
you are allowed a trial period for testing. The testing period expires when 
you start using it in projects to develop programs or after 20 days from the 
installation time. After that period you have to remove it and must not use it
anymore, or you can register it for continuing use. You are not allowed to 
make a new trial period by reinstalling the component again, unless it is a 
later version.
I do not take any responsibility of misuse or any corrupt files caused by this 
component and especially not your form files (*.DFM). It is your responsibility
to always keep a backup copy of necessary files. For more info see page 139
'Creating a backup of an entire project' in the Delphi User's Guide.
You are not allowed to modify any files associated with this component. 
In the Shareware version, you are allowed to distribute this component with 
all its files anytime. There is no limited functions in the Shareware version.
NOTE This component is protected by a date checking mechanism and checksum 
codes for messages. After the trial period you can loose all languages if you
save anything after the warning messages, and I recommend you to register 
before this expiry date. You can check how many days left in the 'About' 
dialog. The checking mechanism is done in both design and run time.
This version is released based on trust, so I expect you to follow the rules.
By using this component you accept the terms stated in this text file and the
text shown in the 'About' dialog.

DISCLAIMER
Users of TMultLang package must accept this disclaimer of warranty:
"The TMultLang package is supplied as is.  The author disclaims all
warranties, expressed or implied, including, without limitation,
the warranties of merchantability and of fitness for any purpose.
The author assumes no liability for damages, direct or conse-
quential, which may result from the use of the TMultLang package."
Any reproduction of material in this package is copyrighted by law.
The author reserves the right to change any text in this file, the 
helpfile and in the about dialog at anytime.


REGISTER
All registered users will the first 3 month get free support. Support will be
given on the address below. After the first 3 month the registered users will
still get free support but in a reasonable amount. However, support will also
be given to unregistered users with the trial period of the Shareware version.
If you have access to Internet, please take a look at URL site 
'http://mailhost.net/~delphi' for late braking news and updates. Do you use 
MAPI, MSN or Netscape I suggest you to take a look in the about dialog, that
can be accessed from the Object Inspector.
You will be able to upgrade to later versions and get free patches when
available. You will also get rid of all the annoying messages and the date
checking mechanism for form and file writing.
Support will be given via E-Mail or Fax on the address given below. The
registration methods below entitles you to develop and distribute royalty
free programs which contains this component package but NOT THE HELPFILES. 
If it is used by more than one person at a time, you must register sufficient 
licenses.
Each registration allows one person to use the component at a time.
Site registrations with more than 3 users are available with discounts. Please
send me an E-mail requesting application forms for site licensing.

To register, select one method:
* Send a check that can be drawn from an Australian bank, to the author with
  the name and amount shown below minus 15%.
* Register via Compuserve, go to the SWREG forum and select Register Shareware.
  Search for TMultLang component and select the version you would like to
  order.
* Send credit card details exactly according to the ORDER.EXE form via mail,
  E-Mail or Fax. Any credit card order will be in Australian dollar according
  to the currency conversion in the ORDER.EXE program (valid to 1996-01-01).
  (AUS$ is calculated at a US$ rate of .73)
  Credit card payments will be drawn by InterBiz Forum in Australia.

If you order the source code it will be sent by mail and includes the
postage and handling charges in the amount shown below. You will NOT be
entitled to distribute the source code at anytime and can only be used as
an information source to understand the structure or to correct/adjust code
for specific purposes in your application.

When registration is approved you will receive a key to register the TMultLang 
package in the Order tab in the About dialog from the Object Inspector.
This key is a one time key and you have to register the component ASAP upon
receipt.

All registrations will be approved when payment is done, the key will then be
sent as soon as possible, please allow up to 48 working hours for key delivery
on an e-mail address.

The table below shows current prices valid to 1996-01-01:

 NAME     PRICE   DESCRIPTION
 Regular  175 US$ TMultLang Component 1.1x *
 Source	  500 US$ TMultLang Component 1.1x and source code. *, **
 Upgrade  374 US$ TMultLang Component 1.1x -> 1.1x source. *, **
 32bit-U  79 US$  TMultLang Component 1.1x -> 32 bit version ***

*   All users that register before the release of the 32 bit MultLang component
    will get the 32-bit version for free when available (see below for more
    info).
**  The source will include both 16 and 32 bit version when released.
*** Not available yet.

All upgrades must include your registration key for the component.

I reserve the rights for price changes. The price may vary on different 
services because of surcharge from the service provider.

HISTORY
1.00 Initial release.
1.01 Updated instructions, was never really released to the public.
1.10 Added new features and corrected two bugs.
     * A new property AdoptOn
     * The help system is totaly revised
     * Two step by step tutorials
     * Added Key words for Delphi
     * Grid style of values in the Property Editor
     * Copy property values from other forms.
     * File system totally revised (Also fixed the bug with NTFS partitions)
     * Less resource intence by reuse of string values
     * Look up table for soundex search of other forms values
     * Fixed a bug when editing Font names in the Property Editor
     * New Installation and un-install instructions in Help file
     * Many new topics added to help file
     * Expand All buttons added
     * Added a new property (FLookupText) for remembering the last state
     * Added a new property (FLastValue) for remembering the last sel. language
     * Removed the MASTAPP example which did not really show how it works
     * Removed the Simple and Advanced feature in the Property editor
     * Changed the display from date to Nr of days left in About (Shareware)
     * New registration rules and guidelines
     * It is now possible to have many TMultLang components on the same form
1.11 Bug fixes and new features
     * Setting caFree on child windows did not have any effect due to a bug in
       the subclassing of the window. Removed the unneccesary subclassing.
     * Translate method did not effect other forms, added TranslateApp variable
     * Deleting translated components at design-time could sometime give a GPF
     * The 'Copy From' selected language did not work as it should
     * Added the GetTranslation method
     * Helpfile updates
     * Added support for self translations, Localized language names
     * Updated prices, README.TXT and ORDER.EXE
1.12 Many new features and bug fixes
     * Calling Edit method several times could sometime cause a GPF
     * When translating fails it could give a GPF when TranslateApp was true
     * Bug in ORDER.EXE file occuring on Windows 3.1 'File not found'
     * External file handling routine bug when less memory available
     * Setting LanguageFile property to a language file at run-time caused GPF
     * Added support for System menu translation
     * All 16-bit Common dialog support via MDialogs.DCU component
     * Added support for translation of Number, Date, Time and Currency format
     * Localized Design-time interface, add your favorite language CTRL-ALT-E
     * Standard Message dialog buttons support via MButtons.DCU component
     * Property Recovery, put object back on form to get back translations
     * Import/Export of textfiles. Creates/Edits values. INI-file format
     * Userdefined strings, GetString and SetString methods
     * Copy from made unneccesary duplicates of properties when TStrings
     * Several updates for the main component regarding memory allocation
     * Helpfile updates


32-BIT VERSION
The 32-bit component will be available short after the release of Delphi 32 bit
version. The 32 bit version will be fully compatible with 1.xx 16 bit versions
of the multi language component. This means you can use the 16-bit component
and later switch to the 32 bit component and then recompile, without any
additional coding.


AUTHOR
If you find any bug, contact me and I will try to resolve it ASAP.
If you have any suggestions or if you think I've missed something, I will 
happily implement that as an additional feature in future versions.

I hope you will find my component useful and easy to use. I am releasing it
based on trust (Shareware) and even though you dont find it useful I would
like to have your comments, bad or good. It is difficult developing components
without any suggestions, directions and the most important, knowing what people
really need.

Author:
	Patrik Wang
	1/8 Tusculum St.
	Potts Point, N.S.W. 2011, Sydney
	Australia

	E-Mail: PWang@MSN.COM
	Fax: +61 2 3269032

