View Issue Details

IDProjectCategoryView StatusLast Update
0002523MMW v4Otherpublic2006-08-03 12:21
Reporterjiri Assigned To 
PriorityurgentSeverityminorReproducibilityalways
Status resolvedResolutionfixed 
Product Version3.0 
Fixed in Version3.0 
Summary0002523: Remove usage of Delphi resourcestrings
DescriptionCurrently we use resourcestring identifier for many messages in MM. However, strings defined this way are internally converted as 8-bit ANSI strings and so localization for languages that aren't set as default on PC doesn't work well (e.g. Greek language on Czech machine).

We should always use gnugettext's function _(), i.e. instead of current:

resourcestring
  myString = 'test';

MessageBox( myString);


We should use:

MessageBox( _('test'));
TagsNo tags attached.
Fixed in build1002

Activities

Ludek

2006-06-27 17:38

developer   ~0007390

Last edited: 2006-06-27 17:40

Resolved by using

var
  myString : WideString;

myString := _('test');

MessageBox( myString);

See revision 1265.

jiri

2006-07-02 20:01

administrator   ~0007400

Only strings in ResStrings.pas very modified, some other units also contains resourcestrings.

Also, it would be nice to move at least some constants from ResStrings.pas to the places they are used - particularly strings that are used only in one place. This way it won't be necessary to translate all these strings on MM startup.

Ludek

2006-07-12 09:32

developer   ~0007454

Last edited: 2006-07-12 15:36

Revision 1299: Removed usage of Delphi resourcestrings (deleted CommonResStrings.pas moved to ResStrings.pas commited in revision 1298)

Revision 1301: Removed some strings from ResStrings.pas to its location in order to not translate it on start-up, but once it is needed.

Revision 1304: Fixed Msg dialogs' and buttons' captions.

jiri

2006-08-01 12:00

administrator   ~0007642

There are still some string unnecessarily translated on startup in ResStrings.pas, mainly strings like RS_NeedGoldForAutoList, burning strings or e.g. Freedb strings. I think it's worth moving them, because of increased performance for almost no work involved.

Ludek

2006-08-03 12:13

developer   ~0007652

Ok, most of strings was moved to its place. Only the most common strings like 'Track#' are left.

Now, the GetStringsTranslations() procedure takes 0.002 seconds. (It is two milliseconds on MM start up)

Is it enough? :-)