/[emacs]/emacs/src/w32term.c
ViewVC logotype

Diff of /emacs/src/w32term.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.193 by jasonr, Sun Jun 1 21:38:37 2003 UTC revision 1.193.4.1 by handa, Mon Sep 8 12:48:15 2003 UTC
# Line 996  w32_encode_char (c, char2b, font_info, t Line 996  w32_encode_char (c, char2b, font_info, t
996       struct font_info *font_info;       struct font_info *font_info;
997       int * two_byte_p;       int * two_byte_p;
998  {  {
999    int charset = CHAR_CHARSET (c);    struct charset *charset = CHAR_CHARSET (c);
1000    int codepage;    int codepage;
1001    int unicode_p = 0;    int unicode_p = 0;
1002    int internal_two_byte_p = 0;    int internal_two_byte_p = 0;
# Line 1015  w32_encode_char (c, char2b, font_info, t Line 1015  w32_encode_char (c, char2b, font_info, t
1015    
1016        if (CHARSET_DIMENSION (charset) == 1)        if (CHARSET_DIMENSION (charset) == 1)
1017          {          {
1018            ccl->reg[0] = charset;            ccl->reg[0] = CHARSET_ID (charset);
1019            ccl->reg[1] = XCHAR2B_BYTE2 (char2b);            ccl->reg[1] = XCHAR2B_BYTE2 (char2b);
1020            ccl->reg[2] = -1;            ccl->reg[2] = -1;
1021          }          }
1022        else        else
1023          {          {
1024            ccl->reg[0] = charset;            ccl->reg[0] = CHARSET_ID (charset);
1025            ccl->reg[1] = XCHAR2B_BYTE1 (char2b);            ccl->reg[1] = XCHAR2B_BYTE1 (char2b);
1026            ccl->reg[2] = XCHAR2B_BYTE2 (char2b);            ccl->reg[2] = XCHAR2B_BYTE2 (char2b);
1027          }          }
1028    
1029        ccl_driver (ccl, NULL, NULL, 0, 0, NULL);        ccl_driver (ccl, NULL, NULL, 0, 0, Qnil);
1030    
1031        /* We assume that MSBs are appropriately set/reset by CCL        /* We assume that MSBs are appropriately set/reset by CCL
1032           program.  */           program.  */
# Line 1050  w32_encode_char (c, char2b, font_info, t Line 1050  w32_encode_char (c, char2b, font_info, t
1050          STORE_XCHAR2B (char2b, XCHAR2B_BYTE1 (char2b), XCHAR2B_BYTE2 (char2b) | 0x80);          STORE_XCHAR2B (char2b, XCHAR2B_BYTE1 (char2b), XCHAR2B_BYTE2 (char2b) | 0x80);
1051        else if (enc == 4)        else if (enc == 4)
1052          {          {
1053            int sjis1, sjis2;            int code = (int) char2b;
1054    
1055            ENCODE_SJIS (XCHAR2B_BYTE1 (char2b), XCHAR2B_BYTE2 (char2b),            JIS_TO_SJIS (code);
1056                         sjis1, sjis2);            STORE_XCHAR2B (char2b, (code >> 8), (code & 0xFF));
           STORE_XCHAR2B (char2b, sjis1, sjis2);  
1057          }          }
1058      }      }
1059    codepage = font_info->codepage;    codepage = font_info->codepage;
# Line 1062  w32_encode_char (c, char2b, font_info, t Line 1061  w32_encode_char (c, char2b, font_info, t
1061    /* If charset is not ASCII or Latin-1, may need to move it into    /* If charset is not ASCII or Latin-1, may need to move it into
1062       Unicode space.  */       Unicode space.  */
1063    if ( font && !font->bdf && w32_use_unicode_for_codepage (codepage)    if ( font && !font->bdf && w32_use_unicode_for_codepage (codepage)
1064         && charset != CHARSET_ASCII && charset != charset_latin_iso8859_1         && c >= 0x100)
        && charset != CHARSET_8_BIT_CONTROL && charset != CHARSET_8_BIT_GRAPHIC)  
1065      {      {
1066        char temp[3];        char temp[3];
1067        temp[0] = XCHAR2B_BYTE1 (char2b);        temp[0] = XCHAR2B_BYTE1 (char2b);
# Line 5231  x_new_font (f, fontname) Line 5229  x_new_font (f, fontname)
5229       register char *fontname;       register char *fontname;
5230  {  {
5231    struct font_info *fontp    struct font_info *fontp
5232      = FS_LOAD_FONT (f, 0, fontname, -1);      = FS_LOAD_FONT (f, fontname);
5233    
5234    if (!fontp)    if (!fontp)
5235      return Qnil;      return Qnil;

Legend:
Removed from v.1.193  
changed lines
  Added in v.1.193.4.1

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26