Single Translation Editor

All announcements, questions and issues related to the TsiLang Components Suite.
Post Reply
will
Posts: 3
Joined: Tue Oct 25, 2011 11:31 pm

Single Translation Editor

Post by will »

I have spent only spent a few days evaluating the TsiLang Component suite to see if it meets our needs.

Our application has 50+ forms and during runtime I want the user to be able to edit the translations themselves via a single translation editor (EditAll function?) for all translations.

It seems like the only way for us to implement this is to have a TsiLang object on every form. Right now, I have a datamodule with a TsiLang object and dispatcher. All other forms have a TsiLangLink with common container and dispatcher set to the datamodule objects, respectively.

1. Is this the best setup?

2. Where do I store common strings (ok, delete, cancel, tool bar, etc.)?

3. Can I display the common strings in the TsiLangLink translation editor?


thanks,

will
isiticov
Site Admin
Posts: 2383
Joined: Thu Nov 21, 2002 3:17 pm

Post by isiticov »

Hello,

Please take a look at http://www.tsilang.com/press/en/creatin ... users.html article. This is the way we recommend to create applications translated by end-users. It is quite easy and fast to implement.
We recommend to use built-in Run-Time translation Editor ONLY when you have a specific task and it is required to provide built-in translation editor which works on "form by form" way.
Instead we recommend to use external SIL/SIB file and distribute SIL Editor with your application to provide full-featured and powerfull editor for your end-users.

Now to you questions:
1. Yes, this is the best setup we think.
2. Common strings for dialog components and message boxes will be stored in TsiLang on datamodule which is CommonContainer for "linked" TsiLangs.
3. No, common strings displayed ONLY in the component which stores them.

Hope this helps.
Best regards,
Igor Siticov.
will
Posts: 3
Joined: Tue Oct 25, 2011 11:31 pm

Post by will »

That was very helpful. Thank you.

Follow up questions:
isiticov wrote: 2. Common strings for dialog components and message boxes will be stored in TsiLang on datamodule which is CommonContainer for "linked" TsiLangs.
1. How do I reference the common strings (from the datamodule) in all my forms? Do I need to manually go through the forms and reference the common string component (ie. TsiLang->CommonContainer->....) OR is there an automated way to locate all the common strings in every form?
isiticov wrote: Instead we recommend to use external SIL/SIB file and distribute SIL Editor with your application to provide full-featured and powerfull editor for your end-users.
2. I will go this route. Upon exporting to file, is there a way to remove some properties (ie. remove Captions, Collections, etc.) from the SIB/ SIL file without going through the file manually?


Thank you.
isiticov
Site Admin
Posts: 2383
Joined: Thu Nov 21, 2002 3:17 pm

Post by isiticov »

1. When you call any dialog box methods using TsiLang component for example:

Code: Select all

siLangLinked1_Form1.MessageDlg(....);
the component will automatically look for the common strings in CommonContainer component. So you don't need to worry about this.

2. If you need just to hide some properties in SIL Editor you can use menu Tools | Visible properties. If you need to create a SIL file with only particular properties included you can use in TsiLang Expert menu File | Save\Load translations | Save properties.
Best regards,
Igor Siticov.
Post Reply