TAlLanguagesStore
 TAlLanguager

 ************
 (C) 1999 Aldo Ghigliano [email protected] [email protected]
          Portions (C) RxLib, AO ROSNO, Master-Bank
 This is freeware, and "As Is", but:
 - if you modify this unit, you have to mail to me all modifications,
   and to obtain my acknowledgment before to distribute them;
 - gift (may be 5$, enclose it in a sheet, then in an envelope, and
   send to Ghigliano Aldo - Viale Riviera 82 - 17027 Pietra Ligure
   - Italy) are well accepted;
 WARNING
 Aldo Ghigliano is not responsable of anything happens using this unit.
 Use it at your own risk
 1.01

 ************
 PURPOSE:
     Localization (language translation) of forms for large projects
   by automatically using conditional compiler directives (ifdef..endif).
 PLATFORMS:
     Delphi3. Maybe 4.
 NEEDS:
     Rx Lib of MasterBank. You can download it from DSP.
 CREDITS:
     I have the idea after I have see TVCLlocalizer by
   Markus Stephany mailto:[email protected]
 INSTALLATION:
     Do "Component >Install Component" of uAlLangs.pas, and insert in
   the package you wants, as usual.
 USAGE:
     To localize your project:
     1)Put an AlLanguagesStore to mainform of your project, and set
   LanguagesPasUnit='c:\yourProjectPath\YourLocFormsUnit.pas'.
   This file don't need to exists.
   Set also the DefaultLang (eng is the predefined), and put a list
   of the defines you will use in conditional compilation in
   LanguagesDefines property.
     2)Put an AlLanguager in any forms of your project.
     3)Add in the OnCreate event handler of every form, the code
   you can see in the demo.
     4)Last, link these AlLanguager to AlLanguagesStore.
     If you change something in a form, simply double-click on the
   AlLanguager to update strings in the default language.
     To translate, open 'c:\yourProjectPath\YourLocFormsUnit.pas',
   and simply edit.
     See directory demo for a simple example on how to set project
   options to conditional compile the project in the language you
   want. In the demo, projIta.dpr runs italian, projEng.dpr runs
   english. They share same units.
   Language is defined at compilation, thus:
     -executable size is lower
     -you can localize also other program messages by "ifdef"s
      (but use another '.pas' unit to avoid problems)
     -only one language is available at runtime
     Note you can use many AlLanguagesStore as you want; this is useful
   if for example your program has different versions (i.e. "Standard"
   edition "Educational",...) that shares some units, and some others not.

NOTE
- the unit uAlLangs is not planned to be self-localized... to avoid
  confusion :)
- let me know your suggestions / bug reports
Enjoy.
Al
([email protected])

NEW IN 1.01 FROM 1.0
- little enhancement. now writes components properties in .pas
  localization files in lowercase.
  (sorry, a little incompatible with 1.0, but more affordable!)