TTbMultiLanguage Component Descripcion File
by Horacio Jamilis - 1998 - Industria Argentina
Version 1.0 for Delphi 3 - Freeware
Full source included.
Demo included.
===============================================================
After the English text comes the Spanish description.
El texto en Espaol esta atras del de Ingles.
===============================================================
TTbMultiLanguage is a component that let's the developer
make multilanguages programs independently of the user's country.
The user could change between languages while the program is
working. This component uses de BDE.

TTbMultiLanguage is component based on GLang by Jose Ma. Gias.
You could email him to sigecom@arrakis.es.
The GLang version on which I was based is 2.0 freeware.

[Copied from Glang.txt]
This component can be used, be distributed and be modified freelyf
for use particular or didactic, but not for commercial use. For
commercial use be put in touch with the author.
[End of copy]

His means if you want to use it you should ask him.

This component is freeware also. So if you want to use it in your
projects you could do it without any other permision. You could use
it or change it as much as you wish. If you modify the component
please send me a copy.

If you like this component PLEASE WRITE TO ME to
jhoracio@cvtci.com.ar

================================================================
How to use it?
================================================================
Well. This is really simple.
1) Put one (and only one) TTbMultiLanguage component in each form
   of your project. inmediately after this you must set the TableName
   property to point to the database file which will contain the
   translated strings. The TTbMultiLanguage components of the diferent
   forms could (and should) point to the same database file. This is
   not do automatically. You must do it by hand on each form of your
   project!
2) After inserting the component in each form you must translate the
   form to the desired language. Before changing the text you must
   set the Language property on TTbMultiLanguage component of the
   form to that language. The Language property is set with two letters.
   For example you should use 'SP' for spanish language or 'EN'
   for english. So, before you translate your form to english, you must
   set the Language property to 'EN'. Before translate your form to
   spanish, you must set the Language property to 'SP'. After
   translate the form you must set the property ReadNow to True, and
   answer 'yes' when asked. This will save your translations to the
   database.
3) To change the language at design time you must set the Language
   property to the desired language in the form you want to be
   translated to the language identificacion string (SP for spanish or
   EN for english).
4) Before compiling you could choose the language that the program
   will use when starts. To do this you should select the desired 
   language in the Language property of the TTbMultiLanguage component
   of the MAIN FORM.
5) At run time, to change the language to the desired language you
   must change the Language property of the TTbMultiLanguage component
   of the MAIN FORM.
Thats all!

Remember:
1) You could save the translated strings of your forms all the times
   you want. Each time you save (setting ReadNow to True in the object
   inspector) you override the strings saved before (but only changes
   the selected language, and no others).
2) The first time you save (with ReadNow) the database file will be
   created if das not exists.
3) Is recomendable to set the same TableName for all the forms in
   the project, and diferent TableName on diferent projects.

Well. No more.

If you have any sugestion, please readme to
jhoracio@cvtci.com.ar

=================================================================
Things to improve:
  - Save all the information in the form (not in a database)
    I don't know how to save information in the form stream.
    If somebody knows and have some time, please teach me.

=================================================================
TTbMultiLanguage es un componente que le permitira al programador
hacer programas multilenguajes independientemente del pais del usuario.
El usuario podr cambiar de lenguaje mientras el programa se est
ejecutando. Este componente utiliza el BDE.

TTbMultiLanguage es un component basado en GLang de Jose Ma. Gias.
Usted le puede escribir a sigecom@arrakis.es.
La version de GLang en que me bas es la 2.0 freeware.

[Copiado de Glang.txt]
Este component se puede usar, ser distribuido y modificado gratis
para fines particulares o domesticos, pero no para uso comercial.
Para uso compercial pongase en contacto con el autor.
[Fin de la copia]

Significa que si usted quiere usarlo le deberia preguntar a el.

Este componente tambien es gratuito. As que si lo quiere usar en sus
proyectos lo puede hacer sin ninguna otra autorizacin. Lo puede
Utilizar o modificar tanto como desee. Si modifica el componente, por
favor, envieme una copia.

Si le gusta este componente POR FAVOR ESCRIBAME a
jhoracio@cvtci.com.ar

================================================================
Como usarlo?
================================================================
Bueno. Es muy simple.
1) Ponga un component TTbMultiLanguage (y solo uno) en cada forma
   de su proyecto. Inmediatamente despues de esto debe establecer
   la propiedad TableName (nombre de la tabla) para apuntar al archivo
   de base de datos que contendr los textos traducidos. Los
   componentes TTbMultiLanguage de las diferentes formas pueden
   (y deberan) apuntar al mismo archivo de base de datos.
   Esto no se hace automaticamente. Debe hacerlo a mano en cada
   forma de su proyecto!
2) Despues de insertar el componente en cada forma debe traducir las
   ventanas al lenguaje deseado. Antes de cambiar los textos debe
   establecer la propiedad Language (lenguaje) del componente
   TTbMultiLanguage de la ventana al lenguaje. La propiedad Language
   se establece con dos letras. Por ejemplo use 'SP' para espaol o
   'EN' para ingles. Entonces, antes de traducir una ventana al ingles,
   usted debe establecer la propiedad Language con 'EN'. Antes de
   traducir su forma al espaol debe establecer la propiedad Language
   con 'SP'. Despues de traducir la forma, debe establecer la propiedad
   ReadNow (leer ahora) en True, y responder 'yes' cuando se le pida.
   Esto grabara sus traducciones a la base de datos.
3) Para cambiar de lenguaje en tiempo de desarrollo debe establecer
   la propiedad Language en la ventana con la cadena de identificacion
   del lenguaje deseado (SP para espaol o ES para ingles).
4) Antes de compilar su programa debe elegir el lenguaje que utilizar
   el programa al comenzar. Para ello debe seleccionar el lenguaje 
   deseado en la propiedad Language del componente TTbMultiLanguage
   de la ventana principal del programa (MAINFORM).
5) En tiempo de ejecucin, para cambiar de lenguaje debe establecer la
   propiedad Language de la ventana principal (MAINFORM) al lenguaje
   deseado.
Es todo!

Recuerde:
1) Puede guardar los textos traducidos de sus ventanas todas las veces
   que quiera. Cada vez que guarde (estableciendo ReadNow en True en
   el object inspector -inspector de objectos) usted sobreescribir
   los textos guardados anteriormente (pero afectando solamente al
   lenguaje establecido, y no otro).
2) La primera vez que guarde sus textos (con ReadNow) el archivo de
   base de datos ser creado si an no existe.
3) Es recomendable establecer la propiedad TableName de las diferentes
   ventanas de un proyecto apuntando al mismo archivo de base de datos
   y utilizar diferentes archivos de bases de datos para diferentes
   proyectos.

Bien. Nada ms.

Si tiene alguna sugerencia, por favor, escribame a
jhoracio@cvtci.com.ar

=================================================================
Cosas para mejorar:
  - Guardar toda la informacin en la ventana (no en una base de datos)
    No se como se graba informacion en el stream del form.
    Si alguien sabe y tiene tiempo, por favor, enseeme.
