Hello, I'm working now with a micro$oft employer Glen Fernandes (in our free time afaik ;) to improve FLTK's support for localized text on old windows - like windows 98.
FLTK 2 program works on windows XP, linux etc, but on windows 98 the strings with localized characters seem to be displayed incorrectly. We aim to fix this. We wellcome any feedback: will that be helpfull? Any technical details or tips? Page detailing this problem (in progress!) http://limcore.com/research/devel/gui_toolkits/1/fltk2_utf8_windows/ (one of images shows the problem) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ My program uses std::string (or const char *) to store UTF-8 text. This works fine (tested: linux, windows xp, wine/xp, even on wine/98 - Wine in windows 98 mode, afair, but that is just by the way). It does NOT work with real windows 98 - the polish characters for example "Ł" (U+0141 LATIN CAPITAL LETTER L WITH STROKE) are displayed as invalid character. The unicode is decoded (sine unicode glyph Ł produces one invalid character, and not 2 or 3). ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Some technical hints follow: http://www.microsoft.com/typography/unicode/cs.htm FLTK detects windows98 and lack of true unicode (has_unicode function. it is hidden in src/win32/* but it can be accessed from client apps - see my example). [14:01] <xystic> LimCore: Yes. The MSDN documentation should indicate somewhere that to all MBCS (i.e. *A ) functions, that strings can contain single-byte characters, double-byte characters, or both. [14:05] <xystic> LimCore: There is a leadbyte and a trailbyte range which depends on the code page. [14:02] <LimCore> so, is it an extension to DBCD in which ASCII chars are used as ascii, and others are interpreted as 16 bit values of DBCS (with added code-page marking byte) _______________________________________________ fltk-dev mailing list [email protected] http://lists.easysw.com/mailman/listinfo/fltk-dev
