> What level of character support do you require from FLTK in the future?
> 1. plain ASCII only, so UTF-8 support needed
> 2. ASCII plus Western accented characters
> 3. simple left-to-right character sets (Greek, Cyrillic...)
> 4. simple right-to-left character sets (Arabic, Hebrew...)
> 5. complex character sets (Chinese, Japanese, Korean...)

I use fltk 1.3 to display Chinese and other unicode symbols, it works just fine.

I don't think the issue is display, since once you can display some
unicode characters you can display them all.  The issue is input.  CJK
require complicated IMEs that plug in at the OS level (for windows and
OS X at least, I'm not sure what X does).

I know that for Arabic you have to pick combining form, and for many
Indian systems you need to pick combining forms and vowel symbols, so
they also require non-trivial IME support.  I guess there is also
character composition that happens at render time, but since the OS X
version of fltk 1.3 just calls the OS renderer, all that stuff is
taken care of.

So I believe the only plausible way to support input is to hook into
the OS level IME.  Ideally there would be something as simple as an
OS-specific "get_glyph" function, but of course this is complicated by
the fact that the IMEs want to display candidate characters.  Also in
the Windows and OS X worlds, they expect you to be using the OS
default widget library and may not bother to provide lower level
hooks.  So I believe the most practical solution is likely to be using
the native text entry widget in the same way we use the native file
chooser.  For X, I imagine there are probably a few libraries to
choose from, so you just pick the "main" one and then integrate that.

Since this is a complicated and possibly contentious kind of change,
and maybe not even required by the active developers quite yet, I
suggest to forget about input for 1.3.  Make sure all internal
functions expect utf8 strings first, as Matthias suggests.

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

Reply via email to