[Lazarus] Translations / Localizations for controls at design time

Mattias Gaertner nc-gaertnma at netcologne.de
Wed Aug 1 00:15:13 CEST 2012


On Wed, 01 Aug 2012 01:41:43 +0400
Maxim Ganetsky <ganmax at narod.ru> wrote:

> 31.07.2012 22:23, Krzysztof пишет:
> > BTW: Someone of Lazarus Team reading sometimes this news group? I mean
> > should I post this proposition in bug tracker (mantis?). Exactly this
> > solution:
> >
> >> I know there is many ways to do this in runtime (in my case, in my
> >> framework I have TBaseForm which has virtual method TranslateControls,
> >> descendant forms override it and do translation on local controls) but
> >> referring to the idea of RAD, in future it could be works in few
> >> simple "click" steps:
> >> 1. Drop TLabel on form
> >> 2. Go to object inspector, execute Caption editor
> >> 3. If you don't want translation then write raw text otherwise choise ID (some listbox) from associated translation file

Does this mean you first design and debug the form, then translate it
and then edit the whole form again to connect the translations?

> >> 4. Click OK
> >>
> >> That exactly Eclipse works. It would be nice to see it future in Lazarus
> >
> > I really like this solution of Eclipse. I don't know how Delphi > 2010
> > localization working (I had no chance to test it), but what I read, it
> > has some built in localization manager.
> 
> I don't really understand what you want to achieve with this.
> 
> Lazarus already has automatic form translation facilities. See Project 
> Options -> i18n. Your .po files will be updated automatically when you 
> will change your forms.

That's true.
You don't even have to create and set translation IDs.

I see one advantage of the IDs in captions: Translating parts of
TStrings would be easier.

What is missing are some IDE plugins to make translations easier. For
example a tool that shows the translator where a resourcestring is used
in the application.
And a page with some hints how to deploy the .po
files on the various platforms.

Mattias





More information about the Lazarus mailing list