On Fri, Sep 21, 2001 at 03:46:29PM +0200, Nerijus Baliunas wrote:
On Wed, 19 Sep 2001 17:22:45 +0100 Huw D M Davies h.davies1@physics.ox.ac.uk wrote:
HDMD> Huw D M Davies hdavies@codeweavers.com HDMD> Use the font charset to obtain a codepage for A->W conversion in the HDMD> text functions.
HDMD> Index: objects/text.c
HDMD> + case VISCII_CHARSET: HDMD> + case TCVN_CHARSET: HDMD> + case KOI8_CHARSET: HDMD> + case ISO3_CHARSET: HDMD> + case ISO4_CHARSET: HDMD> + case ISO10_CHARSET: HDMD> + case CELTIC_CHARSET: HDMD> + /* FIXME: These have no place here, but becasue x11drv HDMD> + enumerates fonts with these (made up) charsets some apps HDMD> + might use them and then the FIXME below would become HDMD> + annoying. Now we could pick the intended codepage for HDMD> + each of these, but since it's broken anyway we'll just HDMD> + use CP_ACP and hope it'll go away... HDMD> + */ HDMD> + cp = CP_ACP; HDMD> + break;
Why these are here? Because they do not have windows equivalents? If so, at least KOI8 shouldn't be there (IMHO).
AFAIK they're not Windows charsets, somebody has made up some numbers and added them to wingdi.h . The reason they're here at all is because the x11drv enumerates fonts with these charsets and I'm claiming that this is a bug, since no application can be expected to know that these numbers mean.
Now there is a RUSSIAN_CHARSET and this gets handled by the TranslateCharsetInfo before the switch.
Huw.