I am using small code (200 lines), modified from

  http://number-none.com/blow/code/mo_file/index.html

which is gettext compatible so standard .mo files (or memory areas) can be 
used. The advantage is that these .mo files are hashed with fast lookup and you 
can
use all gettext tools to extract strings and generate .po and .mo files, use 
translation editors (like poedit) etc.

I would not put i18n as a part of the FLTK itself but fltk uses various strings 
for messages, stock-widget labels etc.
Maybe we can add something like "register i18n function" which fltk would then 
be used for labels like "OK", "Cancel" etc.
Now you can mostly set these messages explicitly, but if not, fltk can use this 
registered function for implicit translations
by setting/registering  this function eg by

  Fl::i18n(const char * (*)(const char *));

The function would default at the beginning to

  const char * fl_default_i18n(const char * s){return s;}

Note that Fl::i18n() can be overloaded to register different function schemes 
other than gettext's

  const char * foo(const char *);

Fluid is allready i18n aware, although I am not very happy that "static" 
translation of menu labels was removed from fluid in fltk-1.3
(see my rant at STR #2861 and also fluid patch which fixes that, allowing both 
static and dynamic translation of menu labels)

R.

On 28/01/2013 21:52, Manolo Gouy wrote:
> I would like to get input from developers about whether a new class
> to support internationalization of FLTK apps could be useful.
> 
> See:http://www.fltk.org/str.php?L2929
> 

_______________________________________________
fltk-dev mailing list
fltk-dev@easysw.com
http://lists.easysw.com/mailman/listinfo/fltk-dev

Reply via email to