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

Diff of /emacs/src/xterm.c

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

revision 1.650.4.25 by monnier, Mon Apr 1 17:24:13 2002 UTC revision 1.650.4.26 by eliz, Fri May 31 16:36:31 2002 UTC
# Line 1152  static struct face *x_get_glyph_face_and Line 1152  static struct face *x_get_glyph_face_and
1152                                                         XChar2b *,                                                         XChar2b *,
1153                                                         int *));                                                         int *));
1154  static struct face *x_get_char_face_and_encoding P_ ((struct frame *, int,  static struct face *x_get_char_face_and_encoding P_ ((struct frame *, int,
1155                                                        int, XChar2b *, int));                                                        int, XChar2b *, int,
1156                                                          int));
1157  static XCharStruct *x_per_char_metric P_ ((XFontStruct *, XChar2b *));  static XCharStruct *x_per_char_metric P_ ((XFontStruct *, XChar2b *));
1158  static void x_encode_char P_ ((int, XChar2b *, struct font_info *));  static void x_encode_char P_ ((int, XChar2b *, struct font_info *));
1159  static void x_append_glyph P_ ((struct it *));  static void x_append_glyph P_ ((struct it *));
# Line 1293  x_encode_char (c, char2b, font_info) Line 1294  x_encode_char (c, char2b, font_info)
1294    
1295  /* Get face and two-byte form of character C in face FACE_ID on frame  /* Get face and two-byte form of character C in face FACE_ID on frame
1296     F.  The encoding of C is returned in *CHAR2B.  MULTIBYTE_P non-zero     F.  The encoding of C is returned in *CHAR2B.  MULTIBYTE_P non-zero
1297     means we want to display multibyte text.  Value is a pointer to a     means we want to display multibyte text.  DISPLAY_P non-zero means
1298     realized face that is ready for display.  */     make sure that X resources for the face returned are allocated.
1299       Value is a pointer to a realized face that is ready for display if
1300       DISPLAY_P is non-zero.  */
1301    
1302  static INLINE struct face *  static INLINE struct face *
1303  x_get_char_face_and_encoding (f, c, face_id, char2b, multibyte_p)  x_get_char_face_and_encoding (f, c, face_id, char2b, multibyte_p, display_p)
1304       struct frame *f;       struct frame *f;
1305       int c, face_id;       int c, face_id;
1306       XChar2b *char2b;       XChar2b *char2b;
1307       int multibyte_p;       int multibyte_p, display_p;
1308  {  {
1309    struct face *face = FACE_FROM_ID (f, face_id);    struct face *face = FACE_FROM_ID (f, face_id);
1310    
# Line 1343  x_get_char_face_and_encoding (f, c, face Line 1346  x_get_char_face_and_encoding (f, c, face
1346      }      }
1347    
1348    /* Make sure X resources of the face are allocated.  */    /* Make sure X resources of the face are allocated.  */
1349    xassert (face != NULL);    if (display_p)
1350    PREPARE_FACE_FOR_DISPLAY (f, face);      {
1351          xassert (face != NULL);
1352          PREPARE_FACE_FOR_DISPLAY (f, face);
1353        }
1354        
1355    return face;    return face;
1356  }  }
# Line 1855  x_produce_glyphs (it) Line 1861  x_produce_glyphs (it)
1861        /* Get font to use.  Encode IT->char_to_display.  */        /* Get font to use.  Encode IT->char_to_display.  */
1862        x_get_char_face_and_encoding (it->f, it->char_to_display,        x_get_char_face_and_encoding (it->f, it->char_to_display,
1863                                      it->face_id, &char2b,                                      it->face_id, &char2b,
1864                                      it->multibyte_p);                                      it->multibyte_p, 0);
1865        font = face->font;        font = face->font;
1866    
1867        /* When no suitable font found, use the default font.  */        /* When no suitable font found, use the default font.  */
# Line 2087  x_produce_glyphs (it) Line 2093  x_produce_glyphs (it)
2093        it->face_id = FACE_FOR_CHAR (it->f, face, it->char_to_display);        it->face_id = FACE_FOR_CHAR (it->f, face, it->char_to_display);
2094        face = FACE_FROM_ID (it->f, it->face_id);        face = FACE_FROM_ID (it->f, it->face_id);
2095        x_get_char_face_and_encoding (it->f, it->char_to_display,        x_get_char_face_and_encoding (it->f, it->char_to_display,
2096                                      it->face_id, &char2b, it->multibyte_p);                                      it->face_id, &char2b, it->multibyte_p, 0);
2097        font = face->font;        font = face->font;
2098    
2099        /* When no suitable font found, use the default font.  */        /* When no suitable font found, use the default font.  */
# Line 2175  x_produce_glyphs (it) Line 2181  x_produce_glyphs (it)
2181                                
2182                face = FACE_FROM_ID (it->f, face_id);                face = FACE_FROM_ID (it->f, face_id);
2183                x_get_char_face_and_encoding (it->f, ch, face->id, &char2b,                x_get_char_face_and_encoding (it->f, ch, face->id, &char2b,
2184                                              it->multibyte_p);                                              it->multibyte_p, 0);
2185                font = face->font;                font = face->font;
2186                if (font == NULL)                if (font == NULL)
2187                  {                  {
# Line 4973  x_set_glyph_string_background_width (s, Line 4979  x_set_glyph_string_background_width (s,
4979          int this_face_id = FACE_FOR_CHAR (XFRAME (w->frame), base_face, c); \          int this_face_id = FACE_FOR_CHAR (XFRAME (w->frame), base_face, c); \
4980          faces[n] = FACE_FROM_ID (XFRAME (w->frame), this_face_id);        \          faces[n] = FACE_FROM_ID (XFRAME (w->frame), this_face_id);        \
4981          x_get_char_face_and_encoding (XFRAME (w->frame), c,               \          x_get_char_face_and_encoding (XFRAME (w->frame), c,               \
4982                                        this_face_id, char2b + n, 1);       \                                        this_face_id, char2b + n, 1, 1);    \
4983        }                                                                   \        }                                                                   \
4984                                                                            \                                                                            \
4985      /* Make glyph_strings for each glyph sequence that is drawable by     \      /* Make glyph_strings for each glyph sequence that is drawable by     \

Legend:
Removed from v.1.650.4.25  
changed lines
  Added in v.1.650.4.26

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