1 |
|
2003-03-16 Kim F. Storm <storm@cua.dk> |
2 |
|
|
3 |
|
The following changes consolidate some of the gui-independent |
4 |
|
parts of the processing and drawing of "glyph strings" from |
5 |
|
xterm.c, w32term.c, and macterm.c into xdisp.c. |
6 |
|
|
7 |
|
* dispextern.h (struct glyph): Reduce face_id member from 22 to |
8 |
|
21 bits (this reduces number of faces from 4M to 2M). |
9 |
|
Replace W32 specific w32_font_type member (2 bits) by generic |
10 |
|
font_type member (3 bits) for portability. |
11 |
|
(FONT_TYPE_UNKNOWN): New define, default for font_type member. |
12 |
|
(enum draw_glyphs_face): Define here. |
13 |
|
(struct glyph_string): Define here. Merge W32 and X versions. |
14 |
|
(struct redisplay_interface): New members per_char_metric, |
15 |
|
encode_char, compute_glyph_string_overhangs, draw_glyph_string. |
16 |
|
(VCENTER_BASELINE_OFFSET): Define here. |
17 |
|
(dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs) |
18 |
|
(x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here. |
19 |
|
|
20 |
|
* xdisp.c: Consolidate gui-independent "glyph string" code here. |
21 |
|
(dump_glyph_string): Moved here. |
22 |
|
(init_glyph_string, append_glyph_string_lists, append_glyph_string) |
23 |
|
(prepend_glyph_string_lists, get_glyph_face_and_encoding) |
24 |
|
(fill_composite_glyph_string, fill_glyph_string) |
25 |
|
(fill_image_glyph_string, fill_stretch_glyph_string) |
26 |
|
(left_overwritten, left_overwriting, right_overwritten) |
27 |
|
(right_overwriting, get_char_face_and_encoding) |
28 |
|
(set_glyph_string_background_width, compute_overhangs_and_x) |
29 |
|
(append_glyph, append_composite_glyph, produce_image_glyph) |
30 |
|
(take_vertical_position_into_account, append_stretch_glyph) |
31 |
|
(produce_stretch_glyph): New generic functions (based on X version). |
32 |
|
Call platform specific functions through rif. |
33 |
|
(INIT_GLYPH_STRING): New macro, hides W32 details. |
34 |
|
(BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING) |
35 |
|
(BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING) |
36 |
|
(BUILD_GLYPH_STRINGS): Generic macros (based on X version). |
37 |
|
(x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs) |
38 |
|
(notice_overwritten_cursor): |
39 |
|
Generic functions exported to platform modules. Users changed. |
40 |
|
|
41 |
|
* xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET) |
42 |
|
(FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE) |
43 |
|
(STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): |
44 |
|
New macro for consolidated code. |
45 |
|
|
46 |
|
* xterm.c: Remove consolidated defines and code. |
47 |
|
(x_per_char_metric, x_encode_char) |
48 |
|
(x_compute_glyph_string_overhangs): Adapt to RIF requirements. |
49 |
|
(x_redisplay_interface): Add new members. |
50 |
|
|
51 |
|
* w32gui.h (Display): Add dummy typedef for consolidation. |
52 |
|
(XChar2b): Define alias for wchar_t for consolidation. |
53 |
|
(STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros. |
54 |
|
|
55 |
|
* w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY) |
56 |
|
(FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): |
57 |
|
New macros for consolidation. |
58 |
|
|
59 |
|
* w32term.c Remove consolidated defines and code. |
60 |
|
(BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed |
61 |
|
to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead. |
62 |
|
(w32_per_char_metric): Change font_type arg to int for RIF. |
63 |
|
(w32_encode_char): Return int according to RIF requirements. |
64 |
|
(w32_compute_glyph_string_overhangs): Adapt to RIF. |
65 |
|
(w32_get_glyph_overhangs): New function for RIF. Uses generic |
66 |
|
x_get_glyph_overhangs. |
67 |
|
(w32_redisplay_interface): Add new members. |
68 |
|
|
69 |
|
* macgui.h (XChar2b): Move typedef here for consolidation. |
70 |
|
(STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros. |
71 |
|
|
72 |
|
* macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY): |
73 |
|
(FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for |
74 |
|
consolidation. |
75 |
|
|
76 |
|
* macterm.c: Remove consolidated defines and code. |
77 |
|
(mac_per_char_metric): New function for RIF. |
78 |
|
(mac_encode_char): Adapted to new RIF requirements. |
79 |
|
(mac_compute_glyph_string_overhangs): Adapt for RIF. |
80 |
|
(x_redisplay_interface): Add new members. |
81 |
|
|
82 |
2003-03-14 Richard M. Stallman <rms@gnu.org> |
2003-03-14 Richard M. Stallman <rms@gnu.org> |
83 |
|
|
84 |
* lread.c (read1): After #!, exit loop on eof. |
* lread.c (read1): After #!, exit loop on eof. |
125 |
|
|
126 |
2003-03-12 Kim F. Storm <storm@cua.dk> |
2003-03-12 Kim F. Storm <storm@cua.dk> |
127 |
|
|
128 |
The following changes consolidates the fringe handling from |
The following changes consolidate the fringe handling from |
129 |
xterm.c, w32term.c, and macterm.c into xdisp.c. |
xterm.c, w32term.c, and macterm.c into xdisp.c. |
130 |
|
|
131 |
* xdisp.c: Consolidate fringe handling code here. |
* xdisp.c: Consolidate fringe handling code here. |