update.
[chise/xemacs-chise.git-] / src / ChangeLog
1 1999-10-04  MORIOKA Tomohiko  <tomo@etl.go.jp>
2
3         * char-ucs.h (MIN_CHAR_OBS_94x94): New macro.
4         (MAX_CHAR_OBS_94x94): New macro.
5         (breakup_char_1): Support obsolete XEmacs-UCS private code space
6         for 94x94 sets.
7
8         * mule-charset.c (put_byte_from_character_table): Change unit size
9         from 128 to 256.
10         (mark_charset): Don't mark `cs->decoding_table' if `UTF2000' is
11         not defined.
12         (Fmake_reverse_direction_charset): Modify dummy argument of
13         `make_charset' for non-UTF-2000 environment.
14
15 1999-10-03  MORIOKA Tomohiko  <tomo@urania.m17n.org>
16
17         * char-ucs.h (MAKE_CHAR): Allow nested decoding-table.
18
19         * mule-charset.c (destroy_byte_from_character_table): New macro.
20         (latin_jisx0201_to_ucs): Deleted.
21         (latin_iso8859_2_to_ucs): Deleted.
22         (latin_iso8859_3_to_ucs): Deleted.
23         (latin_iso8859_4_to_ucs): Deleted.
24         (latin_iso8859_9_to_ucs): Deleted.
25         (latin_viscii_lower_to_ucs): Deleted.
26         (latin_viscii_upper_to_ucs): Deleted.
27         (mark_charset): Mark `cs->decoding_table'.
28         (Fcharset_mapping_table): Fix DOC-string.
29         (Fset_charset_mapping_table): New function.
30         (syms_of_mule_charset): Add nwe function
31         `set-charset-mapping-table'.
32         (complex_vars_of_mule_charset): Don't setup and use
33         `latin_*_to_ucs'.
34
35 1999-10-01  MORIOKA Tomohiko  <tomo@urania.m17n.org>
36
37         * char-ucs.h (MAKE_CHAR): Check the result for range-represented
38         charset.
39
40 1999-09-30  MORIOKA Tomohiko  <tomo@urania.m17n.org>
41
42         * mule-charset.c (Vcharset_hiragana_jisx0208): New variable.
43         (Vcharset_katakana_jisx0208): New variable.
44         (Qhiragana_jisx0208): New variable.
45         (Qkatakana_jisx0208): New variable.
46         (make_charset): Add new argument `byte_offset'.
47         (charset_get_byte1): Modify for new coded-charset definition; use
48         `XCHARSET_UCS_MIN', `XCHARSET_UCS_MAX', `XCHARSET_CODE_OFFSET' and
49         `XCHARSET_BYTE_OFFSET'.
50         (Fmake_charset): Modify for `make_charset'.
51         (Fmake_reverse_direction_charset): Likewise.
52         (syms_of_mule_charset): Add new symbols `hiragana-jisx0208' and
53         `katakana-jisx0208'.
54         (complex_vars_of_mule_charset): Modify for `make_charset'; quote
55         `.'  in font registry of charset `katakana-jisx0201',
56         `latin-jisx0201', `vietnamese-viscii-lower' and
57         `vietnamese-viscii-upper'; modify DOC-string of charset
58         `japanese-jisx0208-1978' and `japanese-jisx0208'; modify font
59         registry of charset `japanese-jisx0208' not to use font for JIS
60         X0208:1990; add new charset `hiragana-jisx0208' and
61         `katakana-jisx0208'.
62
63         * char-ucs.h (LEADING_BYTE_HIRAGANA_JISX0208): New macro.
64         (LEADING_BYTE_KATAKANA_JISX0208): New macro.
65         (struct Lisp_Charset): Add `byte_offset'.
66         (CHARSET_BYTE_OFFSET): New macro.
67         (XCHARSET_UCS_MIN): New macro.
68         (XCHARSET_UCS_MAX): New macro.
69         (XCHARSET_CODE_OFFSET): New macro.
70         (XCHARSET_BYTE_OFFSET): New macro.
71         (MIN_CHAR_HIRAGANA): New macro.
72         (MAX_CHAR_HIRAGANA): New macro.
73         (MIN_CHAR_KATAKANA): New macro.
74         (MAX_CHAR_KATAKANA): New macro.
75         (MAKE_CHAR): Modify for new coded-charset definition; use
76         `XCHARSET_UCS_MIN', `XCHARSET_UCS_MAX', `XCHARSET_CODE_OFFSET' and
77         `XCHARSET_BYTE_OFFSET'.
78
79 1999-09-27  MORIOKA Tomohiko  <tomo@etl.go.jp>
80
81         * mule-charset.c (CHAR96): Deleted.
82         (latin_jisx0201_to_ucs): Type is changed from array of <Emchar> to
83         <Lisp_Object>.
84         (latin_iso8859_2_to_ucs): Likewise.
85         (latin_iso8859_3_to_ucs): Likewise.
86         (latin_iso8859_4_to_ucs): Likewise.
87         (latin_iso8859_9_to_ucs): Likewise.
88         (latin_viscii_lower_to_ucs): Likewise.
89         (latin_viscii_upper_to_ucs): Likewise.
90         (latin_tcvn5712_to_ucs): Commented out.
91         (make_charset): Change type of argument `decoding_table' from
92         <Emchar*> to <Lisp_Object> [vector of characters].
93         (Fmake_charset): Modify for `make_charset'.
94         (Fmake_reverse_direction_charset): Likewise.
95         (Fcharset_mapping_table): New function in UTF-2000.
96         (syms_of_mule_charset): Setup `Fcharset_mapping_table' in
97         UTF-2000.
98         (complex_vars_of_mule_charset): Modify for type change of
99         `*_to_ucs'; modify for `make_charset'.
100
101         * char-ucs.h (struct Lisp_Charset): Change type of
102         `decoding_table' from <Emchar*> to <Lisp_Object>.
103         (MAKE_CHAR): Modify for new specification of `decoding_table'.
104
105 1999-09-23  MORIOKA Tomohiko  <tomo@etl.go.jp>
106
107         * mule-charset.c (Fmake_reverse_direction_charset): Fix compile
108         error with non-UTF-2000-Mule.
109
110 1999-09-21  MORIOKA Tomohiko  <tomo@etl.go.jp>
111
112         * mule-charset.c (Vcharset_chinese_cns11643_3): Deleted [defined
113         in lisp again].
114         (Vcharset_chinese_cns11643_4): Likewise.
115         (Vcharset_chinese_cns11643_5): Likewise.
116         (Vcharset_chinese_cns11643_6): Likewise.
117         (Vcharset_chinese_cns11643_7): Likewise.
118         (Qchinese_cns11643_3): Likewise.
119         (Qchinese_cns11643_4): Likewise.
120         (Qchinese_cns11643_5): Likewise.
121         (Qchinese_cns11643_6): Likewise.
122         (Qchinese_cns11643_7): Likewise.
123         (syms_of_mule_charset): Move definitions for `chinese-cns11643-3',
124         `chinese-cns11643-4', `chinese-cns11643-5', `chinese-cns11643-6'
125         and `chinese-cns11643-7' to lisp/mule/chinese.el.
126         (complex_vars_of_mule_charset): Likewise.
127
128 1999-09-18  MORIOKA Tomohiko  <tomo@etl.go.jp>
129
130         * mule-charset.c (charset_get_byte1): Fix bug about 94- and
131         96-set.
132         (Fmake_reverse_direction_charset): Inherit CHARSET_DECODING_TABLE,
133         CHARSET_UCS_MIN, CHARSET_UCS_MAX and CHARSET_CODE_OFFSET.
134
135 1999-09-17  MORIOKA Tomohiko  <tomo@etl.go.jp>
136
137         * char-ucs.h (MIN_CHAR_HALFWIDTH_KATAKANA): Changed to 0xFF61 from
138         0xFF60.
139         (MAKE_CHAR): Change offset for katakana-jisx0201 to 33 from 0x20.
140         (breakup_char_1): Likewise.
141
142         * text-coding.c (char_encode_iso2022): Keep designated charsets if
143         one of them includes the specified character.
144
145 1999-09-14  MORIOKA Tomohiko  <tomo@etl.go.jp>
146
147         * mule-charset.c: Update `utf-2000-version' to 0.8 (Kami).
148
149 1999-09-14  MORIOKA Tomohiko  <tomo@etl.go.jp>
150
151         * char-ucs.h (MAKE_CHAR): Fix problem in 2-dimension charset.
152
153 1999-09-14  MORIOKA Tomohiko  <tomo@etl.go.jp>
154
155         * mule-charset.c (latin_iso8859_2_to_ucs NULL): Add pseudo
156         definition for non-UTF-2000 Mule.
157         (latin_iso8859_3_to_ucs): Likewise.
158         (latin_iso8859_4_to_ucs): Likewise.
159         (latin_iso8859_9_to_ucs): Likewise.
160         (latin_jisx0201_to_ucs): Likewise.
161         (MIN_CHAR_THAI): Likewise.
162         (MAX_CHAR_THAI): Likewise.
163         (MIN_CHAR_GREEK): Likewise.
164         (MAX_CHAR_GREEK): Likewise.
165         (MIN_CHAR_HEBREW): Likewise.
166         (MAX_CHAR_HEBREW): Likewise.
167         (MIN_CHAR_HALFWIDTH_KATAKANA): Likewise.
168         (MAX_CHAR_HALFWIDTH_KATAKANA): Likewise.
169         (MIN_CHAR_CYRILLIC): Likewise.
170         (MAX_CHAR_CYRILLIC): Likewise.
171
172 1999-09-14  MORIOKA Tomohiko  <tomo@etl.go.jp>
173
174         * char-ucs.h (breakup_char_1): Use
175         `Vdefault_coded_charset_priority_list' for hebrew-iso8859-8,
176         thai-tis620 and katakana-jisx0201 area.
177
178 1999-09-13  MORIOKA Tomohiko  <tomo@urania.m17n.org>
179
180         * char-ucs.h (breakup_char_1): Use
181         `Vdefault_coded_charset_priority_list' for cyrillic-iso8859-5
182         area.
183
184         * text-coding.c (reset_encoding_stream): Fixed.
185         (char_encode_ucs4): Delete `& 255'.
186
187         * char-ucs.h (breakup_char_1): Use
188         `Vdefault_coded_charset_priority_list' for greek-iso8859-7 area.
189
190 1999-09-13  MORIOKA Tomohiko  <tomo@urania.m17n.org>
191
192         * file-coding.c (Fmake_coding_system): Don't set up
193         `codesys->fixed.size'.
194         (encode_coding_no_conversion): Don't refer
195         `str->codesys->fixed.size'.
196
197 1999-09-13  MORIOKA Tomohiko  <tomo@urania.m17n.org>
198
199         * mule-charset.c, char-ucs.h (latin_a_char_to_charset): Deleted.
200         (latin_a_char_to_byte1): Deleted.
201         (latin_a_char_to_byte2): Deleted.
202
203 1999-09-13  MORIOKA Tomohiko  <tomo@urania.m17n.org>
204
205         * mule-charset.c (make_charset): Add new argument `ucs_min',
206         `ucs_max' and `code_offset'.
207         (charset_get_byte1): New implementation [delete specific charset
208         depended implementations].
209         (Fmake_charset): Modify for `make_charset'.
210         (Fmake_reverse_direction_charset): Likewise.
211         (complex_vars_of_mule_charset): Likewise.
212
213         * char-ucs.h (struct Lisp_Charset): Add `ucs_min', `ucs_max' and
214         `code_offset'.
215         (CHARSET_UCS_MIN): New macro.
216         (CHARSET_UCS_MAX): New macro.
217         (CHARSET_CODE_OFFSET): New macro.
218         (MAKE_CHAR): Delete charset depended definitions [except
219         katakana-jisx0201].
220
221 1999-09-13  MORIOKA Tomohiko  <tomo@etl.go.jp>
222
223         * char-ucs.h (breakup_char_1): Use
224         `Vdefault_coded_charset_priority_list' for C0-Controls,
225         Basic-Latin, C1-Controls and Latin-1-Supplement area.
226
227 1999-09-13  MORIOKA Tomohiko  <tomo@urania.m17n.org>
228
229         * char-ucs.h (charset_get_byte1): New function.
230         (XCHARSET_GET_BYTE1): Deleted.
231         (charset_get_byte2): New function.
232         (XCHARSET_GET_BYTE2): Deleted.
233         (Vdefault_coded_charset_priority_list): New external variable.
234         (breakup_char_1): Use `charset_get_byte1', `charset_get_byte2' and
235         `Vdefault_preferred_coded_charset_list'.
236
237         * mule-charset.c (charset_get_byte1): New function.
238         (charset_get_byte2): New function.
239         (Vdefault_coded_charset_priority_list): New variable.
240         (vars_of_mule_charset): Add new variable
241         `default-coded-charset-priority-list'.
242
243 1999-09-12  MORIOKA Tomohiko  <tomo@urania.m17n.org>
244
245         * char-ucs.h (XCHARSET_GET_BYTE1): New inline function.
246         (XCHARSET_GET_BYTE2): New inline function.
247         (breakup_char_1): Use `XCHARSET_GET_BYTE1' and
248         `XCHARSET_GET_BYTE2'.
249
250 1999-09-12  MORIOKA Tomohiko  <tomo@urania.m17n.org>
251
252         * mule-charset.c (make_charset): Initialize
253         `CHARSET_TO_BYTE1_TABLE(cs)' and `CHARSET_TO_BYTE2_TABLE(cs)' by
254         NULL if table is not defined.
255
256 1999-09-11  MORIOKA Tomohiko  <tomo@urania.m17n.org>
257
258         * text-coding.c (char_encode_shift_jis): Use
259         `XCHARSET_TO_BYTE1_TABLE' for `Vcharset_latin_jisx0201' instead of
260         `ucs_to_latin_jisx0201'.
261
262         * mule-charset.c (ucs_to_latin_jisx0201): Deleted.
263         (ucs_to_latin_iso8859_2): Deleted.
264         (ucs_to_latin_iso8859_3): Deleted.
265         (ucs_to_latin_iso8859_4): Deleted.
266         (ucs_to_latin_iso8859_9): Deleted.
267         (ucs_to_latin_viscii_lower): Deleted.
268         (ucs_to_latin_viscii_upper): Deleted.
269         (ucs_to_latin_tcvn5712): Deleted.
270         (make_charset): Add new argument `decoding_table'; set up
271         `CHARSET_DECODING_TABLE(cs)' in UTF-2000; set up
272         `CHARSET_TO_BYTE1_TABLE(cs)' for 94-set and 96-set if
273         `decoding_table' is defined in UTF-2000.
274         (Fmake_charset): Modify for `make_charset'.
275         (Fmake_reverse_direction_charset): Likewise.
276         (complex_vars_of_mule_charset): Likewise; delete `GENERATE_94_SET'
277         and `GENERATE_96_SET'.
278
279         * char-ucs.h (latin_jisx0201_to_ucs): Deleted.
280         (ucs_to_latin_jisx0201): Deleted.
281         (latin_iso8859_2_to_ucs): Deleted.
282         (ucs_to_latin_iso8859_2): Deleted.
283         (latin_iso8859_3_to_ucs): Deleted.
284         (ucs_to_latin_iso8859_3): Deleted.
285         (latin_iso8859_4_to_ucs): Deleted.
286         (ucs_to_latin_iso8859_4): Deleted.
287         (latin_iso8859_9_to_ucs): Deleted.
288         (ucs_to_latin_iso8859_9): Deleted.
289         (latin_viscii_lower_to_ucs): Deleted.
290         (ucs_to_latin_viscii_lower): Deleted.
291         (latin_viscii_upper_to_ucs): Deleted.
292         (ucs_to_latin_viscii_upper): Deleted.
293         (struct Lisp_Charset): Renamed `encoding_table' to
294         `to_byte1_table'; add `to_byte2_table'.
295         (CHARSET_DECODING_TABLE): New macro.
296         (CHARSET_TO_BYTE1_TABLE): New macro.
297         (CHARSET_TO_BYTE2_TABLE): New macro.
298         (XCHARSET_DECODING_TABLE): New macro.
299         (XCHARSET_TO_BYTE1_TABLE): New macro.
300         (XCHARSET_TO_BYTE2_TABLE): New macro.
301         (MAKE_CHAR): Use `XCHARSET_DECODING_TABLE'; don't use `*_to_ucs'
302         tables.
303         (breakup_char_1): Use `XCHARSET_TO_BYTE1_TABLE' if it is defined;
304         don't use `ucs_to_*' tables.
305
306 1999-09-11  MORIOKA Tomohiko  <tomo@urania.m17n.org>
307
308         * text-coding.c (Fmake_coding_system): Don't set up
309         `codesys->fixed.size'.
310         (encode_coding_no_conversion): Use `if' instead of `switch'.
311
312         * file-coding.h (struct Lisp_Coding_System): Delete `fixed.size'.
313
314 1999-09-11  MORIOKA Tomohiko  <tomo@etl.go.jp>
315
316         * mule-charset.c (make_charset): Delete argument `rep_bytes'.
317         (Fmake_charset): Modify for `make_charset'.
318         (Fmake_reverse_direction_charset): Likewise.
319         (complex_vars_of_mule_charset): Likewise.
320
321 1999-09-11  MORIOKA Tomohiko  <tomo@etl.go.jp>
322
323         * text-coding.c (char_encode_shift_jis): Use table
324         `ucs_to_latin_jisx0201' and BREAKUP_CHAR.
325
326 1999-09-11  MORIOKA Tomohiko  <tomo@etl.go.jp>
327
328         * text-coding.c (text_encode_generic): Use `if' instead of
329         `switch'.
330         (decode_coding_sjis): Use `MAKE_CHAR' and `DECODE_ADD_UCS_CHAR' to
331         decode JIS-Latin.
332
333 1999-09-10  MORIOKA Tomohiko  <tomo@etl.go.jp>
334
335         * text-coding.c (encode_coding_sjis): Deleted.
336         (char_encode_shift_jis): New function.
337         (char_finish_shift_jis): New function.
338         (reset_encoding_stream): Set up `encode_char' and `finish' for
339         `CODESYS_UCS4' and `CODESYS_SHIFT_JIS'.
340         (mule_encode): Use generic encoder for `CODESYS_SHIFT_JIS'.
341         (char_encode_utf8): Treat `eol_type'.
342
343 1999-09-10  MORIOKA Tomohiko  <tomo@etl.go.jp>
344
345         * file-coding.c (decode_coding_iso2022): Use
346         `DECODE_ADD_UCS_CHAR'; don't use `XCHARSET_REP_BYTES'.
347
348 1999-09-10  MORIOKA Tomohiko  <tomo@etl.go.jp>
349
350         * mule-charset.c (vars_of_mule_charset): Update `utf-2000-version'
351         to 0.7 (Hirano).
352
353 1999-09-10  MORIOKA Tomohiko  <tomo@etl.go.jp>
354
355         * char-lb.h (CHAR_COLUMNS): New macro.
356
357 1999-09-09  MORIOKA Tomohiko  <tomo@etl.go.jp>
358
359         * text-coding.c (char_encode_ucs4): New function.
360         (char_finish_ucs4): New function.
361         (encode_coding_ucs4): Deleted.
362         (mule_encode): Use generic encoder for `CODESYS_UCS4'.
363         (text_encode_generic): Delete local variable `charset' and `half'.
364         (ucs_to_mule_table): Deleted.
365         (mule_to_ucs_table): Deleted.
366         (Fset_ucs_char): Deleted.
367         (ucs_to_char): Deleted.
368         (Fucs_char): Deleted.
369         (Fset_char_ucs): Deleted.
370         (Fchar_ucs): Deleted.
371         (decode_ucs4): Deleted.
372         (mule_char_to_ucs4): Deleted.
373         (encode_ucs4): Deleted.
374         (decode_coding_ucs4): Use `DECODE_ADD_UCS_CHAR'.
375         (decode_coding_utf8): Likewise.
376         (decode_coding_iso2022): Likewise; don't use `XCHARSET_REP_BYTES'.
377         (char_encode_iso2022): Fixed.
378         (syms_of_file_coding): Delete `Fset_ucs_char', `Fucs_char',
379         `Fset_char_ucs' and `Fchar_ucs'.
380         (complex_vars_of_file_coding): Don't initialize
381         `ucs_to_mule_table'.
382
383         * objects-tty.c (tty_initialize_font_instance): Don't use
384         `XCHARSET_COLUMNS'.
385
386         * mule-charset.c (make_charset): Don't set up CHARSET_REP_BYTES in
387         UTF-2000.
388
389         * redisplay-tty.c (tty_output_display_block): Use `CHAR_COLUMNS'
390         instead of `XCHARSET_COLUMNS' and `CHAR_CHARSET'.
391
392         * insdel.c (bufbyte_string_displayed_columns): Use `CHAR_COLUMNS'
393         instead of `XCHARSET_COLUMNS' and `CHAR_CHARSET'.
394         (emchar_string_displayed_columns): Likewise.
395
396         * indent.c (column_at_point): Use `CHAR_COLUMNS' instead of
397         `XCHARSET_COLUMNS' and `CHAR_CHARSET'.
398         (string_column_at_point): Likewise.
399         (Fmove_to_column): Likewise.
400
401         * char-ucs.h (struct Lisp_Charset): Delete `rep_bytes'; add
402         `encoding_table' and `decoding_table'.
403         (CHARSET_REP_BYTES): Deleted.
404         (XCHARSET_REP_BYTES): Deleted.
405         (XCHARSET_COLUMNS): Deleted.
406         (CHAR_COLUMNS): New macro.
407         (lookup_composite_char): Deleted unconditionally.
408         (composite_char_string): Likewise.
409
410 1999-09-09  MORIOKA Tomohiko  <tomo@etl.go.jp>
411
412         * char-ucs.h (Emchar_to_byte_table): New type.
413         (get_byte_from_character_table): New function interface.
414         (Vcharset_latin_jisx0201): New variable.
415         (latin_jisx0201_to_ucs): New variable.
416         (ucs_to_latin_jisx0201): New variable.
417         (Vcharset_latin_iso8859_2): New variable.
418         (latin_iso8859_2_to_ucs): New variable.
419         (ucs_to_latin_iso8859_2): New variable.
420         (Vcharset_latin_iso8859_3): New variable.
421         (latin_iso8859_3_to_ucs): New variable.
422         (ucs_to_latin_iso8859_3): New variable.
423         (Vcharset_latin_iso8859_4): New variable.
424         (latin_iso8859_4_to_ucs): New variable.
425         (ucs_to_latin_iso8859_4): New variable.
426         (Vcharset_latin_iso8859_9): New variable.
427         (latin_iso8859_9_to_ucs): New variable.
428         (ucs_to_latin_iso8859_9): New variable.
429         (Vcharset_latin_viscii_lower): New variable.
430         (latin_viscii_lower_to_ucs): New variable.
431         (ucs_to_latin_viscii_lower): New variable.
432         (Vcharset_latin_viscii_upper): New variable.
433         (latin_viscii_upper_to_ucs): New variable.
434         (ucs_to_latin_viscii_upper): New variable.
435         (CHARSET_ID_OFFSET_94): Changed from 0x60 to 0x55.
436         (LEADING_BYTE_LATIN_VISCII_LOWER): New macro.
437         (LEADING_BYTE_LATIN_VISCII_UPPER): New macro.
438         (MAKE_CHAR): Map `latin-iso8859-2', `latin-iso8859-3',
439         `latin-iso8859-4', `latin-iso8859-9', `latin-jisx0201',
440         `vietnamese-viscii-lower' and `vietnamese-viscii-upper' to BMP.
441         (breakup_char_1): Use `ucs_to_latin_iso8859_2',
442         `ucs_to_latin_iso8859_3', `ucs_to_latin_iso8859_4',
443         `ucs_to_latin_iso8859_9', `ucs_to_latin_viscii_lower',
444         `ucs_to_latin_viscii_upper' and `ucs_to_latin_jisx0201' tables.
445
446         * mule-charset.c (Vcharset_latin_viscii_lower): New variable.
447         (Vcharset_latin_viscii_upper): New variable.
448         (make_byte_from_character_table): New function.
449         (put_byte_from_character_table): New function.
450         (get_byte_from_character_table): New function.
451         (CHAR96): New macro.
452         (ucs_to_latin_jisx0201): New variable.
453         (latin_jisx0201_to_ucs): New variable.
454         (ucs_to_latin_iso8859_2): New variable.
455         (latin_iso8859_2_to_ucs): New variable.
456         (ucs_to_latin_iso8859_3): New variable.
457         (latin_iso8859_3_to_ucs): New variable.
458         (ucs_to_latin_iso8859_4): New variable.
459         (latin_iso8859_4_to_ucs): New variable.
460         (ucs_to_latin_iso8859_9): New variable.
461         (latin_iso8859_9_to_ucs): New variable.
462         (ucs_to_latin_viscii_lower): New variable.
463         (latin_viscii_lower_to_ucs): New variable.
464         (ucs_to_latin_viscii_upper): New variable.
465         (latin_viscii_upper_to_ucs): New variable.
466         (ucs_to_latin_tcvn5712): New variable.
467         (latin_tcvn5712_to_ucs): New variable.
468         (Qlatin_viscii_lower): New variable.
469         (Qlatin_viscii_upper): New variable.
470         (syms_of_mule_charset): Set up new symbol
471         `vietnamese-viscii-lower' and `vietnamese-viscii-upper'.
472         (complex_vars_of_mule_charset): Set up new charset
473         `vietnamese-viscii-lower' and `vietnamese-viscii-upper'; new macro
474         `GENERATE_94_SET' and `GENERATE_96_SET'; use them to generate
475         `ucs_to_<CHARSET>' tables.
476
477 1999-09-08  MORIOKA Tomohiko  <tomo@etl.go.jp>
478
479         * text-coding.c: New file.
480
481 1999-09-07  MORIOKA Tomohiko  <tomo@etl.go.jp>
482
483         * mule-charset.c (Fmake_char): Fix problem of 256-set.
484
485         * char-ucs.h (Vcharset_ucs_bmp): New variable.
486         (MAKE_CHAR): Modify for `ucs-bmp'.
487         (breakup_char_1): Return `ucs-bmp' and code point of BMP for
488         non-MULE characters of BMP.
489
490 1999-09-06  MORIOKA Tomohiko  <tomo@etl.go.jp>
491
492         * mule-charset.c (vars_of_mule_charset):
493         Update `utf-2000-version' to 0.6.
494
495 1999-09-05  MORIOKA Tomohiko  <tomo@urania.m17n.org>
496
497         * lstream.h:
498         - Include multibyte.h instead of character.h for `BYTE_ASCII_P'.
499         - Include character.h for `CHAR_ASCII_P'.
500
501         * mb-multibyte.h (CHAR_MULTIBYTE_P): Moved from mule-charset.h.
502
503         * mule-charset.h (CHAR_MULTIBYTE_P): Moved to mb-multibyte.h.
504         (CHAR_ASCII_P): Don't use `CHAR_MULTIBYTE_P'.
505
506         * mb-multibyte.h (BYTE_ASCII_P): Moved from char-ucs.h.
507         (BYTE_C0_P): Likewise.
508         (BYTE_C1_P): Likewise.
509         (Lstream_get_emchar_1): Likewise.
510         (Lstream_fput_emchar): Likewise.
511         (Lstream_funget_emchar): Likewise.
512         (copy_internal_to_external): Likewise.
513         (copy_external_to_internal): Likewise.
514
515         * char-ucs.h (BYTE_ASCII_P): Moved to mb-multibyte.h.
516         (BYTE_C0_P): Likewise.
517         (BYTE_C1_P): Likewise.
518         (Lstream_get_emchar_1): Likewise.
519         (Lstream_fput_emchar): Likewise.
520         (Lstream_funget_emchar): Likewise.
521         (copy_internal_to_external): Likewise.
522         (copy_external_to_internal): Likewise.
523
524         * mb-1byte.h (BYTE_ASCII_P): Moved from buffer.h.
525         (REP_BYTES_BY_FIRST_BYTE): Likewise.
526
527         * buffer.h (REP_BYTES_BY_FIRST_BYTE): Moved to mb-1byte.h.
528         (BYTE_ASCII_P): Moved to mb-1byte.h.
529
530 1999-09-04  MORIOKA Tomohiko  <tomo@urania.m17n.org>
531
532         * mb-utf-8.h, mb-lb.h: Include mb-multibyte.h.
533
534         * multibyte.h: Include mb-1byte.h in unibyte-XEmacs.
535         (MAX_EMCHAR_LEN): Moved to mb-1byte.h.
536         (VALID_CHARPTR_P): Moved to mb-*byte.h.
537         (VALIDATE_CHARPTR_BACKWARD): Likewise.
538         (VALIDATE_CHARPTR_FORWARD): Likewise.
539         (simple_charptr_emchar): Moved to mb-multibyte.h.
540         (simple_set_charptr_emchar): Likewise.
541         (simple_charptr_copy_char): Likewise.
542         (non_ascii_charptr_emchar): Likewise.
543         (non_ascii_set_charptr_emchar): Likewise.
544         (non_ascii_charptr_copy_char): Likewise.
545         (charptr_emchar): Moved to mb-*byte.h.
546         (set_charptr_emchar): Likewise.
547         (charptr_copy_char): Likewise.
548
549         * mb-1byte.h, mb-multibyte.h: New files.
550
551 1999-09-03  MORIOKA Tomohiko  <tomo@urania.m17n.org>
552
553         * mb-utf-8.h (MULTIBYTE): New macro.
554         (MAX_EMCHAR_LEN): Moved from buffer.h.
555         (REP_BYTES_BY_FIRST_BYTE): Moved from char-ucs.h.
556
557         * char-ucs.h (REP_BYTES_BY_FIRST_BYTE): Moved to mb-utf-8.h.
558
559         * mb-lb.h, multibyte.h: New files.
560
561         * char-1byte.h (Charset_ID): Moved from buffer.h.
562         (MIN_LEADING_BYTE): Likewise.
563         (LEADING_BYTE_ASCII): Likewise.
564         (NUM_LEADING_BYTES): Likewise.
565         (CHARSETP): Likewise.
566         (CHARSET_BY_LEADING_BYTE): Likewise.
567         (XCHARSET_LEADING_BYTE): Likewise.
568         (XCHARSET_GRAPHIC): Likewise.
569         (XCHARSET_COLUMNS): Likewise.
570         (XCHARSET_DIMENSION): Likewise.
571         (CHAR_CHARSET): Likewise.
572         (CHAR_LEADING_BYTE): Likewise.
573         (BREAKUP_CHAR): Likewise.
574         (Vcharset_ascii): Likewise.
575
576         * buffer.h: Include multibyte.h unconditionally.
577         (VALID_CHARPTR_P): Moved to multibyte.h.
578         (ASSERT_VALID_CHARPTR): Likewise.
579         (REAL_INC_CHARPTR): Likewise.
580         (REAL_INC_CHARBYTIND): Likewise.
581         (REAL_DEC_CHARPTR): Likewise.
582         (INC_CHARPTR): Likewise.
583         (INC_CHARBYTIND): Likewise.
584         (DEC_CHARPTR): Likewise.
585         (VALIDATE_CHARPTR_BACKWARD): Likewise.
586         (VALIDATE_CHARPTR_FORWARD): Likewise.
587         (charptr_n_addr): Likewise.
588         (MAX_EMCHAR_LEN): Moved to mb-*.h.
589         (simple_charptr_emchar): Moved to multibyte.h.
590         (simple_set_charptr_emchar): Likewise.
591         (simple_charptr_copy_char): Likewise.
592         (non_ascii_charptr_emchar): Likewise.
593         (non_ascii_set_charptr_emchar): Likewise.
594         (non_ascii_charptr_copy_char): Likewise.
595         (charptr_emchar): Likewise.
596         (set_charptr_emchar): Likewise.
597         (charptr_copy_char): Likewise.
598         (charptr_emchar_n): Likewise.
599         (Charset_ID): Moved to char-1byte.h.
600         (Vcharset_ascii): Likewise.
601         (CHAR_CHARSET): Likewise.
602         (CHAR_LEADING_BYTE): Likewise.
603         (LEADING_BYTE_ASCII): Likewise.
604         (NUM_LEADING_BYTES): Likewise.
605         (MIN_LEADING_BYTE): Likewise.
606         (CHARSETP): Likewise.
607         (CHARSET_BY_LEADING_BYTE): Likewise.
608         (XCHARSET_LEADING_BYTE): Likewise.
609         (XCHARSET_GRAPHIC): Likewise.
610         (XCHARSET_COLUMNS): Likewise.
611         (XCHARSET_DIMENSION): Likewise.
612         (BREAKUP_CHAR): Likewise.
613
614 1999-09-02  MORIOKA Tomohiko  <tomo@urania.m17n.org>
615
616         * character.h: Add document about interface for characters.
617
618         * char-ucs.h (CHAR_ASCII_P): Modify name of argument.
619         (MAKE_CHAR): Delete comment about
620         `FIELD2_TO_OFFICIAL_LEADING_BYTE' and
621         `FIELD2_TO_PRIVATE_LEADING_BYTE'.
622         (BREAKUP_CHAR): Modify name of arguments.
623         (CHAR_CHARSET): Modify name of argument.
624
625         * buffer.h: Delete document about Emchar accessors.
626
627 1999-09-02  MORIOKA Tomohiko  <tomo@urania.m17n.org>
628
629         * character.h (CHAR_INTP): Moved from buffer.h
630         (CHAR_OR_CHAR_INTP): Likewise.
631         (XCHAR_OR_CHAR_INT): Likewise.
632         (CHECK_CHAR_COERCE_INT): Likewise.
633
634         * buffer.h (CHAR_INTP): Moved to character.h
635         (CHAR_OR_CHAR_INTP): Likewise.
636         (XCHAR_OR_CHAR_INT): Likewise.
637         (CHECK_CHAR_COERCE_INT): Likewise.
638
639 1999-09-02  MORIOKA Tomohiko  <tomo@urania.m17n.org>
640
641         * character.h:
642         - Move definitions about UCS-2000 (UCS-4) to char-ucs.h.
643         - Include char-1byte.h, char-lb.h or char-ucs.h.
644
645         * mb-utf-8.h (CHAR_ASCII_P): Moved to char-ucs.h.
646
647         * buffer.h: Include character unconditionally.
648         (valid_char_p): Moved to char-*.h.
649         (non_ascii_valid_char_p): Moved to char-lb.h.
650
651         * char-1byte.h, char-lb.h, char-ucs.h: New files.
652
653 1999-09-02  MORIOKA Tomohiko  <tomo@urania.m17n.org>
654
655         * mule-ccl.c (ccl_driver): Don't define `CCL_WriteMultibyteChar2'
656         in UTF-2000 because it is not ported yet and not to use
657         `FIELD2_TO_OFFICIAL_LEADING_BYTE', `MIN_LEADING_BYTE_OFFICIAL_2',
658         `FIELD1_TO_OFFICIAL_LEADING_BYTE' and
659         `FIELD1_TO_PRIVATE_LEADING_BYTE'.
660
661         * mb-utf-8.h (CHAR_MULTIBYTE_P): Moved from character.h.
662         (CHAR_ASCII_P): Moved from character.h.
663
664         * character.h (CHAR_MULTIBYTE_P): Moved to mb-utf-8.h.
665         (CHAR_ASCII_P): Likewise.
666         (CHAR_FIELD1_MASK): Deleted.
667         (CHAR_FIELD2_MASK): Deleted.
668         (CHAR_FIELD3_MASK): Deleted.
669         (MAX_CHAR_BASIC_LATIN): New macro.
670         (CHAR_FIELD1): Deleted.
671         (CHAR_FIELD2_INTERNAL): Deleted.
672         (CHAR_FIELD3_INTERNAL): Deleted.
673         (FIELD1_TO_PRIVATE_LEADING_BYTE): Deleted.
674         (FIELD1_TO_OFFICIAL_LEADING_BYTE): Deleted.
675         (FIELD2_TO_PRIVATE_LEADING_BYTE): Deleted.
676         (FIELD2_TO_OFFICIAL_LEADING_BYTE): Deleted.
677         (MIN_CHAR_FIELD1_OFFICIAL): Deleted.
678         (MAX_CHAR_FIELD1_OFFICIAL): Deleted.
679         (MIN_CHAR_FIELD2_PRIVATE): Deleted.
680         (MAX_CHAR_FIELD2_PRIVATE): Deleted.
681         (MIN_CHAR_FIELD1_PRIVATE): Deleted.
682         (MAX_CHAR_FIELD1_PRIVATE): Deleted.
683         (MULE_CHAR_PRIVATE_OFFSET): Deleted.
684         (MIN_CHAR_PRIVATE_TYPE9N): Deleted.
685         (MAX_CHAR_PRIVATE_TYPE9N): Deleted.
686         (MIN_CHAR_PRIVATE_TYPE9NX9N): Deleted.
687         (MIN_CHAR_OFFICIAL_TYPE9NX9N): Deleted.
688         (MIN_CHAR_COMPOSITION): Deleted.
689         (breakup_char_1): Use `MAX_CHAR_BASIC_LATIN' instead of
690         `CHAR_ASCII_P'; use `0x7f' instead of `CHAR_FIELD3_INTERNAL'.
691
692 1999-09-02  MORIOKA Tomohiko  <tomo@m17n.org>
693
694         * buffer.h: Include mb-utf-8.h in UTF-2000.
695
696         * character.h (BUFBYTE_FIRST_BYTE_P): Moved to mb-utf-8.h.
697
698         * mb-utf-8.h: New file.
699
700 1999-09-02  MORIOKA Tomohiko  <tomo@etl.go.jp>
701
702         * chartab.h (CHAR_TABLE_NON_ASCII_VALUE_UNSAFE): Use `Charset_ID'
703         instead of `int'.
704
705         * mule-charset.h, buffer.h (Charset_ID): New type.
706
707 1999-09-01  MORIOKA Tomohiko  <tomo@etl.go.jp>
708
709         * mule-canna.c (c2mu): Use `MAKE_CHAR',
710         `Vcharset_japanese_jisx0212' and `Vcharset_japanese_jisx0208'
711         instead of `MULE_CHAR_PRIVATE_OFFSET',
712         `LEADING_BYTE_JAPANESE_JISX0212', `LEADING_BYTE_JAPANESE_JISX0208'
713         and `FIELD1_TO_OFFICIAL_LEADING_BYTE'.
714         (m2c): Use `BREAKUP_CHAR' and `XCHARSET_FINAL'.
715
716         * character.h (Vcharset_japanese_jisx0212): New variable
717         definition.
718
719 1999-09-01  MORIOKA Tomohiko  <tomo@etl.go.jp>
720
721         * mule-charset.c (Vcharset_ucs_bmp): New variable in UTF-2000.
722         (charset_by_attributes): Delete array about direction.
723         (latin_a_char_to_charset): New variable in UTF-2000.
724         (latin_a_char_to_byte1): New variable in UTF-2000.
725         (latin_a_char_to_byte2): New variable in UTF-2000.
726         (Qucs_bmp): New variable.
727         (next_allocated_1_byte_leading_byte): Use `Charset_ID' instead of
728         `Bufbyte'.
729         (next_allocated_2_byte_leading_byte): Likewise.
730         (non_ascii_set_charptr_emchar): Likewise.
731         (make_charset): Likewise; add `CHARSET_TYPE_128X128' and
732         `CHARSET_TYPE_256X256' in UTF-2000; modify for
733         `charset_by_attributes'.
734         (get_unallocated_leading_byte): Use `Charset_ID' instead of `int'.
735         (char-charset): Use `CHAR_CHARSET' instead of `CHAR_LEADING_BYTE'
736         and `CHARSET_BY_LEADING_BYTE'.
737         (syms_of_mule_charset): Set up `ucs-bmp'; move setting of
738         `utf-2000-version' to `vars_of_mule_charset'.
739         (vars_of_mule_charset): Modify for `charset_by_attributes'; don't
740         define `leading-code-private-11' in UTF-2000; move setting of
741         `utf-2000-version' from `syms_of_mule_charset'.
742         (complex_vars_of_mule_charset): Set up charset `ucs-bmp' in
743         UTF-2000.
744
745         * character.h (Charset_ID): New type.
746         (LEADING_BYTE_UCS_BMP): New macro.
747         (LEADING_BYTE_CONTROL_1): Changed from 0x8F to 0x81.
748         (CHARSET_ID_OFFSET_94): New macro.
749         (MIN_CHARSET_ID_PRIVATE_94): New macro.
750         (MAX_CHARSET_ID_PRIVATE_94): New macro.
751         (LEADING_BYTE_ASCII): Changed to use CHARSET_ID_OFFSET_94 and
752         final-byte.
753         (LEADING_BYTE_KATAKANA_JISX0201): Likewise.
754         (LEADING_BYTE_LATIN_JISX0201): Likewise.
755         (CHARSET_ID_OFFSET_96): New macro.
756         (LEADING_BYTE_LATIN_ISO8859_1): Changed to use
757         CHARSET_ID_OFFSET_96 and final-byte.
758         (LEADING_BYTE_LATIN_ISO8859_2): Likewise.
759         (LEADING_BYTE_LATIN_ISO8859_3): Likewise.
760         (LEADING_BYTE_LATIN_ISO8859_4): Likewise.
761         (LEADING_BYTE_GREEK_ISO8859_7): Likewise.
762         (LEADING_BYTE_ARABIC_ISO8859_6): Likewise.
763         (LEADING_BYTE_HEBREW_ISO8859_8): Likewise.
764         (LEADING_BYTE_CYRILLIC_ISO8859_5): Likewise.
765         (LEADING_BYTE_LATIN_ISO8859_9): Likewise.
766         (LEADING_BYTE_THAI_TIS620): Likewise.
767         (MIN_LEADING_BYTE_PRIVATE_1): Changed from 0x0D0 to 0xD0.
768         (MAX_LEADING_BYTE_PRIVATE_1): Changed from 0x11f to 0xDF.
769         (CHARSET_ID_OFFSET_94x94): New macro.
770         (LEADING_BYTE_CHINESE_BIG5_1): Changed to use
771         CHARSET_ID_OFFSET_94x94 and final-byte.
772         (LEADING_BYTE_CHINESE_BIG5_2): Likewise.
773         (MIN_LEADING_BYTE_PRIVATE_2): Likewise.
774         (MAX_LEADING_BYTE_PRIVATE_2): Likewise.
775         (LEADING_BYTE_JAPANESE_JISX0208_1978): Likewise.
776         (LEADING_BYTE_CHINESE_GB2312): Likewise.
777         (LEADING_BYTE_JAPANESE_JISX0208): Likewise.
778         (LEADING_BYTE_KOREAN_KSC5601): Likewise.
779         (LEADING_BYTE_JAPANESE_JISX0212): Likewise.
780         (LEADING_BYTE_CHINESE_CCITT_GB): Likewise.
781         (LEADING_BYTE_CHINESE_CNS11643_*): Likewise.
782         (LEADING_BYTE_KOREAN_KPS9566): Likewise.
783         (CHARSET_TYPE_128X128): New macro.
784         (CHARSET_TYPE_256X256): New macro.
785         (XCHARSET_PRIVATE_P): Delete unconditionally.
786         (charset_by_attributes): Delete array about direction.
787         (CHARSET_BY_LEADING_BYTE): Use `Charset_ID' instead of `int'.
788         (CHARSET_BY_ATTRIBUTES): Modify for `charset_by_attributes'.
789         (MIN_CHAR_94): New macro.
790         (MAX_CHAR_94): New macro.
791         (MIN_CHAR_96): New macro.
792         (MAX_CHAR_96): New macro.
793         (MIN_CHAR_94x94): New macro.
794         (MAX_CHAR_94x94): New macro.
795         (MIN_CHAR_96x96): New macro.
796         (MAX_CHAR_96x96): New macro.
797         (FIELD1_TO_PRIVATE_LEADING_BYTE): Use `CHARSET_ID_OFFSET_94x94'.
798         (FIELD1_TO_OFFICIAL_LEADING_BYTE): Likewise.
799         (FIELD2_TO_PRIVATE_LEADING_BYTE): Use `(MIN_LEADING_BYTE_PRIVATE_1
800         - 32)'.
801         (FIELD2_TO_OFFICIAL_LEADING_BYTE): Use `LEADING_BYTE_ASCII'.
802         (MIN_CHAR_FIELD2_OFFICIAL): Deleted.
803         (MAX_CHAR_FIELD2_OFFICIAL): Deleted.
804         (MIN_CHAR_OFFICIAL_TYPE9N): Deleted.
805         (MAX_CHAR_PRIVATE_TYPE9N): Changed.
806         (MAKE_CHAR): Use `XCHARSET_FINAL' instead of
807         `XCHARSET_LEADING_BYTE' to make code-point.
808         (latin_a_char_to_charset): New variable.
809         (latin_a_char_to_byte1): New variable.
810         (latin_a_char_to_byte2): New variable.
811         (breakup_char_1): Use `latin_a_char_to_{charset|byte1|byte2}' for
812         Latin Extended-A; use `CHARSET_BY_ATTRIBUTES' instead of
813         `CHARSET_BY_LEADING_BYTE' to get charset for ISO-2022 characters.
814
815         * insdel.c (find_charsets_in_bufbyte_string): Use `Charset_ID'
816         instead of `unsigned char'; use `MIN_LEADING_BYTE' instead of 128.
817         (find_charsets_in_emchar_string): Likewise.
818         (vars_of_insdel): Don't define local variable `i' in UTF-2000.
819
820         * file-coding.c (Fdecode_big5_char): Use `Charset_ID' instead of
821         `int'.
822         (decode_coding_iso2022): Likewise.
823
824         * toolbar-x.c (x_output_toolbar_button): Use `Charset_ID' instead
825         of `unsigned char'.
826
827         * redisplay.c (redisplay_text_width_emchar_string): Use
828         `Charset_ID' instead of `unsigned char'.
829         (redisplay_frame_text_width_string): Likewise.
830
831         * glyphs.c (glyph_height_internal): Use `Charset_ID' instead of
832         `unsigned char'.
833
834         * faces.h, faces.c (ensure_face_cachel_complete): Use `Charset_ID'
835         instead of `unsigned char'.
836         (face_cachel_charset_font_metric_info): Likewise.
837
838         * chartab.c (print_char_table): Use `Charset_ID' instead of `int'.
839         (get_non_ascii_char_table_value): Likewise.
840         (get_char_table): Likewise.
841         (put_char_table): Likewise.
842         (map_over_other_charset): Likewise.
843         (map_char_table): Likewise.
844
845         * buffer.h (find_charsets_in_bufbyte_string): Use `Charset_ID'
846         instead of `unsigned char'.
847
848 1999-08-31  MORIOKA Tomohiko  <tomo@etl.go.jp>
849
850         * character.h (PRE_LEADING_BYTE_PRIVATE_1): Deleted.
851         (PRE_LEADING_BYTE_PRIVATE_2): Deleted.
852
853         * mule-charset.c (leading_code_private_11): Don't define in
854         UTF-2000.
855
856         * mule-ccl.c (ccl_driver): Don't define `CCL_ReadMultibyteChar2'
857         in UTF-2000 because it is not ported yet and not to use
858         `PRE_LEADING_BYTE_PRIVATE_1' and `PRE_LEADING_BYTE_PRIVATE_2'.
859
860 1999-08-30  MORIOKA Tomohiko  <tomo@etl.go.jp>
861
862         * character.h (LEADING_BYTE_COMPOSITE): Deleted.
863
864 1999-08-29  MORIOKA Tomohiko  <tomo@etl.go.jp>
865
866         * regex.c (re_compile_fastmap): Don't use `LEADING_BYTE_PREFIX_P'
867         in UTF-2000.
868
869         * chartab.h (CHAR_TABLE_NON_ASCII_VALUE_UNSAFE): Use int instead
870         of unsigned char to store leading-byte.
871
872         * chartab.c (get_non_ascii_char_table_value): Don't use
873         `BREAKUP_CHAR_1_UNSAFE' in UTF-2000.
874
875         * file-coding.c (encode_coding_big5): Delete bogus implementation
876         in UTF2000.
877
878         * character.h (LEADING_BYTE_*): Delete definition for
879         non-UTF-2000.
880         (LEADING_BYTE_PRIVATE_P): Deleted unconditionally.
881         (LEADING_BYTE_PREFIX_P): Deleted.
882         (PRIVATE_LEADING_BYTE_PREFIX): Deleted.
883         (BUFBYTE_FIRST_BYTE_P): Delete definition for non-UTF-2000.
884         (BUFBYTE_LEADING_BYTE_P): Deleted.
885         (CHARSET_PRIVATE_P): Deleted unconditionally.
886         (rep_bytes_by_first_byte): Deleted unconditionally.
887         (REP_BYTES_BY_FIRST_BYTE): Delete definition for non-UTF-2000.
888         (FIELD1_TO_PRIVATE_LEADING_BYTE): Likewise.
889         (FIELD1_TO_OFFICIAL_LEADING_BYTE): Likewise.
890         (FIELD2_TO_PRIVATE_LEADING_BYTE): Likewise.
891         (CHAR_FIELD2): Deleted.
892         (CHAR_FIELD3): Deleted.
893         (MAKE_CHAR): Delete definition for non-UTF-2000.
894         (BREAKUP_CHAR_1_UNSAFE): Deleted.
895         (breakup_char_1): New implementation.
896         (CHAR_CHARSET): Use `BREAKUP_CHAR'.
897         (CHAR_LEADING_BYTE): Use `CHAR_CHARSET'.
898
899 1999-08-29  MORIOKA Tomohiko  <tomo@etl.go.jp>
900
901         * character.h (REP_BYTES_BY_FIRST_BYTE): Change order of
902         condition.
903
904 1999-08-28  MORIOKA Tomohiko  <tomo@etl.go.jp>
905
906         * character.h (LEADING_BYTE_PRIVATE_P): Don't define in UTF2000.
907         (CHARSET_PRIVATE_P): Likewise.
908         (XCHARSET_PRIVATE_P): Likewise.
909         (MAKE_CHAR): Don't use XCHARSET_PRIVATE_P in UTF2000.
910
911         * file-coding.c (encode_coding_ucs4): Delete bogus implement in
912         UTF2000.
913         (decode_coding_iso2022): Don't use XCHARSET_PRIVATE_P in UTF2000.
914
915 1999-08-28  MORIOKA Tomohiko  <tomo@etl.go.jp>
916
917         * character.h (LEADING_BYTE_*): Changed in UTF2000.
918         (NUM_LEADING_BYTES): Changed from 128 to 256.
919         (FIELD1_TO_PRIVATE_LEADING_BYTE): Change value to 0x80 in UTF2000.
920         (FIELD1_TO_OFFICIAL_LEADING_BYTE): Change value to 0x80 in
921         UTF2000.
922         (FIELD2_TO_PRIVATE_LEADING_BYTE): Change value to 0x80 in UTF2000.
923
924         * mule-charset.c (Vcharset_chinese_cns11643_3): New variable in
925         UTF2000.
926         (Vcharset_chinese_cns11643_4): New variable in UTF2000.
927         (Vcharset_chinese_cns11643_5): New variable in UTF2000.
928         (Vcharset_chinese_cns11643_6): New variable in UTF2000.
929         (Vcharset_chinese_cns11643_7): New variable in UTF2000.
930         (Qchinese_cns11643_3): New variable in UTF2000.
931         (Qchinese_cns11643_4): New variable in UTF2000.
932         (Qchinese_cns11643_5): New variable in UTF2000.
933         (Qchinese_cns11643_6): New variable in UTF2000.
934         (Qchinese_cns11643_7): New variable in UTF2000.
935         (syms_of_mule_charset): Define `chinese-cns11643-3',
936         `chinese-cns11643-4', `chinese-cns11643-5', `chinese-cns11643-6'
937         and `chinese-cns11643-7' in UTF2000.
938         (vars_of_mule_charset): Initialize
939         next_allocated_2_byte_leading_byte by LEADING_BYTE_CHINESE_BIG5_2
940         + 1 in UTF2000.
941         (complex_vars_of_mule_charset): Setup charset
942         `chinese-cns11643-3', `chinese-cns11643-4', `chinese-cns11643-5',
943         `chinese-cns11643-6' and `chinese-cns11643-7' in UTF2000.
944
945 1999-08-27  MORIOKA Tomohiko  <tomo@etl.go.jp>
946
947         * mule-charset.c: Move setting for `leading-code-private-11' from
948         `syms_of_mule_charset' to `vars_of_mule_charset'.
949
950 1999-08-27  MORIOKA Tomohiko  <tomo@etl.go.jp>
951
952         * mule-charset.h (CHARSET_BY_LEADING_BYTE): Use `MIN_LEADING_BYTE'
953         and `NUM_LEADING_BYTES' in assert.
954
955 1999-08-27  MORIOKA Tomohiko  <tomo@etl.go.jp>
956
957         * character.h (charset_by_leading_byte): Use `NUM_LEADING_BYTES'
958         instead of 128.
959         (CHARSET_BY_LEADING_BYTE): Use `MIN_LEADING_BYTE' and
960         `NUM_LEADING_BYTES' instead of 128.
961
962 1999-08-26  MORIOKA Tomohiko  <tomo@etl.go.jp>
963
964         * mule-charset.h (charset_by_leading_byte): Use
965         `NUM_LEADING_BYTES' instead of 128.
966         (CHARSET_BY_LEADING_BYTE): Use `MIN_LEADING_BYTE' instead of 128.
967
968         * mule-charset.c (charset_by_leading_byte): Use
969         `NUM_LEADING_BYTES' instead of 128.
970         (make_charset): Use `MIN_LEADING_BYTE' instead of 128.
971
972         * faces.h (FACE_CACHEL_FONT): Use `MIN_LEADING_BYTE' instead of
973         128.
974
975 1999-08-25  MORIOKA Tomohiko  <tomo@etl.go.jp>
976
977         * mule-charset.c (syms_of_mule_charset): Update to
978         0.4 (Shin-Imamiya).
979
980 1999-07-13 Daiki Ueno <ueno@ueda.info.waseda.ac.jp>
981
982         * file-coding.c (encode_coding_sjis): New implementation for
983         UTF2000.  (decode_coding_sjis): Ditto.
984
985 1999-06-17  MORIOKA Tomohiko  <tomo@etl.go.jp>
986
987         * mule-charset.c, character.h (Bytecount rep_bytes_by_first_byte):
988         Don't define in UTF2000.
989
990         * character.h: Include mule-charset.h if CHAR_IS_UCS4 is not
991         defined.
992
993         * redisplay-msw.c, objects-tty.c, objects-msw.c, mule-wnnfns.c,
994         mule-ccl.c, lstream.h, buffer.h: Include character.h in every
995         MULE.
996
997 1999-06-17  MORIOKA Tomohiko  <tomo@etl.go.jp>
998
999         * config.h.in (CHAR_IS_UCS4): New macro.
1000
1001         * mule-charset.c (rep_bytes_by_first_byte): Modify for
1002         conventional MULE representation.
1003         (syms_of_mule_charset): Update to 0.3 (Imamiya).
1004
1005         * mule-charset.h: Reverted to original.
1006
1007         * redisplay-msw.c, objects-tty.c, objects-msw.c, mule-wnnfns.c,
1008         mule-ccl.c, lstream.h, buffer.h: Use "character.h" instead of
1009         "mule-charset.h" if CHAR_IS_UCS4 is defined.
1010
1011         * character.h: New file.
1012
1013         * file-coding.c (Fmake_coding_system): Set 1 to
1014         `codesys->fixed.size' if TYPE is `no-conversion' and UTF2000 is
1015         defined.
1016         (encode_coding_no_conversion): New implementation for UTF2000.
1017
1018         * file-coding.h (struct Lisp_Coding_System): Add new member
1019         `fixed.size'.
1020
1021 1999-06-16  MORIOKA Tomohiko  <tomo@etl.go.jp>
1022
1023         * file-coding.c (decode_coding_iso2022): Code-point arguments of
1024         `MAKE_CHAR' must be smaller than 0x80 in UTF2000.
1025         (encode_coding_iso2022): New implementation for UTF2000.
1026
1027 1999-06-15  MORIOKA Tomohiko  <tomo@etl.go.jp>
1028
1029         * mule-canna.c (c2mu): New implementation for UTF2000.
1030         (m2c): Likewise.
1031
1032 1999-06-15  MORIOKA Tomohiko  <tomo@etl.go.jp>
1033
1034         * file-coding.c (encode_coding_no_conversion): Modify for UTF2000.
1035
1036 1999-06-15  MORIOKA Tomohiko  <tomo@etl.go.jp>
1037
1038         * file-coding.c (reset_encoding_stream): Set 0 to
1039         `str->iso2022.current_char_boundary' in UTF2000.
1040         (encode_utf8): Don't define in UTF2000.
1041         (encode_coding_utf8): New implementation for UTF-8 representation
1042         of UTF2000.
1043         (complex_vars_of_file_coding): Define coding-system `utf-8'.
1044
1045 1999-06-15  MORIOKA Tomohiko  <tomo@etl.go.jp>
1046
1047         * mule.c (vars_of_mule): Provide `utf-2000' in UTF2000.
1048
1049         * mule-charset.h (BUFBYTE_FIRST_BYTE_P): Modify for UTF-8 in
1050         UTF2000.
1051         (REP_BYTES_BY_FIRST_BYTE): Likewise.
1052
1053         * buffer.h (non_ascii_valid_char_p): Don't define in UTF2000.
1054
1055         * mule-charset.c (non_ascii_set_charptr_emchar): Don't define
1056         local variables `lb', `c1', `c2' and `charset' in UTF2000; encode
1057         as UTF-8 in UTF2000.
1058         (non_ascii_charptr_emchar): Decode as UTF-8 in UTF2000.
1059         (non_ascii_valid_char_p): Don't define in UTF2000.
1060         (non_ascii_charptr_copy_char): Add case 5 and 6 in UTF2000.
1061         (Lstream_get_emchar_1): Likewise.
1062         (utf-2000-version): New variable in UTF2000.
1063
1064         * lread.c (read_escape): Add new reader `u'.
1065
1066         * insdel.c (three_to_one_table): Don't define in UTF2000.
1067         (bufpos_to_bytind_func): Use `buf->text->mule_size' instead of
1068         `buf->text->mule_shifter' and `buf->text->mule_three_p' in
1069         UTF2000.
1070         (bytind_to_bufpos_func): Likewise.
1071         (buffer_mule_signal_inserted_region): Likewise.
1072         (vars_of_insdel): Don't initialize `three_to_one_table'.
1073         (init_buffer_text): Use `buf->text->mule_size' instead of
1074         `buf->text->mule_shifter' and `buf->text->mule_three_p' in
1075         UTF2000.
1076
1077         * file-coding.c (DECODE_ADD_BINARY_CHAR): New implementation for
1078         UTF-8 representation in UTF2000.
1079         (DECODE_ADD_UCS_CHAR): New macro in UTF2000.
1080         (decode_ucs4): Use `DECODE_ADD_UCS_CHAR' in UTF2000.
1081         (decode_coding_iso2022): Don't define local variable `lb' in
1082         UTF2000; don't use LEADING_BYTE in UTF2000; use
1083         `DECODE_ADD_UCS_CHAR' in UTF2000.
1084         (convert_to_external_format): Decode as UTF-8 in UTF2000.
1085
1086         * config.h.in (UTF2000): New macro.
1087
1088         * buffer.h (struct buffer_text): Add new member `mule_size' and
1089         don't add `mule_shifter' and `mule_three_p' in UTF2000.
1090         (valid_char_p): Return always 1 in UTF2000.
1091         (MAX_EMCHAR_LEN): 6 in UTF2000.
1092         (three_to_one_table): Don't define in UTF2000.
1093         (real_bufpos_to_bytind): Modify for UTF-8 representation in
1094         UTF2000.
1095         (real_bytind_to_bufpos): Likewise.
1096
1097         * alloc.c (Fmake_string): Add case 5 and 6 for UTF2000.
1098
1099 1999-06-10  MORIOKA Tomohiko  <tomo@etl.go.jp>
1100
1101         * mule-charset.c (rep_bytes_by_first_byte): Modified for character
1102         representation change.
1103         (Vutf_2000_version): New variable.
1104         (leading_code_private_11): New variable.
1105         (syms_of_mule_charset): Add new variables `utf-2000-version' and
1106         `leading-code-private-11'.
1107
1108         * mule-charset.h (LEADING_BYTE_CHINESE_CCITT_GB): New macro.
1109         (LEADING_BYTE_CHINESE_BIG5_1): Changed to 0x96 temporally.
1110         (LEADING_BYTE_CHINESE_CNS11643_1): Changed to 0x97.
1111         (LEADING_BYTE_CHINESE_CNS11643_2): Changed to 0x98.
1112         (LEADING_BYTE_CHINESE_CNS11643_3): New macro.
1113         (LEADING_BYTE_CHINESE_CNS11643_4): Likewise.
1114         (LEADING_BYTE_CHINESE_CNS11643_5): Likewise.
1115         (LEADING_BYTE_CHINESE_CNS11643_6): Likewise.
1116         (LEADING_BYTE_CHINESE_CNS11643_7): Likewise [but not used].
1117         (LEADING_BYTE_CHINESE_BIG5_2): Changed to 0x9D temporally.
1118         (LEADING_BYTE_KOREAN_KPS9566): New macro [but not used].
1119         (CHAR_FIELD1_MASK): Changed to (0x7F << 14).
1120         (MIN_CHAR_GREEK): New macro.
1121         (MAX_CHAR_GREEK): New macro.
1122         (MIN_CHAR_CYRILLIC): New macro.
1123         (MAX_CHAR_CYRILLIC): New macro.
1124         (MIN_CHAR_HEBREW): New macro.
1125         (MAX_CHAR_HEBREW): New macro.
1126         (MIN_CHAR_THAI): New macro.
1127         (MAX_CHAR_THAI): New macro.
1128         (MIN_CHAR_HALFWIDTH_KATAKANA): New macro.
1129         (MAX_CHAR_HALFWIDTH_KATAKANA): New macro.
1130         (CHAR_FIELD2_INTERNAL): New macro [renamed from `CHAR_FIELD2'.
1131         (CHAR_FIELD3_INTERNAL): New macro [renamed from `CHAR_FIELD3'.
1132         (FIELD1_TO_PRIVATE_LEADING_BYTE): Changed to 0xc0.
1133         (FIELD1_TO_OFFICIAL_LEADING_BYTE): Changed to 0x50.
1134         (CHAR_FIELD2): New inline function.
1135         (CHAR_FIELD3): New inline function.
1136         (MULE_CHAR_PRIVATE_OFFSET): New macro.
1137         (MIN_CHAR_OFFICIAL_TYPE9N): Shifted to `MULE_CHAR_PRIVATE_OFFSET'.
1138         (MIN_CHAR_PRIVATE_TYPE9N): Likewise.
1139         (MIN_CHAR_PRIVATE_TYPE9NX9N): Likewise.
1140         (MIN_CHAR_OFFICIAL_TYPE9NX9N): Likewise.
1141         (MIN_CHAR_COMPOSITION): Likewise.
1142         (CHAR_LEADING_BYTE): Modified for character representation change.
1143         (MAKE_CHAR): Likewise.
1144
1145         * lisp.h (Vcharset_latin_iso8859_1): New variable.
1146         (Vcharset_greek_iso8859_7): Likewise.
1147         (Vcharset_cyrillic_iso8859_5): Likewise.
1148         (Vcharset_hebrew_iso8859_8): Likewise.
1149         (Vcharset_thai_tis620): Likewise.
1150         (Vcharset_katakana_jisx0201): Likewise.
1151
1152 1999-08-17  MORIOKA Tomohiko  <tomo@etl.go.jp>
1153
1154         * file-coding.c (determine_real_coding_system): Treat `coding:'
1155         cookie.
1156
1157 1999-08-16  MORIOKA Tomohiko  <tomo@etl.go.jp>
1158
1159         * file-coding.c (struct decoding_stream): New member `counter'.
1160         (reset_decoding_stream): Initialize `counter'.
1161         (decode_coding_ucs4): Use `counter'.
1162         (decode_coding_utf8): Likewise.
1163
1164 1999-07-30  XEmacs Build Bot <builds@cvs.xemacs.org>
1165
1166         * XEmacs 21.2.19 is released
1167
1168 1999-07-27  Jeff Miller  <jmiller@smart.net>
1169
1170         * add a "#ifdef HAVE_MENUBARS"  wrapper to gui.c around 
1171           menubar_show_keybindings.
1172
1173 1999-07-23  SL Baur  <steve@miho>
1174
1175         * mule-charset.c (syms_of_mule_charset): Delete duplicated
1176         definition of Qccl_program.
1177
1178         * mule-ccl.h: Make a global declaration of it here.
1179
1180 1999-07-20  Bob Weiner  <weiner@beopen.com>
1181
1182         * s/sco7.h: Added from rr@sco.com.
1183
1184 1999-06-25  MORIOKA Tomohiko  <tomo@etl.go.jp>
1185
1186         * mule-ccl.c (ccl_driver): Fix `CCL_WriteMultibyteChar2'.
1187
1188 1999-06-24  MORIOKA Tomohiko  <tomo@etl.go.jp>
1189
1190         * file-coding.c (mule_decode): Setup `str->ccl.last_block'.
1191         (mule_encode): Likewise.
1192
1193         * mule-ccl.c (Qccl_program): New variable.
1194         (CCL_SUSPEND): New macro.
1195         (CCL_INVALID_CMD): New macro.
1196         (CCL_READ_CHAR): Don't regard as invalid command while processing
1197         the last block even if input is empty; use
1198         `CCL_STAT_SUSPEND_BY_SRC' instead of `CCL_STAT_SUSPEND'.
1199         (vars_of_mule_ccl): Setup `Qccl_program' and `Qccl_program_idx'.
1200
1201         * mule-ccl.h (CCL_STAT_SUCCESS): Moved from mule-ccl.c.
1202         (CCL_STAT_SUSPEND_BY_SRC): Imported from Emacs 20.3.10.
1203         (CCL_STAT_SUSPEND_BY_DST): Likewise.
1204         (CCL_STAT_INVALID_CMD): Moved from mule-ccl.c; change value from 2.
1205         (CCL_STAT_QUIT): Moved from mule-ccl.c; change value from 3.
1206
1207 1999-05-04  Ken'ichi Handa  <handa@gnu.org>
1208
1209         * mule-ccl.h (struct ccl_program): New member stack_idx.
1210
1211         * mule-ccl.c (ccl_prog_stack_struct): Declare it as static.
1212         (ccl_driver): Setup stack_idx and ccl_prog correctly.  Update them
1213         before returing.
1214         (setup_ccl_program): Initialize ccl->stack_idx to 0.
1215
1216 1998-10-12  Kenichi Handa  <handa@etl.go.jp>
1217
1218         * mule-ccl.c (CCL_DECODE_SJIS, CCL_ENCODE_SJIS): Swap the
1219         definitions.
1220
1221 1998-08-18  Kenichi Handa  <handa@etl.go.jp>
1222
1223         * mule-ccl.c (CCL_READ_CHAR): If eof is encounterd while
1224         processing the last block, don't just finish but processes eol
1225         block of the current CCL program.
1226         (ccl_driver): Add a new jump label ccl_repeat for the above
1227         change.
1228
1229 1998-04-15  Kenichi Handa  <handa@etl.go.jp>
1230
1231         * mule-ccl.c: Typo in comments fixed.
1232         (Qccl_program_idx): New variables.
1233         (CCL_ReadMultibyteChar2): Macro name changed from
1234         CCL_ReadMultibyteCharacter.
1235         (CCL_WriteMultibyteChar2): Macro name changed from
1236         CCL_WriteMultibyteChar2.
1237         (ccl_driver): Adjusted for the above changes.
1238         (resolve_symbol_ccl_program): New function.
1239         (Fccl_execute): The arg CCL-PROGRAM can be a symbol of CCL
1240         program.  If CCL-PRGRAM is a vector, convert symbols in it to ID
1241         numbers by resolve_symbol_ccl_program.
1242         (Fccl_execute_on_string): Likewise.
1243         (Fregister_ccl_program): If the arg CCL-PRGRAM is a vector,
1244         convert symbols in it to ID numbers by resolve_symbol_ccl_program.
1245
1246 1998-01-21  Kenichi Handa  <handa@etl.go.jp>
1247
1248         * mule-ccl.h: (struct ccl_program): New member private_state.
1249
1250         * mule-ccl.c
1251         (CCL_Call): Fix the comment.
1252         (CCL_ReadMultibyteCharacter, CCL_WriteMultibyteCharacter): New
1253         macros for CCL Commands.
1254         (EXCMD): New macro.
1255         (ccl_driver): New case lable `CCL_Extention'.
1256         (setup_ccl_program): Initialize the member `private_state' of CCL.
1257
1258 1999-07-08  Katsumi Yamaoka <yamaoka@jpl.org>
1259
1260         * keymap.c (copy_keymap_internal): Inherit the default binding.
1261
1262 1999-07-14  Kazuyuki IENAGA <kazz@imasy.or.jp>
1263
1264         * event-Xt.c (handle_focus_event_1): Re-enable Motif/XIM to get
1265         focus the event (XIM_focus_event).
1266         (emacs_Xt_handle_magic_event): No side effect on Motif/XIM because 
1267         XIM_SetGeometry does nothing in input_method_motif.c, but re-unify
1268         the interface for future use (XIM_SetGeometry).
1269         * redisplay-x.c (x_output_string): Re-enable Motif/XIM to set spot 
1270         location (XIM_SetSpotLocation).
1271         (x_output_eol_cursor): Ditto.
1272
1273 1999-07-17  Gunnar Evermann  <ge204@eng.cam.ac.uk>
1274
1275         * gdbinit (pobj): change lrecord_foo to &lrecord_foo to match
1276         Olivier's change to lrecord.h of 1999-04-22
1277
1278 1999-07-20  Robert Pluim  <rpluim@bigfoot.com>
1279
1280         * gutter.c (redraw_exposed_gutter): Change type of pos from
1281         enum toolbar_pos -> enum gutter_pos, since former is only defined
1282         if toolbar support is.
1283
1284 1999-07-19  Andy Piper  <andy@xemacs.org>
1285
1286         * glyphs-x.c (x_resize_subwindow): cope with widgets as well as
1287         subwindows.
1288
1289         * gutter.c (gutter_validate): new function for the gutter specifier.
1290         (specifier_type_create_gutter): declare specifier validator.
1291
1292         * buffer.h (INC_CHARBYTIND): add for no error checking version.
1293
1294 1999-07-18  Andy Piper  <andy@xemacs.org>
1295
1296         * redisplay.c (add_emchar_rune): use XSTRING_DATA not string_data.
1297
1298         * glyphs-msw.c (console_type_create_glyphs_mswindows): add
1299         resize_subwindow.
1300         (mswindows_resize_subwindow): new function.
1301
1302         * gutter.c (redraw_exposed_gutter): only reset the
1303         current_display_lines if non-zero.
1304         (Fgutter_pixel_height): new function.
1305         (Fgutter_pixel_width): new function.
1306
1307         * event-msw.c (mswindows_wnd_proc): set the mask of the parameter
1308         we want to retrive from the tab control.
1309
1310 1999-07-17  Andy Piper  <andy@xemacs.org>
1311
1312         * window.c (change_window_height): mark gutters changed when we're
1313         done.
1314
1315         * gutter.c (specifier_vars_of_gutter): make defaults more
1316         sensible.
1317
1318         * gutter.h (WINDOW_REAL_GUTTER_BORDER_WIDTH): adjust to be 0 for 0
1319         height gutter.
1320         (DEFAULT_GUTTER_WIDTH): change.
1321         (DEFAULT_GUTTER_BORDER_WIDTH): change.
1322
1323 1999-07-18  Andy Piper  <andy@xemacs.org>
1324
1325         * redisplay.c (add_emchar_rune): use XSTRING_DATA not string_data.
1326
1327 1999-07-16  Andy Piper  <andy@xemacs.org>
1328
1329         * frame.c (Fmake_frame): call init_frame_gutters().
1330
1331         * redisplay.c (add_emchar_rune): use string functions if we are
1332         working with a string.
1333         (position_redisplay_data_type): add string element.
1334
1335 1999-07-15  Andy Piper  <andy@xemacs.org>
1336
1337         * winslots.h: add real_gutter_size slots to hold the actual gutter
1338         size. This is important for autodetected sizes.
1339
1340         * gutter.c (calculate_gutter_size): calculate size for gutters
1341         that have 'autodetect size.
1342
1343         * redisplay-msw.c (mswindows_output_vertical_divider): adjust
1344         extent of divider for gutters.
1345
1346         * redisplay-x.c (x_output_vertical_divider): adjust extent of
1347         divider for gutters.
1348
1349         * scrollbar.c (update_scrollbar_instance): adjust scrollbar
1350         position to take into account the gutters.
1351
1352         * redisplay.c (generate_modeline): adjust modeline position to
1353         take into account the gutters.
1354
1355 1999-07-14  Andy Piper  <andy@xemacs.org>
1356
1357         * gutter.c (frame_topmost_window): new function.
1358         (frame_bottommost_window): ditto.
1359         (frame_leftmost_window): ditto.
1360         (frame_rightmost_window): ditto.
1361
1362 1999-07-13  Andy Piper  <andy@xemacs.org>
1363
1364         * redisplay.c (calculate_display_line_boundaries): use text
1365         boundaries so that gutters get handled properly.
1366
1367 1999-07-12  Andy Piper  <andy@xemacs.org>
1368
1369         * glyphs-x.c (x_widget_instantiate): set the font Motif-style if
1370         we're using Motif.
1371
1372         * redisplay-output.c (redisplay_clear_to_window_end): generalised
1373         from redisplay-x.c
1374
1375         * redisplay-x.c (redisplay_clear_to_window_end): moved to
1376         redisplay.c
1377         
1378         * redisplay-msw.c (redisplay_clear_to_window_end): deleted.
1379
1380         * gutter.c: new file - implements gutters. All new functions are
1381         semantically equivalent to the toolbar functions.
1382         (gutter_was_visible): new function.
1383         (get_gutter_coords): ditto.
1384         (output_gutter): ditto.
1385         (clear_gutter): ditto.
1386         (update_frame_gutters): ditto.
1387         (redraw_exposed_gutter): ditto.
1388         (redraw_exposed_gutters): ditto.
1389         (free_frame_gutters): ditto.
1390         (init_frame_gutters): ditto.
1391         (decode_gutter_position): ditto.
1392         (Fset_default_gutter_position): ditto.
1393         (Fset_default_gutter_position): ditto.
1394         (Fdefault_gutter_position): ditto.
1395         (gutter_after_change): ditto.
1396         (Fgutter_specifier_p): ditto.
1397         (recompute_overlaying_specifier): ditto.
1398         (gutter_specs_changed): ditto.
1399         (default_gutter_specs_changed): ditto.
1400         (gutter_geometry_changed_in_window): ditto.
1401         (default_gutter_size_changed_in_window): ditto.
1402         (default_gutter_border_width_changed_in_window): ditto.
1403         (default_gutter_visible_p_changed_in_window): ditto.
1404         (syms_of_gutter): ditto.
1405         (vars_of_gutter): ditto.
1406         (specifier_type_create_gutter): ditto.
1407         (specifier_vars_of_gutter): ditto.
1408
1409         * gutter.h: new file. Contains gutter constants and sizing macros
1410         similar to those for the toolbar.
1411
1412         * winslots.h: add gutter variables.
1413
1414         * window.h: declare window_is_* functions.
1415
1416         * window.c (window_is_lowest): make non-static.
1417         (window_is_highest): ditto.
1418         (window_top_toolbar_height): deleted.
1419         (window_bottom_toolbar_height): deleted.
1420         (window_left_toolbar_width): deleted.
1421         (window_right_toolbar_width): deleted.
1422         (window_top_gutter_height): add gutter sizing.
1423         (window_bottom_gutter_height): ditto.
1424         (window_left_gutter_width): ditto.
1425         (window_right_gutter_width): ditto.
1426
1427         * symsinit.h: declarations for gutters vars etc.
1428
1429         * search.c (bi_find_next_emchar_in_string): new function.
1430
1431         * scrollbar.c (update_scrollbar_instance): remove reference to
1432         window_bottom_toolbar_height which did nothing.
1433
1434         * redisplay.h (struct display_line): add face indices for
1435         overriding defaults in output_display_line.
1436         Add gutter_changed flags and declarations.
1437
1438         * redisplay.c (create_string_text_block): new function, similar to
1439         create_text_block but for strings. Display tables etc are used
1440         from the currently selected window.
1441         (generate_string_display_line): ditto. Similar to
1442         generate_display_line.
1443         (generate_displayable_area): generate display lines for a given
1444         area on a frame. Input is the string, with associated extents, to
1445         display.
1446         (redisplay_frame): add gutter_changed check.
1447         (redisplay_device): ditto.
1448         (redisplay_without_hooks): ditto.
1449
1450         * redisplay-x.c (bevel_modeline): moved to redisplay.c.
1451         (x_redraw_exposed_area): redraw exposed gutters.
1452         (x_bevel_area): new redisplay device method.
1453         (x_type_create_redisplay_mswindows): add bevel_area device method.
1454         (x_output_display_block): fiddly Martin-style cleanup.
1455         (x_output_vertical_divider): use bevel_area.
1456
1457         * redisplay-output.c (output_display_line): check display_lines
1458         for face information before using defaults.
1459         (bevel_modeline): new function, calls bevel_area with appropriate
1460         values.
1461
1462         * redisplay-msw.c (bevel_modeline): moved to redisplay.c.
1463         (mswindows_redraw_exposed_area): redraw exposed gutters.
1464         (mswindows_bevel_area): new redisplay device method.
1465         (console_type_create_redisplay_mswindows): add bevel_area device
1466         method.
1467
1468         * indent.c (string_column_at_point): add column_at_point but for
1469         strings.
1470
1471         * glyphs-x.c (image_instantiator_format_create_glyphs_x): only
1472         instantiate widgets that we have a toolkit for.
1473
1474         * general.c: add Qgutter.
1475
1476         * frame.h (struct frame): add display lines for gutters and
1477         visibility flags.
1478
1479         * frame.c (set_frame_selected_window): mark gutters changed.
1480
1481         * emacs.c (main_1): add gutter initialisation.
1482
1483         * device.h (struct device): add gutter_changed flag and macros to
1484         manipulate it.
1485
1486         * console.h (struct console_methods): new bevel area redisplay
1487         method.
1488
1489         * buffer.h (REAL_INC_CHARBYTIND): new macro for strings as
1490         REAL_INC_BYTIND is for buffers.
1491         (INC_CHARPTR): ditto.
1492
1493         * Makefile.in.in (objs): add gutter.o
1494
1495 1999-07-13  XEmacs Build Bot <builds@cvs.xemacs.org>
1496
1497         * XEmacs 21.2.18 is released
1498
1499 1999-07-08  SL Baur  <steve@mule.m17n.org>
1500
1501         * event-Xt.c (handle_focus_event_1): Guard FRAME_X_XIC with
1502         XIM_XLIB.
1503         (emacs_Xt_handle_magic_event): Ditto.
1504         * redisplay-x.c (x_output_string): Ditto.
1505         (x_output_eol_cursor): Ditto.
1506
1507 1999-06-30  Kazuyuki IENAGA <kazz@imasy.or.jp>
1508
1509         *  event-Xt.c, input-method-xlib.c, redisplay-x.c: Avoid the
1510         problem that when XIM is destroyed or missed with some reason,
1511         xemacs will die.  Now xim=xlib waits the XIM will be ready and
1512         endures the case of XIM end up.
1513
1514 1999-07-03  Gunnar Evermann  <ge204@eng.cam.ac.uk>
1515
1516         * tooltalk.c (init_tooltalk): save signal actions for SIGQUIT,
1517         SIGINT and SIGCHLD before calling tt_open and restore the
1518         afterwards. This fixes e.g. the zombie subprocesses on Solaris
1519
1520 1999-07-06  SL Baur  <steve@xemacs.org>
1521
1522         * s/linux.h: gcc-2.8 changes for powerpc
1523         From Justin Vallon <vallon@mindspring.com>
1524
1525 1999-07-05  Didier Verna  <verna@inf.enst.fr>
1526
1527         * indent.c: new symbol Qcoerce.
1528         (Fmove_to_column): use it + doc string update.
1529
1530 1999-07-04  Andy Piper  <andy@xemacs.org>
1531
1532         * console.c: undo earlier Fprovide changes.
1533         * fns.c: ditto.
1534         * console.h: ditto.
1535
1536         * console-tty.c (image_instantiator_format_create_glyphs_tty): new
1537         function. validate appropriate image formats for tty.
1538
1539         * glyphs.h (INITIALIZE_IMAGE_INSTANTIATOR_FORMAT_NO_SYM):
1540         initialize consoles parameter.
1541         (struct image_instantiator_methods): add consoles parameter.
1542         (IIFORMAT_VALID_CONSOLE): new function. validate the format on the
1543         console.
1544         (INITIALIZE_DEVICE_IIFORMAT): validate the format on the given
1545         console.
1546
1547         * glyphs-msw.c: declare instantiators for later use.
1548         (image_instantiator_format_create_glyphs_mswindows): validate xpm
1549         and friends on the mswindows console.
1550         * glyphs-x.c: ditto.
1551
1552         * glyphs.c (valid_image_instantiator_format_p): disallow glyphs
1553         that have not been registered on the supplied device.
1554         (Fvalid_image_instantiator_format_p): add locale argument.
1555         (instantiate_image_instantiator): valid image instantiator on the
1556         device.
1557
1558         * symsinit.h: add image_instantiator_format_create_glyphs_tty()
1559         declaration.
1560
1561         * emacs.c (main_1): add call to
1562         image_instantiator_format_create_glyphs_tty().
1563
1564 1999-06-29  Olivier Galibert  <galibert@pobox.com>
1565
1566         * lisp.h: Add #include <stddef.h>.
1567
1568         * sysdep.c: Remove #include <stddef.h>.
1569         * symbols.c: Remove #include <stddef.h>.
1570         * sheap.c: Remove #include <stddef.h>.
1571         * opaque.c: Remove #include <stddef.h>.
1572         * nt.c: Remove #include <stddef.h>.
1573         * mule-charset.c: Remove #include <stddef.h>.
1574         * marker.c: Remove #include <stddef.h>.
1575         * file-coding.c: Remove #include <stddef.h>.
1576         * extents.c: Remove #include <stddef.h>.
1577         * elhash.c: Remove #include <stddef.h>.
1578         * data.c: Remove #include <stddef.h>.
1579         * chartab.c: Remove #include <stddef.h>.
1580         * bytecode.c: Remove #include <stddef.h>.
1581         * alloc.c: Remove #include <stddef.h>.  Fix vector description
1582
1583 1999-06-30  SL Baur  <steve@miho.m17n.org>
1584
1585         * editfns.c: Document "%s" format spec.
1586         Suggested by Bob Weiner <weiner@altrasoft.com>
1587
1588 1999-06-29  Andy Piper  <andy@xemacs.org>
1589
1590         * event-msw.c: fix definition booboo.
1591
1592 1999-06-28  Andy Piper  <andy@xemacs.org>
1593
1594         * glyphs-x.c: change tree -> tree-view, progress ->
1595         progress_gauge, edit -> edit-field, tab -> tab-control, combo ->
1596         combo-box.
1597         (complex_vars_of_glyphs_x): provide-on-console the implemented
1598         widget types.
1599
1600         * glyphs-msw.c: ditto.
1601         (complex_vars_of_glyphs_mswindows): ditto.
1602
1603         * lisp.h: add Fprovide_on_console.
1604
1605         * fns.c (Ffeaturep): add extra optional console argument.
1606         (Fprovide_on_console): like Fprovide but provides only on the
1607         specified console-type.
1608         (Frequire): check console-features as well as global features.
1609
1610         * console.c (Fconsole_features): new function. return features for
1611         this console.
1612         (syms_of_console): add Fconsole_features.
1613
1614         * console.h (CONMETH_FEATURES): new function for accessing features.
1615         (CONSOLE_FEATURES): ditto.
1616         (struct console_methods): add features slot.
1617         (INITIALIZE_CONSOLE_TYPE): initialize features slot.
1618
1619 1999-06-28  Andy Piper  <andy@xemacs.org>
1620
1621         * event-Xt.c (handle_focus_event_1): conditionally compile for
1622         X11R5.
1623
1624         * s/cygwin32.h: fix me website address.
1625
1626         * event-msw.c: add NMHDR for pre b20 cygwin builds.
1627
1628         * gui-x.c (button_item_to_widget_value): only add callback if it
1629         is non-nil.
1630
1631         * glyphs-x.c: add progress, edit and combo instantiators.
1632         (x_widget_set_property): new function. uses lwlib to set widget
1633         values.
1634         (x_widget_property): new function. uses lwlib to get widget
1635         values.
1636         (x_button_instantiate): support images in buttons.
1637         (x_button_property): new function. use lwlib to get the selected
1638         state.
1639         (x_progress_instantiate): new function for instantiating progress
1640         gauges.
1641         (x_progress_set_property): new function. sets the progress gauge
1642         position.
1643         (x_edit_instantiate): new function. for instantiating edit fields.
1644         (x_combo_instantiate): new function. for instantiating combo
1645         boxes.
1646         (image_instantiator_format_create_glyphs_x): add new device ii
1647         formats.
1648
1649         * glyphs-msw.c (mswindows_tab_instantiate): remove redundant var.
1650
1651         * console.h (CONSOLE_FEATURES): new features accesor.
1652
1653         * conslots.h (MARKED_SLOT): add features entry.
1654
1655 1999-06-25  Andy Piper  <andy@xemacs.org>
1656
1657         * menubar-x.c (menu_item_descriptor_to_widget_value_1): use new
1658         gui functions.
1659
1660         * menubar-msw.c: move MAX_MENUITEM_LENGTH to gui.h
1661
1662         * gui.h (struct Lisp_Gui_Item): add accelerator.
1663
1664         * gui.c (gui_item_add_keyval_pair): deal with accelerators.
1665         (gui_item_init): ditto.
1666         (gui_add_item_keywords_to_plist): ditto.
1667         (mark_gui_item): ditto.
1668         (gui_item_hash): ditto.
1669         (gui_item_accelerator): new function.
1670         (gui_name_accelerator): new function stolen from gui-x.c
1671
1672         * gui-x.c (popup_selection_callback): always define. mark
1673         subwindows changed after calling a callback.
1674         (menu_name_to_accelerator): deleted.
1675         (button_item_to_widget_value): forward gui_item things to gui_item
1676         functions.
1677
1678         * glyphs-x.h (struct x_subwindow_data): add data for widgets. add
1679         appropriate accesors.
1680
1681         * glyphs-x.c: declare new glyph formats.
1682         (x_finalize_image_instance): unmanage and destroy widgets if they
1683         exist.
1684         (x_unmap_subwindow): handle widgets specially.
1685         (x_map_subwindow): ditto. offset display of widgets by offset of
1686         text widget within container.
1687         (x_update_subwindow): new function. call lw_modify_all_widgets
1688         when we are a widget.
1689         (x_widget_instantiate): new function for generically creating
1690         widgets-glyphs. toolkit specifics forwarded to lwlib.
1691         (x_button_instantiate): new function for instantiating
1692         widgets-glyph buttons.
1693         (console_type_create_glyphs_x): register update_subwindow.
1694         (image_instantiator_format_create_glyphs_x): register widget and
1695         button types.
1696
1697         * event-msw.c (mswindows_wnd_proc): remove redundant variable.
1698
1699         * event-Xt.c (x_event_to_emacs_event): call handle_focus_event_1
1700         when we get a button press in case we do not have the focus.
1701         (handle_focus_event_1): set the keyboard focus to the text widget
1702         if we do not have it.
1703
1704         * dialog-x.c (dbox_descriptor_to_widget_value): use new gui_item
1705         functions.
1706
1707 1999-06-24  SL Baur  <steve@miho.m17n.org>
1708
1709         * syntax.c (scan_words): Restore non-Mule code.
1710         (word_constituent_p): Restore.
1711
1712 1999-06-23  Olivier Galibert  <galibert@pobox.com>
1713
1714         * config.h.in: Add missing #undef *_USER_DEFINED.
1715
1716 1999-06-23  SL Baur  <steve@miho.m17n.org>
1717
1718         * lisp.h (set_bit_vector_bit): Force promotion to unsigned long
1719         int (fixes a 64-bit problem).
1720
1721         * chartab.c (word_boundary_p): Use EQ not == for lisp_object
1722         comparison.
1723
1724 1999-03-23  Michael Sperber [Mr. Preprocessor]  <sperber@informatik.uni-tuebingen.de>
1725
1726         * paths.h.in (PATH_DOC): Made doc-directory configurable.
1727
1728 1999-06-22  Olivier Galibert  <galibert@pobox.com>
1729
1730         * lrecord.h: Added basic external description system.
1731
1732         * symbols.c: Added symbol, symbol-value-buffer-local,
1733         symbol-value-lisp-magic and symbol-value-varalias description.
1734         * mule-charset.c: Added charset description.
1735         * marker.c: Added marker description.
1736         * keymap.c: Added keymap description.
1737         * glyphs.c: Added glyph description.
1738         * floatfns.c: Added float description.
1739         * file-coding.c: Added coding-system description.
1740         * extents.c: Added extent description.
1741         * elhash.c: Added hash-table description.
1742         * data.c: Added weak-list desciption.
1743         * chartab.c: Added char-table-entry and char-table description.
1744         * bytecode.c: Added compiled-function description.
1745         * alloc.c: Added cons, vector and string description.
1746
1747 1999-06-22  Olivier Galibert  <galibert@pobox.com>
1748
1749         * lrecord.h (struct lrecord_header): Reduced size to 4 bytes.
1750         Updated everything to the removal of the "flags" substructure.
1751
1752         * lisp.h (subr_lheader_initializer): Updated.
1753         * symeval.h (symbol_value_forward_lheader_initializer): Updated.
1754
1755 1999-06-20  MORIOKA Tomohiko  <tomo@etl.go.jp>
1756
1757         * syntax.c (word_constituent_p): Deleted.
1758         (scan_words): Use `WORD_BOUNDARY_P'.
1759
1760         * chartab.c (Vword_combining_categories): New variable.
1761         (Vword_separating_categories): Likewise.
1762         (CATEGORYP): New macro.
1763         (CATEGORY_SET): Likewise.
1764         (CATEGORY_MEMBER): Likewise.
1765         (word_boundary_p): New function.
1766         (complex_vars_of_chartab): Set up new variable
1767         `word-combining-categories' and `word-separating-categories'.
1768
1769 1999-06-18  Olivier Galibert  <galibert@pobox.com>
1770
1771         * lrecord.h: Added description as a placehold in the lrecord
1772         implementation structures.  Added the parameter to all constructor
1773         defines.
1774
1775         * alloc.c: Added placeholders.
1776         * buffer.c: Ditto.
1777         * bytecode.c: Ditto.
1778         * chartab.c: Ditto.
1779         * console.c: Ditto.
1780         * data.c: Ditto.
1781         * database.c: Ditto.
1782         * device.c: Ditto.
1783         * eldap.c: Ditto.
1784         * elhash.c: Ditto.
1785         * eval.c: Ditto.
1786         * event-stream.c: Ditto.
1787         * events.c: Ditto.
1788         * extents.c: Ditto.
1789         * faces.c: Ditto.
1790         * file-coding.c: Ditto.
1791         * floatfns.c: Ditto.
1792         * fns.c: Ditto.
1793         * frame.c: Ditto.
1794         * glyphs.c: Ditto.
1795         * gui-x.c: Ditto.
1796         * keymap.c: Ditto.
1797         * lstream.c: Ditto.
1798         * marker.c: Ditto.
1799         * mule-charset.c: Ditto.
1800         * objects.c: Ditto.
1801         * opaque.c: Ditto.
1802         * process.c: Ditto.
1803         * rangetab.c: Ditto.
1804         * specifier.c: Ditto.
1805         * symbols.c: Ditto.
1806         * toolbar.c: Ditto.
1807         * tooltalk.c: Ditto.
1808         * window.c: Ditto.
1809
1810 1999-06-22  XEmacs Build Bot <builds@cvs.xemacs.org>
1811
1812         * XEmacs 21.2.17 is released
1813
1814 1999-06-13  Oscar Figueiredo  <oscar@xemacs.org>
1815
1816         * config.h.in (HAVE_LDAP_SET_OPTION): New define
1817         (HAVE_LDAP_GET_LDERRNO): Ditto
1818         (HAVE_LDAP_RESULT2ERROR): Ditto
1819         (HAVE_LDAP_PARSE_RESULT): Ditto
1820         (HAVE_UMICH_LDAP): Removed
1821         (HAVE_NS_LDAP): Removed
1822
1823         * eldap.h (struct Lisp_LDAP): Removed the `livep' member as
1824         suggested by Olivier Galibert
1825         (CHECK_LIVE_LDAP): Test on `ld' instead of `livep'
1826
1827         * eldap.c: Take the removal of `livep' into account in all the
1828         necessary functions
1829         (signal_ldap_error): Take two additional parameters
1830         Added new finer compilation conditions in order to use
1831         ldap_parse_result or ldap_result2error if available
1832         (Fldap_open): Conform to this new API
1833         (Fldap_search_internal): Ditto
1834
1835 1999-06-17  SL Baur  <steve@miho.m17n.org>
1836
1837         * data.c (struct int_or_double): Should use EMACS_INT not int.
1838
1839 1999-06-16  Norbert Koch  <n.koch@eai-delta.de>
1840
1841         * redisplay-msw.c: Run 'ccl_driver' with 'CCL_MODE_ENCODING' as in
1842         redisplay-x.c
1843
1844 1999-06-12  MORIOKA Tomohiko  <tomo@etl.go.jp>
1845
1846         * redisplay-x.c (separate_textual_runs): Run `ccl_driver' with
1847         `CCL_MODE_ENCODING'.
1848
1849         * file-coding.c (mule_decode): Run `ccl_driver' with
1850         `CCL_MODE_DECODING'.
1851         (mule_encode): Run `ccl_driver' with `CCL_MODE_ENCODING'.
1852
1853         * mule-ccl.c (CCL_WRITE_CHAR): Refer `conversion_mode'.
1854         (ccl_driver): Add new argument `conversion_mode'.
1855         (Fccl_execute): Run `ccl_driver' with `CCL_MODE_ENCODING'.
1856         (Fccl_execute_on_string): Likewise [perhaps it is better to add
1857         new optional argument].
1858
1859         * mule-ccl.h (CCL_MODE_ENCODING): New macro.
1860         (CCL_MODE_DECODING): New macro.
1861         (ccl_driver): Add new argument `conversion_mode'.
1862
1863 1999-06-15  SL Baur  <steve@miho.m17n.org>
1864
1865         * mule-charset.c (Fsplit_char): New subr.
1866         (Fchar_octet): delete.
1867         (syms_of_mule_charset): DEFSUBR it.
1868
1869 1999-06-13  Andy Piper  <andy@xemacs.org>
1870
1871         * menubar.h: update declarations involving gui_items.
1872
1873         * lisp.h: declare Lisp_Gui_Item.
1874
1875         * glyphs.h (struct Lisp_Image_Instance): update type of gui_item.
1876
1877         * glyphs.c (mark_image_instance): modify for new lisp-based gui_items.
1878         (print_image_instance): ditto.
1879         (image_instance_equal): ditto.
1880         (image_instance_hash): ditto.
1881
1882         * event-msw.c (mswindows_need_event): assert badly_p status.
1883         (mswindows_wnd_proc): modify WM_NOTIFY handling to cope with
1884         callbacks in tree-view and tab-control widgets.
1885         (emacs_mswindows_next_event): modify use of
1886         mswindows_dequeue_dispatch_event.
1887
1888         * dialog-msw.c (mswindows_popup_dialog_box): modify for new
1889         lisp-based gui_items.
1890
1891         * glyphs-msw.c (mswindows_update_subwindow): update use of
1892         gui_items.
1893         (mswindows_register_gui_item): new function.
1894         (mswindows_register_gui_item): fix to use lisp gui_items.
1895         (mswindows_widget_instantiate): ditto.
1896         (mswindows_button_instantiate): ditto.
1897         (add_tree_item): new function to recursively add tree view
1898         elements.
1899         (add_tree_item_list): ditto.
1900         (mswindows_tree_instantiate): new function. instantiate tree view
1901         controls.
1902         (add_tab_item): new function to add tabs to a tab control.
1903         (mswindows_tab_instantiate): new function. instantiate tab
1904         controls.
1905         (image_instantiator_format_create_glyphs_mswindows): add tree view
1906         and tab controls.
1907         (vars_of_glyphs_mswindows): ditto.
1908
1909         * glyphs-widget.c (check_valid_item_list_1): allow nested lists in
1910         item lists.
1911         (check_valid_item_list): ditto.
1912         (initialize_widget_image_instance): fix to use new lisp gui_item.
1913         (widget_instantiate_1): allow the setting of default textwidth in
1914         characters.
1915         (widget_instantiate): change to use new widget_instantiate_1
1916         signature.
1917         (combo_instantiate): ditto.
1918         (static_instantiate): ditto.
1919         (tab_instantiate): new function for tab widgets.
1920         (image_instantiator_format_create_glyphs_widget): add tab and tree
1921         view widgets.
1922
1923         * menubar-msw.c (displayable_menu_item): convert to use lisp
1924         gui_items.
1925         (populate_menu_add_item): ditto.
1926         (populate_or_checksum_helper): ditto.
1927
1928         * menubar.c (menu_parse_submenu_keywords): convert to use lisp
1929         gui_items.
1930         (Fmenu_find_real_submenu): ditto.
1931
1932         * gui.h (struct Lisp_Gui_Item): make gui_item a lisp oebjct.
1933
1934         * gui.c (gui_item_add_keyval_pair): gui_items are now lisp
1935         objects, convert functions that use them accordingly.
1936         (gui_item_init): ditto.
1937         (gui_item_active_p): ditto.
1938         (gui_item_selected_p): ditto.
1939         (gui_item_included_p): ditto.
1940         (gui_item_display_flush_left): ditto.
1941         (gui_item_display_flush_right): ditto.
1942         (mark_gui_item): ditto.
1943         (allocate_gui_item): new function to create a gui_item.
1944         (make_gui_item_from_keywords_internal): ditto. create and return a
1945         gui_item as well as setting keywords.
1946         (gui_parse_item_keywords): ditto.
1947         (gui_parse_item_keywords_no_errors): ditto.
1948         (gui_add_item_keywords_to_plist): new function, not yet used.
1949         (gui_item_hash): new function.
1950         (gui_item_id_hash): use gui_item_hash.
1951         (gui_item_equal): new function.
1952         (print_gui_item): new function.
1953
1954 1999-06-11  XEmacs Build Bot <builds@cvs.xemacs.org>
1955
1956         * XEmacs 21.2.16 is released
1957
1958 1999-06-10  Andy Piper  <andy@xemacs.org>
1959
1960         * select-msw.c (mswindows_own_selection): only set the clipboard
1961         if asked.
1962         (mswindows_get_foreign_selection): only get the clipboard if
1963         asked.
1964         (mswindows_disown_selection): only disown the clipboard if asked.
1965
1966 1999-06-03  MORIOKA Tomohiko  <tomo@etl.go.jp>
1967
1968         * file-coding.c (coding_system_from_mask): Use `raw-text' instead
1969         of `no-conversion'.
1970         (complex_vars_of_mule_coding): Use `raw-text' as the coding-system
1971         of coding-category `no-conversion'.
1972
1973 1999-06-03  MORIOKA Tomohiko  <tomo@etl.go.jp>
1974
1975         * file-coding.c (Qraw_text): New variable.
1976         (syms_of_mule_coding): Add new symbol `raw-text'.
1977         (complex_vars_of_mule_coding): Add new coding-system `raw-text';
1978         define coding-system `binary' independently; define coding-system
1979         `no-conversion' as an alias for `raw-text'.
1980
1981         * file-coding.h (Qraw_text): New variable.
1982
1983 1999-06-08  SL Baur  <steve@xemacs.org>
1984
1985         * s/decosf4-0.h: Explicitly #undef SYSTEM_MALLOC.
1986
1987 1999-06-06  Hrvoje Niksic  <hniksic@srce.hr>
1988
1989         * fns.c (MIME_LINE_LENGTH): Default to 72, as in mimencode and
1990         base64.el.
1991         (base64_decode_1): Signal errors instead of returning -1.
1992
1993 1999-06-07  Hrvoje Niksic  <hniksic@srce.hr>
1994
1995         * mule-charset.c (Fmake_char): Update docstring.
1996
1997 1999-06-07  Hrvoje Niksic  <hniksic@srce.hr>
1998
1999         * fns.c (Fstring_lessp): Actually increment the Bufbyte pointers.
2000
2001 1999-06-05  Hrvoje Niksic  <hniksic@srce.hr>
2002
2003         * fns.c (base64_decode_1): Allow and ignore any non-base64
2004         characters in input.
2005
2006 1999-05-27  Olivier Galibert  <galibert@pobox.com>
2007
2008         * emacs.c (Fdump_emacs): Add clear_message() lost with the removal
2009         of report_pure_usage().
2010
2011 1999-06-04  Hrvoje Niksic  <hniksic@srce.hr>
2012
2013         * fns.c (Fstring_lessp): Remove O(n^2) under Mule.
2014
2015 1999-06-04  XEmacs Build Bot <builds@cvs.xemacs.org>
2016
2017         * XEmacs 21.2.15 is released
2018
2019 1999-06-01  Hirokazu FUKUI  <fukui@atesoft.advantest.co.jp>
2020
2021         * frame.c (Fset_mouse_position):
2022         (Fset_mouse_pixel_position):
2023         * window.c (Fsplit_window):
2024         (Fmove_to_window_line):
2025         Fix crash when invoking functions with an already-deleted window
2026         argument.
2027
2028         * indent.c (vertical_motion_1):
2029         (vmotion_pixels):
2030         (Fvertical_motion_pixels):
2031         * window.c (Fwindow_displayed_text_pixel_height):
2032         Fix error message when invoking functions with an already-deleted
2033         window argument.
2034
2035 1999-06-01  Jan Vroonhof  <vroonhof@math.ethz.ch>
2036
2037         * sysdep.c (request_sigio_on_device): Guard against glibc
2038         2.1's stub streams implementation.
2039
2040 1999-06-03  SL Baur  <steve@xemacs.org>
2041
2042         * config.h.in:
2043         * emacs.c:  Implement x.y.z version numbers
2044         From Jan Vroonhof <vroonhof@math.ethz.ch>
2045
2046 1999-05-20  MORIOKA Tomohiko  <tomo@etl.go.jp>
2047
2048         * mule-charset.c (complex_vars_of_mule_charset): Registry of
2049         japanese-jisx0208-1978 should not match with "jisx0208.1983" nor
2050         "jisc6226.1983".
2051
2052 1999-06-03  SL Baur  <steve@xemacs.org>
2053
2054         * frame-x.c:
2055         * device-x.c: rename session option to wmcommand.
2056         From Oliver Graf <ograf@rhein-zeitung.de>
2057
2058 1999-05-27  Hrvoje Niksic  <hniksic@srce.hr>
2059
2060         * fns.c (Fsubstring): Don't traverse the same region twice with
2061         charcount_to_bytecount().
2062
2063 1999-06-03  SL Baur  <steve@steve1.m17n.org>
2064
2065         * m/alpha.h (SYSTEM_MALLOC): Fix indented preprocessor directive
2066         garbage.
2067
2068         * s/decosf4-0.h: Defining ORDINARY_LINK here is redundant (and it
2069         doesn't really work as is implied by the commentary).
2070         Don't define SYSTEM_MALLOC so the old GNU malloc can be used.
2071
2072 1999-06-02  SL Baur  <steve@steve1.m17n.org>
2073
2074         * symsinit.h: Declare vars_of_ntproc.
2075         * emacs.c (main_1): Call it.
2076
2077         * ntproc.c (syms_of_ntproc): Move variable initializations from
2078         here ...
2079         (vars_of_ntproc): ... to here [new function].
2080
2081         * file-coding.c (syms_of_file_coding): Rename.
2082         (vars_of_file_coding): Ditto.
2083         (complex_vars_of_file_coding): Ditto.
2084
2085         * symsinit.h: Rename *_mule_coding to *_file_coding.
2086
2087         * emacs.c (main_1): Call them by the proper name.
2088
2089         * device-msw.c (syms_of_device_mswindows): Move variable
2090         initializations from here ...
2091         (vars_of_device_mswindows): ... to here.
2092
2093         * chartab.c (vars_of_chartab): New function.
2094
2095         * symsinit.h: New function, vars_of_chartab.
2096
2097         * emacs.c (main_1): Call it.
2098
2099         * mule-canna.c (syms_of_mule_canna): Move CANNA initialization ...
2100         (vars_of_mule_canna): ... to here.
2101
2102         * mule-ccl.c (vars_of_mule_ccl): New function.  Move variable
2103         initializations out of syms_of_mule_ccl.
2104
2105         * symsinit.h: Declare new function vars_of_mule_ccl.
2106
2107         * emacs.c (main_1): Call it.
2108
2109 1999-05-27  Hrvoje Niksic  <hniksic@srce.hr>
2110
2111         * fns.c (base64_decode_1): Ignore whitespace.
2112
2113 1999-05-27  Hrvoje Niksic  <hniksic@srce.hr>
2114
2115         * mule-charset.c (Fmake_char): Strip the eighth bit off ARG1 and
2116         ARG2.
2117
2118 1999-05-21  Andy Piper  <andy@xemacs.org>
2119
2120         * xselect.c: deleted.
2121
2122         * symsinit.h: declare select initialisation.
2123
2124         * select.h: new file. declare commonly used select functions and
2125         variables.
2126
2127         * select.c: new file. generalised from xselect.c.
2128         (clean_local_selection_data): moved from xselect.c.
2129         (get_local_selection): ditto. device specific pieces called via a
2130         devmeth.
2131         (handle_selection_clear): ditto.
2132         (Fown_selection_internal): renamed and generalised from
2133         Fx_own_selection_internal. moved from xselect.c.
2134         (Fdisown_selection_internal): ditto.
2135         (Fselection_owner_p): ditto.
2136         (Fselection_exists_p): ditto.
2137         (Fget_selection_internal): ditto.
2138         (syms_of_select): new function. QXXXX values moved from xselect.c
2139         (vars_of_select): new function. selection_converter_alist,
2140         lost_selection_hooks moved and renamed from xselect.c
2141
2142         * select-x.c: renamed from xselect.c.
2143         (x_own_selection): converted to device specific. non-X-specific
2144         bits moved to select.c.
2145         (x_get_foreign_selection): ditto.
2146         (x_disown_selection): ditto.
2147         (x_selection_exists_p): ditto.
2148         (console_type_create_select_x): new function.
2149
2150         * select-msw.c (mswindows_own_selection): new device method to set
2151         the clipboard when we 'own' the selection.
2152         (mswindows_get_foreign_selection): new device method to get the
2153         clipboard.
2154         (mswindows_disown_selection): new device method to delete the
2155         selection when we 'disown' it.
2156         (console_type_create_select_mswindows): new function.
2157
2158         * emacs.c (main_1): add select to things to initialise.
2159
2160         * console.h (struct console_methods): new console methods for
2161         selection.
2162
2163         * Makefile.in.in (x_objs): xselect.c renamed to select-x.c
2164
2165 1999-05-20  Hrvoje Niksic  <hniksic@srce.hr>
2166
2167         * print.c (long_to_string): Install a faster version.
2168
2169 1999-05-16  Andy Piper  <andy@xemacs.org>
2170
2171         * ntproc.c (syms_of_ntproc): default
2172         win32-start-process-share-console to t.
2173
2174 1999-05-14  Hrvoje Niksic  <hniksic@srce.hr>
2175
2176         * config.h.in: Do it here.
2177
2178         * bytecode.c: Don't define ERROR_CHECK_TYPECHECK here.
2179
2180 1999-05-14  Andy Piper  <andy@xemacs.org>
2181
2182         * toolbar-msw.c (mswindows_output_toolbar): hash on something
2183         hashable.
2184
2185 1999-05-14  XEmacs Build Bot <builds@cvs.xemacs.org>
2186
2187         * XEmacs 21.2.14 is released
2188
2189 1999-05-12  Andy Piper  <andy@xemacs.org>
2190
2191         * ntproc.c (sys_spawnve): kludge argv[0] in a MS compatible way.
2192
2193 1999-05-11  Gunnar Evermann  <ge204@eng.cam.ac.uk>
2194
2195         * emacs.c (Frun_emacs_from_temacs): (re)alloc natgs+2 entries for
2196         run_temacs_argv array -- fixes random memory corruption crash
2197
2198 1999-05-12  Jan Vroonhof  <vroonhof@math.ethz.ch>
2199
2200         * window.c (Fcurrent_window_configuration):
2201         Save minibuffer height;
2202
2203         * window.c (set_window_configuration): use it.
2204
2205 1999-05-10  Robert Pluim  <rpluim@bigfoot.com>
2206
2207         * lisp.h (NNUNGCPRO): fix typo in name of DEBUG_GCPRO version
2208
2209 1999-04-21  Jan Vroonhof  <vroonhof@math.ethz.ch>
2210
2211         * redisplay.c (redisplay_window): Do not put data
2212         in the line start cache if it is not guaranteed to be correct
2213
2214 1999-04-02  Jan Vroonhof  <vroonhof@math.ethz.ch>
2215
2216         * window.c (struct window_config): Removed frame
2217         size members.
2218         (window_config_equal): No longer compare frame sizes.
2219         (Fset_window_configuration): Resize old top window to fit in the
2220         current frame directly, no longer use a fake frame resize.
2221         (Fcurrent_window_configuration): No longer save frame size
2222
2223 1999-05-11  Andy Piper  <andy@xemacs.org>
2224
2225         * ntproc.c (sys_spawnve): actually assign argv[0] instead of the
2226         first character.
2227
2228 1999-05-10  Hrvoje Niksic  <hniksic@srce.hr>
2229
2230         * sysdep.c (init_system_name): If gethostname gives a proper
2231         domain name, don't look further for one.
2232
2233 1999-05-09  Hrvoje Niksic  <hniksic@srce.hr>
2234
2235         * symbols.c (Fintern): Avoid frequent XSYMBOL (foo).
2236         (Fintern_soft): Accept a symbol argument.
2237
2238 1999-05-06  Hrvoje Niksic  <hniksic@srce.hr>
2239
2240         * symbols.c (Fintern): ...do it here.
2241
2242         * lread.c (read_atom): Don't handle keywords here.
2243
2244 1999-05-06  Hrvoje Niksic  <hniksic@srce.hr>
2245
2246         * symbols.c (reject_constant_symbols): Just use SYMBOL_IS_KEYWORD.
2247
2248 1999-05-03  Olivier Galibert  <galibert@pobox.com>
2249
2250         * lisp.h (SYMBOL_IS_KEYWORD): A symbol can be a keyword only if it
2251         is interned in the main obarray.
2252
2253 1999-04-23  Gunnar Evermann  <ge204@eng.cam.ac.uk>
2254
2255         * menubar-x.c (pre_activate_callback): set accelerator field in
2256         "No menu" entries to nil. Avoid crash in
2257         command_builder_operate_menu_accelerator
2258
2259 1999-05-03  Olivier Galibert  <galibert@pobox.com>
2260
2261         * symeval.h (symbol_value_forward_lheader_initializer): Ditto.
2262
2263         * lisp.h (DEFUN): Fix lrecord header initialisation.
2264
2265 1999-05-02  Andy Piper  <andy@xemacs.org>
2266
2267         * objects-msw.c (mswindows_font_instance_truename): add a ';'.
2268
2269         * ntproc.c (sys_kill): cast using MS mandated defines.
2270
2271 1999-04-29  Andy Piper  <andy@xemacs.org>
2272
2273         * m/intel386.h: remove redundant definitions.
2274
2275         * s/mingw32.h: new header for mingw32.
2276
2277         * unexnt.c: (open_input_file): function moved to nt.c.
2278         (close_file_data): ditto.
2279         (rva_to_section): function moved to ntproc.
2280
2281         * symsinit.h: declare syms_of_ntproc();
2282
2283         * objects-msw.c (mswindows_font_instance_truename): new function.
2284
2285         * ntproc.c: remove many warnings.
2286         (_sys_read_ahead): moved from nt.c and made static.
2287         (rva_to_section): moved from unexnt.c but not defined under
2288         mingw32.
2289         (win32_executable_type): implement what we can for mingw32
2290         headers.
2291         (sys_spawnve): fix bad MULE/GCPRO bug in filename handling.
2292
2293         * ntheap.h: remove declarations of functions that are now static.
2294
2295         * ntheap.c: support static heap.
2296
2297         * nt.h: conditionalise X_OK definition.
2298
2299         * nt.c: eliminate many warnings and support mingw32.
2300         (open_input_file): function moved from unexnt.c and made static
2301         (close_file_data): ditto.
2302         (_sys_read_ahead): moved to ntproc.c
2303
2304         * emacs.c: make sure syms_of_ntptroc gets called under windows.
2305
2306         * console-msw.h: support mingw32.
2307         * getloadavg.c: ditto.
2308         * ntplay.c: ditto.
2309         * sysdep.c: ditto.
2310         * sysdir.h: ditto.
2311         * systime.h: ditto.
2312         * systty.h: ditto.
2313
2314         * config.h.in: dont turn on DEBUG_ENCAPSULATION by default because
2315         some systems don't have all of the encapsulated system calls.
2316
2317         * callproc.c: warning elimination.
2318         * dired-msw.c: ditto.
2319         * process-nt.c: ditto.
2320         * realpath.c: ditto.
2321
2322         * Makefile.in.in: tweak : and ; for building under mswindows.
2323
2324 1999-04-26  Michael Harnois  <mharnois@willinet.net>
2325
2326         * eldap.c (allocate_ldap): Adapt to the new semantics of
2327         alloc_lcrecord_type().
2328
2329 1999-03-16  MORIOKA Tomohiko  <tomo@etl.go.jp>
2330
2331         * file-coding.c (DECODE_HANDLE_END_OF_CONVERSION): fixed.
2332
2333 1998-09-04  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
2334
2335         * Delete mule-coding.c and mule-coding.h because they are not
2336         used.
2337
2338 1999-04-22  Gunnar Evermann  <ge204@eng.cam.ac.uk>
2339
2340         * objects.c (print_font_instance): Check for NILP(f->device),
2341         i.e. Vthe_null_font_instance.
2342         (font_instance_truename_internal): ditto.
2343         (Ffont_instance_properties): ditto.
2344
2345 1999-04-22  Olivier Galibert  <galibert@pobox.com>
2346
2347         * lrecord.h (DECLARE_LRECORD): lrecord_implementation isn't an
2348         array anymore.
2349
2350 1999-04-22  Hrvoje Niksic  <hniksic@srce.hr>
2351
2352         * Makefile.in.in (tests): Don't mention tests explicitly -- makes
2353         it easier to add new ones.
2354
2355 1999-04-22  Hrvoje Niksic  <hniksic@srce.hr>
2356
2357         * symbols.c (reject_constant_symbols): Ditto.
2358         (init_symbols_once_early): Ditto.
2359
2360         * print.c (print_symbol): Don't use ->obarray.
2361
2362         * symbols.c (Funintern): Ditto.
2363
2364         * alloc.c (Fmake_symbol): Don't set ->obarray.
2365
2366         * lisp.h (struct Lisp_Symbol): Removed .obarray field.
2367
2368         * symbols.c (init_symbols_once_early): Removed
2369         Vpure_uninterned_symbol_table.
2370         (Fintern): Don't store to ->obarray field.
2371
2372 1999-04-22  Hrvoje Niksic  <hniksic@srce.hr>
2373
2374         * data.c (vars_of_data): Default debug_issue_ebola_notices to 0.
2375         (eq_with_ebola_notice): Remove abracadabra support.
2376
2377 1999-04-11  Oscar Figueiredo  <Oscar.Figueiredo@di.epfl.ch>
2378
2379         * eldap.c (Fldap_search_internal): Add a new parameter `withdn' to
2380         retrieve the distinguished names of entries
2381
2382 1999-03-08  Martin Buchholz  <martin@xemacs.org>
2383
2384         * lread.c (read_escape): Make hex escapes read only two hex digits.
2385
2386 1999-04-05  Olivier Galibert  <galibert@pobox.com>
2387
2388         * Makefile.in.in: Remove puresize-adjust.h and recursive makes.
2389         * make-src-depend: Remove puresize-adjust.h.
2390         * src-headers: Remove puresize-adjust.h.
2391         * config.h.in: Kill everything purespace/gung-ho related.
2392
2393         * dbxrc: Make gung-ho mandatory.
2394         * gdbinit: Ditto.
2395
2396         * lrecord.h: Make gung-ho mandatory.  Remove pure flag and add
2397         c_readonly and lisp_readonly.  Remove implementation arrays.
2398         (C_READONLY_RECORD_HEADER_P): Added.
2399         (LISP_READONLY_RECORD_HEADER_P): Added.
2400         (SET_C_READONLY_RECORD_HEADER): Added.
2401         (SET_LISP_READONLY_RECORD_HEADER): Added.
2402
2403         * lisp.h: Kill everything purespace/non gung-ho related.
2404         (CHECK_C_WRITEABLE): Added.
2405         (CHECK_LISP_WRITEABLE): Added.
2406         (C_READONLY): Added.
2407         (LISP_READONLY): Added.
2408
2409         * lisp-union.h: Make gung-ho mandatory.
2410         * lisp-disunion.h: Ditto.
2411
2412         * alloc.c: Kill everything purespace/non  gung-ho related. Fix all
2413         set_lheader_implementation calls.
2414         (c_readonly): Added.
2415         (lisp_readonly): Added.
2416         (make_string_nocopy): Added.
2417         (Fpurecopy):  Changed to do  nothing.   Kept the old documentation
2418         for reference purposes for the next patches.
2419         (sweep_lcrecords_1): Don't free C readonly lcrecords.
2420         (sweep_bit_vectors_1): Don't free C readonly bitvectors.
2421         (SWEEP_FIXED_TYPE_BLOCK): Don't free C readonly lrecords.
2422
2423         * fns.c: Make gung-ho mandatory.
2424         (Fput): CHECK_IMPURE -> CHECK_LISP_WRITEABLE.
2425         (Fremprop): Ditto.
2426         (Ffillarray): Ditto.
2427
2428         * data.c: Make gung-ho mandatory.
2429         (pure_write_error): Removed.
2430         (c_write_error): Added.
2431         (lisp_write_error): Added.
2432         (Fsetcar): CHECK_IMPURE -> CHECK_LISP_WRITEABLE.
2433         (Fsetcdr): Ditto.
2434         (Faset): Ditto.
2435
2436         * symbols.c: Make gung-ho mandatory.  make_pure_pname ->
2437                   make_string or make_string_nocopy.  Fix various
2438                   alloc_lcrecord_type.
2439
2440         * lread.c: Remove everything purespace related.
2441         (Flocate_file_clear_hashing): purified -> c_readonly.
2442         (locate_file): Ditto.
2443         (read_atom): make_pure_pname -> make_string.
2444
2445         * emacs.c (Frun_emacs_from_temacs): Remove purespace stats
2446                   reporting.
2447         (Fdump_emacs): Ditto.
2448
2449         * print.c (print_internal): Make gung-ho mandatory.
2450         * ntheap.c (sbrk): Ditto.
2451         * mem-limits.h (EXCEEDS_LISP_PTR): Ditto
2452         * symeval.h (symbol_value_forward_lheader_initializer): Ditto.
2453
2454         * sheap.c (more_static_core): Remove puresize-adjust.h from
2455                   message.
2456
2457         * syntax.c (complex_vars_of_syntax): make_pure_string ->
2458                   make_string_nocopy.
2459         * keymap.c (make_keymap): Fix alloc_lcrecord_type.
2460         (vars_of_keymap): make_pure_string -> make_string_nocopy.
2461         * events.c (deinitialize_event): Fix set_lheader_implementation.
2462         (zero_event): Ditto.
2463         * specifier.c (make_specifier_internal): Fix alloc_lcrecord.
2464         * menubar-x.c (set_frame_menubar): Fix alloc_lcrecord_type.
2465         * mule-charset.c (make_charset): Ditto.
2466         * console.c (allocate_console): Ditto.
2467         (complex_vars_of_console): Ditto.
2468         * file-coding.c (allocate_coding_system): Ditto.
2469         * device.c (allocate_device): Ditto
2470         * gui-x.c (gcpro_popup_callbacks): Ditto.
2471         * extents.c (allocate_extent_auxiliary): Ditto.
2472         (allocate_extent_info): Ditto.
2473         (copy_extent): Ditto.
2474         * glyphs.c (allocate_image_instance): Ditto.
2475         (allocate_glyph): Ditto.
2476         * frame.c (allocate_frame_core): Ditto.
2477         * database.c (allocate_database): Ditto.
2478         * tooltalk.c (make_tooltalk_message): Ditto.
2479         (make_tooltalk_pattern): Ditto.
2480         * rangetab.c (Fmake_range_table): Ditto.
2481         (Fcopy_range_table): Ditto.
2482         * process.c (make_process_internal): Ditto.
2483         * chartab.c (Fmake_char_table): Ditto.
2484         (make_char_table_entry): Ditto.
2485         (copy_char_table_entry): Ditto.
2486         (Fcopy_char_table): Ditto.
2487         * elhash.c (make_general_lisp_hash_table): Ditto.
2488         (Fcopy_hash_table): Ditto.
2489         * buffer.c (allocate_buffer): Ditto.
2490         (complex_vars_of_buffer): Ditto.
2491         * event-stream.c (allocate_command_builder): Ditto.
2492         * objects.c (Fmake_color_instance): Ditto.
2493         (Fmake_font_instance): Ditto.
2494         (vars_of_objects): Ditto.
2495         * toolbar.c (update_toolbar_button): Ditto.
2496         * window.c (allocate_window): Ditto.
2497         (make_dummy_parent): Ditto.
2498         (Fcurrent_window_configuration): Fix alloc_lcrecord.
2499         (vars_of_window): Fix make_lcrecord_list.
2500         * faces.c (allocate_face): Fix alloc_lcrecord_type. pure_list ->
2501                   Flist.
2502         * lstream.c (Lstream_new): Fix make_lcrecord_list.
2503         * opaque.c (make_opaque): Fix alloc_lrecord.
2504         (make_opaque_list): Fix alloc_lrecord_type.
2505
2506 1999-04-19  Hrvoje Niksic  <hniksic@srce.hr>
2507
2508         * process.c (Fstart_process_internal): Ditto.
2509
2510         * ntproc.c (sys_spawnve): Use Vlisp_EXEC_SUFFIXES when calling
2511         locate_file().
2512
2513         * glyphs-x.c (x_locate_pixmap_file): Ditto.
2514
2515         * glyphs-msw.c (mswindows_locate_pixmap_file): Fix call to
2516         locate_file().
2517
2518         * emodules.c (vars_of_module): New variable Vmodule_extensions.
2519         (emodules_load): Use it when calling locate_file().
2520
2521         * emacs.c (main_1): Use Vlisp_EXEC_SUFFIXES when calling
2522         locate_file().
2523
2524         * callproc.c: Vlisp_EXEC_SUFFIXES: New variable.
2525         (vars_of_callproc): Initialize it.
2526         (Fcall_process_internal): Use it when calling locate_file().
2527
2528         * alloc.c (disksave_object_finalization): Use
2529         Flocate_file_clear_hashing().
2530
2531         * lread.c (Flocate_file_clear_hashing): Clear all hasing when
2532         given `t' as argument.
2533
2534 1999-04-18  Hrvoje Niksic  <hniksic@srce.hr>
2535
2536         * lread.c (locate_file): Expand `pathel' when appropriate.
2537         (Flocate_file_clear_hashing): Expand path elements.
2538         (Flocate_file_clear_hashing): Use Vlocate_file_hash_table.
2539
2540         * dired.c (make_directory_hash_table): Create the hash-table only
2541         if the directory open is successful.
2542
2543         * lread.c (decode_mode_1): New function.
2544         (decode_mode): Ditto.
2545         (Flocate_file): Use them.
2546         (Flocate_file): Expand FILENAME.
2547         (locate_file_map_suffixes): New function.
2548         (locate_file_in_directory_mapper): New function.
2549         (locate_file_in_directory): Use locate_file_in_directory_mapper()
2550         and locate_file_map_suffixes().
2551         (locate_file_construct_suffixed_files): Use
2552         locate_file_map_suffixes().
2553         (locate_file_without_hash): Don't GCPRO path.
2554         (Flocate_file_clear_hashing): Use EXTERNAL_LIST_LOOP.
2555         (syms_of_lread): Remove Qlocate_file_hash_table.
2556         (locate_file_find_directory_hash_table): Use
2557         Vlocate_file_hash_table.
2558         (locate_file_refresh_hashing): Ditto.
2559
2560         * lread.c: Renamed read_objects to Vread_objects.
2561
2562 1999-04-16  Olivier Galibert  <galibert@pobox.com>
2563
2564         * mule-charset.c: Generally resync with fsf 20.3 charset
2565         interface.
2566         (make_charset): Add long and short name.  Use id instead of
2567         leading byte.
2568         (Fmake_charset): Ditto.
2569         (Fmake_reverse_direction_charset): Ditto.
2570         (Fcharset_property): Ditto.
2571         (Fcharset_short_name): Added.
2572         (Fcharset_long_name): Added.
2573         (Fcharset_description): Renamed from charset-doc-string.
2574         (syms_of_mule_charset): Synced symbols.
2575         (complex_vars_of_mule_charset): Synced charsets.
2576
2577         * mule-charset.h: Removed leading byte (uses id instead), added
2578         short and long name.
2579
2580 1999-04-15  Hrvoje Niksic  <hniksic@srce.hr>
2581
2582         * file-coding.c (Fdefine_coding_system_alias): New function.
2583
2584 1999-04-08  Olivier Galibert  <galibert@pobox.com>
2585
2586         * mule-charset.c (complex_vars_of_mule_charset): Allow all iso8859
2587         and -ascii fonts for displaying ascii instead of iso8859-1 only.
2588
2589 1998-12-14  Hrvoje Niksic  <hniksic@srce.hr>
2590
2591         * extents.c (set_extent_glyph_1): Make sure that the glyph we
2592         attach to the extent is valid.
2593
2594 1998-12-12  Hrvoje Niksic  <hniksic@srce.hr>
2595
2596         * dired.c (user_name_completion): Mule-ize.
2597         (user_name_completion): Use xmalloc/xrealloc/xfree.
2598         (user_name_completion): Use DO_REALLOC.
2599         (user_name_completion): Cut down the number of static variables;
2600         use a structure.
2601         (user_name_completion): Username completion is always
2602         case-sensitive.
2603
2604 1998-12-06  Hrvoje Niksic  <hniksic@srce.hr>
2605
2606         * fns.c (base64_decode_1): Remove COUNTER.
2607         (base64_decode_1): Accept CRLF in addition to CR.
2608         (base64_decode_1): Disallow a stray character after final EOF; the
2609         check was probably a remnant of buggy recode code.
2610
2611 1998-12-05  Hrvoje Niksic  <hniksic@srce.hr>
2612
2613         * fns.c (init_provide_once): Provide `base64'.
2614
2615 1998-12-04  Hrvoje Niksic  <hniksic@srce.hr>
2616
2617         * fns.c (XMALLOC_UNBIND): Include SPECCOUNT argument, for clarity.
2618         (Fbase64_encode_region): If buffer is read-only, bail out early.
2619         (Fbase64_decode_region): Ditto.
2620         (Fbase64_encode_region): Initialize SPECCOUNT to pacify the
2621         compiler.
2622         (Fbase64_encode_string): Ditto.
2623         (Fbase64_decode_region): Ditto.
2624         (Fbase64_decode_string): Ditto.
2625
2626 1998-11-25  Hrvoje Niksic  <hniksic@srce.hr>
2627
2628         * dired.c (Fdirectory_files): Remove redundant code.
2629
2630 1999-03-05  Philip Aston  <philipa@parallax.co.uk>
2631
2632         * frame-msw.c Make raise-frame restore minimised windows.
2633
2634 1999-03-05  Philip Aston  <philipa@parallax.co.uk>
2635
2636         * device-msw.c: Fix DEFVAR format - Death to phantom quote, and
2637         add magic newline.
2638
2639 1999-03-05  Philip Aston  <philipa@parallax.co.uk>
2640
2641         * toolbar-msw.c Consider captions when deciding whether to rebuild
2642         toolbar. This fixes the initial toolbar display for those of us
2643         who don't like captions. These patches applied by Andy Piper.
2644
2645 1999-03-12  XEmacs Build Bot <builds@cvs.xemacs.org>
2646
2647         * XEmacs 21.2.13 is released
2648
2649 1999-03-12  SL Baur  <steve@xemacs.org>
2650
2651         * file-coding.c: Guard ucs table initialization with ifdef MULE.
2652
2653 1999-03-10  Stephen J. Turnbull  <turnbull@sk.tsukuba.ac.jp>
2654
2655         * file-coding.c:  docstring and comment improvements.
2656         (decode_ucs4)  flag possible data loss with comment.
2657
2658 1999-03-10  Martin Buchholz  <martin@xemacs.org>
2659
2660         * file-coding.c (Fset_ucs_char): add CHECK_INT, CHECK_CHAR
2661         (ucs_to_char):
2662         (Fucs_char):
2663         (Fset_char_ucs):
2664         (decode_coding_ucs4):
2665         (encode_coding_ucs4):
2666         (detect_coding_utf8):
2667         (decode_coding_utf8):
2668         (encode_utf8):
2669         (encode_coding_utf8):
2670         Add CHECK_* macros where needed to avoid crashes.
2671         #ifdef out all composite character support using
2672         #ifdef ENABLE_COMPOSITE_CHARS
2673         Use normal XEmacs coding standards.
2674         Fix docstrings.
2675         Remove CODING_STREAM_COMPOSE, CODING_STREAM_DECOMPOSE.
2676
2677 1998-09-08  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
2678
2679         * file-coding.c (make-coding-system): Add description about
2680         `ucs-4' and `utf-8'.
2681         (detection_state): Modify to implement ucs-4 and utf-8.
2682         (detect_coding_type): Likewise.
2683         (detect_coding_ucs4): New implementation.
2684         (detect_coding_utf8): New implementation.
2685         (encode_utf8): fixed.
2686         (syms_of_mule_coding): Rename `ucs4' and `utf8' to `ucs-4' and
2687         `utf-8'.
2688
2689 1998-09-08  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
2690
2691         * file-coding.c (mule_char_to_ucs4): Encode 94x94 chars in ISO
2692         2022 registry to private area.
2693
2694 1998-09-07  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
2695
2696         * file-coding.c (encode_utf8): New function.
2697         (encode_coding_utf8): New implementation.
2698
2699 1998-09-07  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
2700
2701         * file-coding.c (ucs_to_mule_table): New variable; abolish
2702         `Vucs_to_mule_table'
2703         (mule_to_ucs_table): renamed from `Vmule_to_ucs_table'.
2704         (set-ucs-char): New function.
2705         (ucs_to_char): New function.
2706         (ucs-char): New function.
2707         (set-char-ucs): New function.
2708         (char-ucs): New function.
2709         (decode_ucs4): Use `ucs_to_char'.
2710         (complex_vars_of_mule_coding): Abolish `ucs-to-mule-table' and
2711         `mule-to-ucs-table'.
2712
2713 1998-09-06  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
2714
2715         * chartab.h: EXFUN `Fget_char_table'.
2716
2717         * file-coding.c (encode_ucs4): New function.
2718         (encode_coding_ucs4): Use `encode_ucs4'.
2719
2720 1998-09-06  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
2721
2722         * file-coding.c (decode_coding_ucs4): New implementation.
2723
2724 1998-09-06  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
2725
2726         * file-coding.c (decode_coding_ucs4): fixed.
2727
2728         * file-coding.c (Vmule_to_ucs_table): New variable.
2729         (mule_char_to_ucs4): New function.
2730         (encode_coding_ucs4): New implementation.
2731         (complex_vars_of_mule_coding): Define variable
2732         `mule-to-ucs-table'.
2733
2734 1998-09-06  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
2735
2736         * file-coding.c (decode_coding_utf8): New implementation.
2737
2738 1998-09-06  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
2739
2740         * file-coding.c (decode_coding_utf8): fixed.
2741
2742 1998-09-06  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
2743
2744         * file-coding.c (Vucs_to_mule_table): New variable.
2745         (decode_ucs4): Refer `Vucs_to_mule_table'.
2746         (complex_vars_of_mule_coding): Define variable
2747         `ucs-to-mule-table'.
2748
2749 1998-09-04  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
2750
2751         * file-coding.c (detect_coding_ucs4): New function (not
2752         implemented yet).
2753         (decode_coding_ucs4): New function.
2754         (encode_coding_ucs4): New function (not implemented yet).
2755         (detect_coding_utf8): New function (not implemented yet).
2756         (decode_coding_utf8): New function.
2757         (encode_coding_utf8): New function (not implemented yet).
2758         (make-coding-system): New type `ucs4' and `utf8'.
2759         (coding-system-type): Likewise.
2760         (detection_state): Add `ucs4' and `utf8'.
2761         (detect_coding_type): Likewise.
2762         (mule_decode): Use `decode_coding_ucs4' and `decode_coding_utf8'.
2763         (mule_encode): Use `encode_coding_ucs4' and `encode_coding_utf8'.
2764         (decode_ucs4): New function (very incomplete).
2765         (syms_of_mule_coding): Add `ucs4' and `utf8'.
2766
2767         * file-coding.h: Add definitions for UCS-4 and UTF-8.
2768
2769 1999-03-08  Martin Buchholz  <martin@xemacs.org>
2770
2771         * mule-charset.c:
2772         (non_ascii_valid_char_p):
2773         (lookup_composite_char):
2774         (composite_char_string):
2775         (make-composite-char):
2776         (composite-char-string):
2777         (syms_of_mule_charset):
2778         (complex_vars_of_mule_charset):
2779         * mule-charset.h (LEADING_BYTE_COMPOSITE):
2780         (CHAR_LEADING_BYTE):
2781         (MAKE_CHAR):
2782         * file-coding.h (CODING_STATE_COMPOSITE):
2783         (CODING_STATE_ISO2022_LOCK):
2784         (iso_esc_flag):
2785         (LEADING_BYTE_COMPOSITE):
2786         * file-coding.c (struct iso2022_decoder):
2787         (decoding_closer):
2788         (reset_iso2022):
2789         (parse_iso2022_esc):
2790         (encode_coding_iso2022):
2791         #ifdef out all composite character support using
2792         #ifdef ENABLE_COMPOSITE_CHARS
2793
2794         * alloc.c: Define lrecord_coding_system only if ! FILE_CODING
2795
2796 1999-03-04  Takeshi YAMADA <yamada@cslab.kecl.ntt.co.jp>
2797
2798         * fns.c (Fbase64_encode_string): Calculate `allength' in the same
2799         way of `Fbase64_encode_region'.
2800
2801 1999-02-18  Katsumi Yamaoka   <yamaoka@jpl.org>
2802
2803         * fns.c (base64_encode_1): Don't add a newline at the tail.
2804
2805 1999-03-08  Andy Piper  <andy@xemacs.org>
2806
2807         * menubar-msw.c (displayable_menu_item): correct off-by-one &
2808         handling.
2809
2810 1999-03-07  Martin Buchholz  <martin@xemacs.org>
2811
2812         * console-stream.h (struct stream_console):
2813         * event-unixoid.c (event_stream_unixoid_select_console):
2814         (event_stream_unixoid_unselect_console):
2815         * print.c (Fexternal_debugging_output):
2816         * sysdep.c (reset_one_device):
2817         * console-stream.c (stream_init_console):
2818         (stream_delete_console):
2819         (allocate_stream_console_struct): move into stream_init_console.
2820         (free_stream_console_struct): move into stream_delete_console.
2821         Use `fd' only for file descriptors.
2822         Therefore, rename members of struct stream_console.
2823
2824         * systime.h: Unix98 says sys/time.h should define select(), but
2825         some systems define that in unistd.h.  So include that file always.
2826
2827         * glyphs.h (MAYBE_IIFORMAT_METH): Don't use leading `_'.  Avoid
2828         multiple evaluation of first arg.  Do proper do {} while (0) wrapping.
2829         (HAS_IIFORMAT_METH_P): Prevent macro from being used in
2830         non-boolean context
2831         (MAYBE_IIFORMAT_DEVMETH): Use standard internal macro naming convention.
2832
2833         * EmacsShell.c:
2834         * balloon_help.c:
2835         Add #include <stdio.h>.
2836         Some versions of assert.h use printf() without #include'ing stdio.h
2837
2838         * free-hook.c (blocktype): Add gcpro5_type to blocktype.
2839         (log_gcpro): Remove unused variable FRAME.
2840         (show_gcprohist): Ansify.
2841         Comment the #endif's
2842
2843         * frame-x.c (x_delete_frame): Don't use FRAME_X_SHELL_WIDGET(f)
2844         after it's just been XtDestroy'ed!
2845
2846 1999-02-18  Martin Buchholz  <martin@xemacs.org>
2847
2848         * opaque.c (print_opaque):
2849         (sizeof_opaque):
2850         (equal_opaque):
2851         (hash_opaque):
2852         Egcs 1.1.1 seems to have a bug where
2853         INTP (p->size_or_chain)
2854         will crash XEmacs.  Fix by introducing intermediate variable.
2855
2856         * sound.c (Fdevice_sound_enabled_p): Fix compiler warning.
2857
2858         * dired.c (Fdirectory_files):
2859         (Ffile_name_completion):
2860         (Ffile_name_all_completions):
2861         (file_name_completion):
2862         - Use `directory' instead of `dirname' to sync with FSF Emacs and
2863         avoid compiler warnings.
2864         - Fix up docstrings so that C variables match documentation.
2865
2866 1999-03-05  Martin Buchholz  <martin@xemacs.org>
2867
2868         * alloc.c: (garbage_collect_1): Reorg code to make scope of local
2869         variables as small as possible to help out the compiler and the maintainer.
2870
2871         * alloc.c: (disksave_object_finalization):
2872         Set all the *-load-path variables to
2873         nil, not just load-path itself.  This gets the locate-file hash
2874         tables garbage collected BEFORE dump, and has the side effect of
2875         preventing crashes on OSF4.0+egcs.
2876
2877         * alloc.c:
2878         * gdbinit:
2879         * dbxrc:
2880         - Clean up gdb/dbx debugging support.
2881         - Storing an EMACS_INT in an enum is not 64-bit clean!
2882         - So change the enum to a set of separate variables.
2883         - Add test cases to help debug the debugging support!
2884         - Add `lisp-shadows' and `run-temacs' targets for dbx.
2885         - Both dbx and gdb have been tested now.
2886
2887 1999-03-05  XEmacs Build Bot <builds@cvs.xemacs.org>
2888
2889         * XEmacs 21.2.12 is released
2890
2891 1999-02-16  Kazuyuki IENAGA  <ienaga@jsys.co.jp>
2892
2893         * device-x.c: Support to find best visual without flashing.
2894
2895 1999-03-02  Paul Keusemann  <pkeusem@visi.com>
2896
2897         * database.c (berkdb_map): Add flags argument to cursor call (must
2898           be 0 according to docs) required for Berkeley DB 2.6.4 and later.
2899
2900 1999-03-03  Martin Buchholz  <martin@xemacs.org>
2901
2902         * hash.c:
2903         * hash.h:
2904         General cleanup.  Get free-hook.c working again.
2905         Remove unused functions:
2906         make_strings_hash_table, copy_hash, expand_hash_table.
2907
2908         * malloc.c:
2909         * mem-limits.h:
2910         Always use new ANSI-style function prototypes.
2911
2912         * unexalpha.c (unexec): Never use implicit int.
2913
2914         * sgiplay.c (close_sound_file):
2915         (play_sound_file):
2916         (restore_audio_port):
2917         (play_sound_data):
2918         (audio_initialize):
2919         (play_internal):
2920         (drain_audio_port):
2921         (write_mulaw_8_chunk):
2922         (write_linear_chunk):
2923         (write_linear_32_chunk):
2924         (initialize_audio_port):
2925         (open_audio_port):
2926         (set_channels):
2927         (set_output_format):
2928         (adjust_audio_volume):
2929         (get_current_volumes):
2930         (parse_snd_header):
2931         Always use new ANSI-style function prototypes.
2932         Use unistd.h for missing prototypes.
2933
2934         * unexelfsgi.c (round_up):
2935         (find_section):
2936         (unexec): Always use new ANSI-style function prototypes
2937
2938         * elhash.c (struct Lisp_Hash_Table): rename golden to golden_ratio
2939
2940         * console.h (struct console_methods): Always use full ANSI prototypes
2941
2942         * emacs.c (__sti__iflPNGFile_c___): Always use full ANSI prototypes
2943
2944 1999-03-02  Andy Piper  <andy@xemacs.org>
2945
2946         * event-stream.c (init_event_stream): make sure native mswindows
2947         gets an appropriate event loop.
2948
2949 1999-02-22  Andy Piper  <andy@xemacs.org>
2950
2951         * frame-msw.c (mswindows_make_frame_visible): use SW_SHOW rather
2952         than SW_SHOWNORMAL to prevent resizing of maximised frames.
2953         (mswindows_raise_frame): remove comment.
2954
2955 1999-03-01  XEmacs Build Bot <builds@cvs.xemacs.org>
2956
2957         * XEmacs 21.2.11 is released
2958
2959 1999-02-25  SL Baur  <steve@xemacs.org>
2960
2961         * mule-charset.c (Qleading_byte): New variable to implement
2962         charset-leading-byte function.
2963         (Fcharset_property): Use it.
2964         (syms_of_mule_charset): Initialize it.
2965         From Kazuyuki IENAGA <ienaga@jsys.co.jp>
2966
2967 1999-02-17  Kazuo Oishi <oishi@ae.agr.yamaguchi-u.ac.jp>
2968
2969         * glyphs-x.c (cononvert_EImage_to_XImage): correct
2970         bytes per pixel counting.
2971
2972 1999-02-15  Andy Piper  <andy@xemacs.org>
2973
2974         * s/cygwin32.h (BROKEN_SIGIO): don't define this as it causes
2975         major lockups.
2976
2977 1999-02-16  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
2978
2979         * fns.c (Fbase64_encode_string): New optional argument
2980         `NO_LINE_BREAK'.
2981
2982 1999-02-16  Martin Buchholz  <martin@xemacs.org>
2983
2984         * gdbinit:  Fix up commands to run temacs.  Add lisp-shadows command.
2985         * alloc.c (xcalloc):  undef xcalloc, just like xmalloc
2986
2987 1999-02-10  Martin Buchholz  <martin@xemacs.org>
2988
2989         * s/bsdos4.h: New file.  Port to BSDI BSD/OS 4.0.
2990         * xintrinsic.h:  Redo CONST support for X11 R4 compatibility.
2991
2992 1999-02-05  XEmacs Build Bot <builds@cvs.xemacs.org>
2993
2994         * XEmacs 21.2.10 is released
2995
2996 1999-02-02  Gleb Arshinov  <gleb@cs.stanford.edu>
2997
2998         * process-nt.c (nt_send_process):
2999         Fix for process-send-region/process-send-string breaking when size
3000         of the input > 128 chars: change maximum chunk size for process
3001         stream from 512 to 128, thus guaranteeing that ntpipe_shove_writer
3002         succeeds.
3003
3004 1999-02-02  XEmacs Build Bot <builds@cvs.xemacs.org>
3005
3006         * XEmacs 21.2.9 is released
3007
3008 1999-01-30  Martin Buchholz  <martin@xemacs.org>
3009
3010         * bytecode.c (funcall_compiled_function): Call
3011         UNBIND_TO_GCPRO instead of UNBIND_TO_GCPRO_VARIABLES_ONLY.
3012
3013         * backtrace.h (UNBIND_TO_GCPRO_VARIABLES_ONLY):
3014         #ifdef 0 out unused macro.
3015
3016 1999-01-27  Martin Buchholz  <martin@xemacs.org>
3017
3018         * gui.c (gui_parse_item_keywords_internal): Make static.
3019
3020 1999-01-21  Andy Piper  <andy@xemacs.org>
3021
3022         * glyphs-msw.c: add xface support.
3023         (mswindows_xface_instantiate): new function copied from glyphs-x.c
3024         (image_instantiator_format_create_glyphs_mswindows): do device
3025         specific initialisation for xfaces.
3026         (xbm_create_bitmap_from_data): line data must be padded to a word
3027         boundary.
3028
3029         * glyphs-x.c (xface_validate): moved to glyphs.c
3030         (xface_normalize): ditto.
3031         (xface_possible_dest_types): ditto.
3032         (image_instantiator_format_create_glyphs_x): do device specific
3033         initialisation for xfaces.
3034
3035         * glyphs.h: declare xface symbol.
3036
3037         * glyphs.c: move generic xface support here.
3038         (xface_validate): moved from glyphs-x.c
3039         (xface_normalize): ditto.
3040         (xface_possible_dest_types): ditto.
3041         (image_instantiator_format_create): xface declarations moved from
3042         glyphs-x.c.
3043
3044 1999-01-14  Adrian Aichner  <aichner@ecf.teradyne.com>
3045
3046         * event-stream.c (vars_of_event_stream): Fixing documentation.
3047
3048 1999-01-17  Gunnar Evermann  <ge204@eng.cam.ac.uk>
3049
3050         * glyphs-eimage.c (gif_instantiate): Correct handling of
3051         interlaced gifs to avoid writing past the end of the eimage
3052         buffer.
3053
3054 1999-01-13  Hrvoje Niksic  <hniksic@srce.hr>
3055
3056         * search.c (Freplace_match): Handle single backslash at end of
3057         NEWTEXT correctly.
3058
3059 1999-01-12  William M. Perry  <wmperry@aventail.com>
3060
3061         * eldap.c (Fldap_open): slow down interrupts around ldap_open to
3062           avoid connection errors.
3063
3064 1999-01-12  Andy Piper  <andy@xemacs.org>
3065
3066         * redisplay-output.c (redisplay_update_line): backout change that
3067         shouldn't have gone ine.
3068
3069 1999-01-09  Oscar Figueiredo  <Oscar.Figueiredo@di.epfl.ch>
3070
3071         * eldap.c (vars_of_ldap): Do no provide `ldap' here since it may
3072         collide with ldap.el
3073
3074 1999-01-11  Andy Piper  <andy@xemacs.org>
3075
3076         * redisplay.h (DISPLAY_LINE_HEIGHT): new macro.
3077         (DISPLAY_LINE_YPOS): new macro.
3078
3079         * redisplay-msw.c (mswindows_output_string): use it.
3080         (mswindows_output_pixmap): ditto.
3081         (mswindows_output_display_block): ditto.
3082
3083         * redisplay-output.c (redisplay_output_display_block): new
3084         function. just call the devmeth, maybe insert some generic code
3085         here later.
3086         (compare_display_blocks): use it.
3087         (output_display_line): ditto.
3088         (redisplay_unmap_subwindows_maybe): new function. potentially
3089         unmap subwindows in the given area.
3090
3091         * glyphs.c (reset_subwindow_cachels): unmap subwindows that we are
3092         resetting.
3093
3094 1999-01-10  J. Kean Johnston  <jkj@sco.com>
3095
3096         * Makefile.in.in: Set value of moduledir
3097         - Changed DUMPENV to include $(MODULEPATH)
3098         - Added install rule to install header files for use by ellcc.
3099
3100         * config.h.in: Added INHIBIT_SITE_MODULES
3101         - Added HAVE__DLERROR
3102         - Added HAVE_DLFCN_H
3103         - Added DLSYM_NEEDS_UNDERSCORE
3104
3105         * dll.c: Removed.
3106
3107         * emodules.c: New file containing dynamic loading code.
3108
3109         * emodules.h: New file.
3110
3111         * emacs.c: Added variables Vmodule_directory,
3112         Vsite_module_directory, Vconfigure_module_directory and
3113         Vconfigure_site_module_directory.
3114         - (main_1): Added new variable inhibit_site_modules and command
3115         line options `-no-site-modules' and `--no-site-modules'.
3116         - (main_1): Call syms_of_module() instead of syms_of_dll().
3117         - (main_1): Call vars_of_module().
3118         - (vars_of_emacs): Introduce inhibit-site-modules,
3119         module-directory, configure-module-directory,
3120         site-module-directory, and configure-site-module-directory to the
3121         Lisp reader.
3122
3123         * lisp.h: Declare load_module and list_modules, as well as
3124         Vmodule_directory, Vsite_module_directory,
3125         Vconfigure_module_directory and Vconfigure_site_module_directory.
3126
3127         * paths.h.in: Added PATH_MODULESEARCH and PATH_SITE_MODULES.
3128         - Added correct support for site-lisp directory.
3129
3130         * symbols.c (defsubr): Modified to allow modules to add new subrs
3131         after dump time.
3132         - (defsubr_macro): Same.
3133         - (defvar_magick): Only use purespace when not initialized, so
3134         that loaded modules can still add symbols.
3135
3136         * symsinit.h: Add definitions for syms_of_module(),
3137         vars_of_module().  Removed syms_of_dll().
3138
3139         * sysdll.c: Include dlfcn.h if HAVE_DLFCN_H is defined.
3140         - (dll_variable): Take DLSYM_NEEDS_UNDERSCORE into account.
3141         - (dll_error): use _dlerror() if HAVE__DLERROR is defined.
3142
3143         * s/sco5-shr.h (C_SWITCH_SYSTEM): Correct for modern gcc and
3144         explicitly pass -belf for native cc.
3145
3146         * s/sco5.h (LIB_GCC): Use -print-libgcc-file-name instead of
3147         hard-coding the library name.
3148
3149 1999-01-01    <martin@xemacs.org>
3150
3151         * device-x.c (Fx_set_font_path):
3152         Add proper cast to permit compilation under C++.
3153
3154         * buffer.c (directory_is_current_directory):
3155         Add proper casts to permit compilation under C++.
3156
3157 1998-12-30  Damon Lipparelli  <lipp@primus.com>
3158
3159         * event-msw.c (mswindows_wnd_proc):
3160           Fixed failure when building with MSVC 5.
3161
3162 1998-12-29  Martin Buchholz  <martin@xemacs.org>
3163
3164         * file-coding.c (decode_coding_iso2022):
3165         - Prevent crash when decoding ISO7/Lock detected files
3166         - the usual martin fiddling
3167
3168 1998-12-29  Jonathan Harris  <jhar@tardis.ed.ac.uk>
3169
3170         * event-msw.c:
3171           glyphs-msw.c:
3172           Fixed failures when building with MSVC.
3173         * unexnt.c (dump_bss_and_heap):
3174           Removed compiler warning by removing bss_data variable.
3175
3176 1998-12-18  Jim Radford  <radford@robby.caltech.edu>
3177
3178         * device-x.c (Fx_set_font_path, Fx_get_font_path): New functions
3179         so that packages that distribute their own fonts can access them.
3180
3181 1998-12-28  Andy Piper  <andy@xemacs.org>
3182
3183         * glyphs-msw.c (mswindows_button_instantiate): cope with buttons
3184         that have an image provided.
3185
3186         * glyphs.h: add Q_image decl.
3187
3188         * glyphs-widget.c new functionality allowing images in
3189         widgets.
3190         (check_valid_glyph_or_image): new function to validate
3191         glyphs passed in through :image.
3192         (widget_normalize): new function. convert :image parameters into
3193         real glyphs if not already so.
3194         (widget_instantiate_1): mess with size parameters to be similar to
3195         :image if provided.
3196         (syms_of_glyphs_widget): new keyword :image.
3197         (image_instantiator_format_create_glyphs_widget): normalize
3198         buttons and allow :image.
3199
3200 1998-12-27  Andy Piper  <andy@xemacs.org>
3201
3202         * frame-msw.c (mswindows_init_frame_1): warning elimination.
3203
3204         * glyphs-widget.c (check_valid_anything): no-op function.
3205         (check_valid_callback): check callbacks in gui_items.
3206         (check_valid_symbol): as it sounds.
3207         (check_valid_string_or_vector): ditto.
3208         (widget_validate): modified for descriptors that are vectors or
3209         sequences of keyword/val pairs.
3210         (widget_instantiate_1): ditto.
3211         (image_instantiator_format_create_glyphs_widget): allow gui_item
3212         keywords in the instantiator.
3213
3214         * gui.c (gui_parse_item_keywords_internal): renamed from
3215         gui_parse_item_keywords but taking error behaviour.
3216         (gui_parse_item_keywords): use it.
3217         (gui_parse_item_keywords_no_errors): ditto.
3218         (gui_item_add_keyval_pair): add Error_behavior flag and only
3219         signal invalid keywords if required.
3220
3221         * gui.h: new gui signatures.
3222
3223         * menubar.c (menu_parse_submenu_keywords): use new
3224         gui_item_add_keyval_pair signature.
3225
3226         * s/cygwin32.h: modify PTY_ITERATION to eliminate warnings.
3227
3228 1998-12-28  Martin Buchholz <martin@xemacs.org>
3229
3230         * XEmacs 21.2.8 is released.
3231
3232 1998-12-28  Martin Buchholz  <martin@xemacs.org>
3233
3234         * editfns.c (get_home_directory):
3235         (user-home-directory): Simplify.
3236
3237
3238         * callproc.c (child_setup):
3239         - Environment variables were being passed to inferior processes
3240           using internal encoding.
3241         - Convert to external encoding.
3242         - Rename local var `tem' to better name `tail'.
3243         - Use Flength instead of `manual' calculation.
3244
3245         * buffer.c (kill-buffer):
3246         (record-buffer):
3247         (set-buffer-major-mode):
3248         (current-buffer):
3249         - Fix up parameter names to correspond to docstrings.
3250         - Don't use `bufname' when a buffer will do as well.
3251         - Remove one unneeded GCPRO.
3252
3253         * buffer.h (initial_directory):
3254         * buffer.c (init_initial_directory):
3255         - use correct conversions between internal and external format.
3256         (directory_is_current_directory): new function
3257         (init_buffer): convert initial_directory to internal format.
3258         - solve crashes when current working directory is non-ASCII.
3259
3260         * alloc.c (xmalloc):
3261         (xcalloc):
3262         (xrealloc):
3263         - remove stupid casts, since XEmacs requires an ANSI C system.
3264         (lrecord_type_index): replace abort() with more readable assert().
3265
3266         (reset_lcrecord_stats): remove.
3267         (sweep_lcrecords_1):
3268         - replace call to reset_lcrecord_stats() with call to xzero().
3269
3270 1998-12-27  Martin Buchholz  <martin@xemacs.org>
3271
3272         * process-unix.c (unix_create_process):
3273         - Fix crash invoking program with non-ASCII name.
3274           Try invoking xemacs with SHELL=/bin/sh, then M-x shell.
3275         - Remove unused variable `env'.
3276         - Rename `temp' to better name `save_errno'.
3277         - Reorganize code for clarity.  But still too chicken to nuke the
3278           BSD 4.2 support.
3279
3280 1998-12-24  Martin Buchholz <martin@xemacs.org>
3281
3282         * XEmacs 21.2.7 is released.
3283
3284 1998-12-23  Martin Buchholz  <martin@xemacs.org>
3285
3286         * glyphs.c (decode_device_ii_format):
3287         - Fix indentation.
3288         - Use GET_C_STRING_FILENAME_DATA_ALLOCA with char *, not Extbyte *.
3289
3290         * glyphs-x.c (x_subwindow_instantiate):
3291         - A image instance mask was being assigned to a image instance type!
3292         - X_SUBWINDOW_INSTANCE_DATA (ii) is not an lvalue in C++.
3293
3294         * glyphs-msw.c (mswindows_initialize_dibitmap_image_instance):
3295         Fix indentation.
3296         * glyphs-x.h: Make indentation consistent.
3297
3298         * emacs.c (Fdump_emacs): Remove Steve Martin merge artifacts.
3299
3300         * glyphs-widget.c (check_valid_glyph): Warning suppression.
3301         - Make it static
3302         - #ifdef it out, since it's not actually used yet (FIX THIS!)
3303
3304         * glyphs-widget.c:
3305         * glyphs.h:
3306         Move declarations of decode_device_ii_format and
3307         decode_image_instantiator_format into glyphs.h where they belong.
3308
3309 1998-12-22  Martin Buchholz  <martin@xemacs.org>
3310
3311         * frame-x.c (x_delete_frame): Revert part of my changes at the
3312         suggestion of Gunnar Evermann - unfortunately no one really
3313         understands this code.
3314
3315         * callproc.c (init_callproc): code cleanup.
3316
3317         * free-hook.c (malloc):
3318         (check_malloc):
3319         (__free_hook):
3320         (__malloc_hook):
3321         (__realloc_hook):
3322         (block_input_malloc):
3323         (block_input_realloc):
3324         * device-x.c (x_delete_device):
3325         * emacs.c (voodoo_free_hook):
3326         * events.c (print_event):
3327         (CHECK_EVENT_TYPE):
3328         (CHECK_EVENT_TYPE2):
3329         (CHECK_EVENT_TYPE3):
3330         Use proper prototypes.
3331         Make C_E_T macros a little faster.
3332         Pedantic fiddly little changes.  You really don't care.
3333
3334 1998-12-22  Andy Piper  <andy@xemacs.org>
3335
3336         * redisplay-output.c (redisplay_clear_region): make sure that
3337         fg/bg colors get set even when we are in the border area.
3338
3339 1998-12-13  Martin Buchholz  <martin@xemacs.org>
3340
3341         * console-msw.c: Function definitions follow coding standards
3342         - This prevents e.g. find-tag on Lisp_Event finding DEVENT
3343
3344 1998-12-11  Martin Buchholz  <martin@xemacs.org>
3345
3346         * events.h (struct timeout_data):
3347         * event-tty.c (tty_timeout_to_emacs_event):
3348         * event-msw.c (mswindows_wm_timer_callback):
3349         * event-Xt.c (Xt_timeout_to_emacs_event):
3350         * event-msw.c (mswindows_cancel_dispatch_event):
3351         Make sure Lisp_Objects inside events are initialized to Qnil, not
3352         Qnull_pointer, which is now illegal.
3353
3354 1998-12-10  Martin Buchholz  <martin@xemacs.org>
3355
3356         * lisp.h: Fix up prototypes to match alloc.c
3357
3358 1998-12-08  Martin Buchholz  <martin@xemacs.org>
3359
3360         * windowsnt.h: Remove `support' for using index and rindex
3361
3362         * filelock.c (current_lock_owner):
3363         - Change uses of index -> strchr, rindex -> strrchr
3364
3365 1998-12-07  Martin Buchholz  <martin@xemacs.org>
3366
3367         * sysdep.c (set_descriptor_non_blocking):
3368         Since O_NONBLOCK is now always #defined, make use of fcntl
3369         conditional on F_SETFL being defined.
3370
3371         * console-msw.c (DHEADgER):
3372         (DOPAQUE_DATA):
3373         (DEVENT):
3374         (DCONS):
3375         (DCONSCDR):
3376         (DSTRING):
3377         (DVECTOR):
3378         (DSYMBOL):
3379         (DSYMNAME):
3380         - max_align_t should not be visible to the user of the
3381           XOPAQUE_DATA macro.
3382         - use Bufbyte instead of char
3383         - parens around (FOOP (obj)) are always redundant.
3384           If they were necessary, we should fix the macro instead.
3385         - Always use string_data(foo) instead of foo->data.
3386
3387
3388 1998-12-06  Martin Buchholz  <martin@xemacs.org>
3389
3390         * frame-msw.c (mswindows_init_frame_1):
3391         - use make_lisp_hash_table, not Fmake_hash_table
3392         - include elhash.h
3393
3394         * lisp.h:
3395         * alloc.c (make_vector): remove travesty
3396         (Fmake_vector):
3397         (make_pure_vector):
3398         (pure_cons):
3399         (make_bit_vector_internal):
3400         (make_bit_vector):
3401         (make_bit_vector_from_byte_vector):
3402         (Fmake_bit_vector):
3403         - make vector_equal a little faster.
3404         - Don't use variable name `new'.
3405         - Use size_t instead of EMACS_INT.
3406         - usual Martin-style pointless bit-twiddling.
3407
3408         * fns.c (mapcar1):
3409         (Fmapconcat):
3410         (Fmapcar):
3411         (Fmapvector):
3412         Make mapcar faster.  In particular, make
3413           (mapc #'identity long-string)
3414         MUCH faster under Mule.
3415         * tests/automated/lisp-tests.el: Test 'em!
3416
3417         * bytecode.c (Ffetch_bytecode): Fix crash when loading lazy-loaded
3418         bytecode.
3419
3420 1998-12-01  Martin Buchholz  <martin@xemacs.org>
3421
3422         * menubar-x.c (menu_item_descriptor_to_widget_value_1): Always use
3423         Qnil, not NULL, to initialize `null' Lisp_Objects.
3424
3425 1998-11-29  Hrvoje Niksic  <hniksic@srce.hr>
3426
3427         * specifier.c (display_table_validate): Update.
3428
3429         * redisplay.c (create_text_block): Use them.
3430
3431         * glyphs.c (display_table_entry): New function.
3432         (get_display_tables): Ditto.
3433
3434 1998-12-15  Oscar Figueiredo  <Oscar.Figueiredo@di.epfl.ch>
3435
3436         * eldap.c (toplevel): Mention that eldap.c compiles with
3437         OpenLDAP libs
3438         (Fldap_open): Use `GET_C_STRING_OS_DATA_ALLOCA'
3439         (Fldap_search_internal): Ditto
3440
3441 1998-12-11  Martin Buchholz  <martin@xemacs.org>
3442
3443         * event-msw.c (mswindows_cancel_dispatch_event):
3444         Gratuitous code prettification
3445
3446
3447 1998-12-07  Hrvoje Niksic  <hniksic@srce.hr>
3448
3449         * fns.c (Fnconc): Fix use of wrong_type_argument().
3450
3451         * floatfns.c (Ffloat): Fix docstring.
3452         (Ffloat): Fix use of wrong_type_argument().
3453         (Fabs): Ditto.
3454         (extract_float): Ditto.
3455         (Fceiling): Ditto.
3456         (Fround): Ditto.
3457         (Ftruncate): Ditto.
3458
3459 1998-12-06  Martin Buchholz  <martin@xemacs.org>
3460
3461         * frame-msw.c (mswindows_init_frame_1):
3462         - use make_lisp_hash_table, not Fmake_hash_table
3463         - include elhash.h
3464
3465         * lisp.h:
3466         * alloc.c (make_vector): remove travesty
3467         (Fmake_vector):
3468         (make_pure_vector):
3469         (pure_cons):
3470         (make_bit_vector_internal):
3471         (make_bit_vector):
3472         (make_bit_vector_from_byte_vector):
3473         (Fmake_bit_vector):
3474         - make vector_equal a little faster.
3475         - Don't use variable name `new'.
3476         - Use size_t instead of EMACS_INT.
3477         - usual Martin-style pointless bit-twiddling.
3478
3479         * fns.c (mapcar1):
3480         (Fmapconcat):
3481         (Fmapcar):
3482         (Fmapvector):
3483         Make mapcar faster.  In particular, make
3484           (mapc #'identity long-string)
3485         MUCH faster under Mule.
3486         * tests/automated/lisp-tests.el: Test 'em!
3487
3488         * bytecode.c (Ffetch_bytecode): Fix crash when loading lazy-loaded
3489         bytecode.
3490
3491 1998-12-02  Didier Verna  <verna@inf.enst.fr>
3492
3493         * menubar-x.c (menu_item_descriptor_to_widget_value_1): set the
3494         accelerator field to nil for labels.
3495
3496 1998-12-16  Jonathan Harris  <jhar@tardis.ed.ac.uk>
3497
3498         * menubar-msw.c (displayable_menu_item):
3499           Escape occurrences of '&' and support occurrences of the
3500          '%_' accelerator indicator in menus.
3501
3502 1998-11-26  Didier Verna  <verna@inf.enst.fr>
3503
3504         * dired.c (Fdirectory_files): use make_string instead of
3505         make_ext_string on the filename. The conversion external->internal
3506         format is already done in sys_readdir.
3507
3508 1998-12-15  Gunnar Evermann  <ge204@eng.cam.ac.uk>
3509
3510         * glyphs.c (normalize_image_instantiator): GCPRO instantiator
3511
3512 1998-12-16  Jonathan Harris  <jhar@tardis.ed.ac.uk>
3513
3514         * event-msw.c
3515           (Belatedly) added Kirill to list of file's authors.
3516           emacs_mswindows_quit_p: Don't process WM_PAINT messages in
3517           quit checking. WM_PAINT messages cause redisplay, but
3518           windows' states are not necessarily stable when this function
3519           gets called.
3520
3521 1998-12-17  Andy Piper  <andy@xemacs.org>
3522
3523         * strftime.c (zone_name): CONSTify.
3524
3525 1998-12-15  Andy Piper  <andy@xemacs.org>
3526
3527         * glyphs-msw.c (mswindows_combo_instantiate): ditto.
3528         (mswindows_widget_property): return Qunbound when no property available.
3529         (mswindows_button_property): ditto.
3530         (mswindows_combo_property): ditto.
3531         (mswindows_widget_set_property): ditto.
3532
3533         * glyphs-widget.c (check_valid_item_list): use properties.
3534
3535         * glyphs.h (struct Lisp_Image_Instance): we have properties now.
3536
3537         * glyphs.c (Fset_image_instance_property): allow setting of arbitrary properties.
3538         (Fimage_instance_property): ditto.
3539         * glyphs-widget.c (widget_property): ditto.
3540         (widget_set_property): ditto.
3541
3542         * frame-msw.c (mswindows_set_frame_pointer): SetCursor() as well
3543         as setting the class cursor so that GC actually changes the
3544         cursor.
3545
3546         * config.h: don't undef MAIL_USE_POP.
3547
3548 1998-12-13  Andy Piper  <andy@xemacs.org>
3549
3550         * glyphs-msw.c
3551         (image_instantiator_format_create_glyphs_mswindows): line ->
3552         label.
3553         (mswindows_label_instantiate): ditto. Play with window flags.
3554         (image_instantiator_format_create_glyphs_mswindows): ditto.
3555         (vars_of_glyphs_mswindows): provide Qlabel as we support it now.
3556
3557         * glyphs-widget.c (widget_instantiate_1): re-jig autosizing to
3558         cope with lines and labels.
3559         (static_instantiate): use widget_instantiate_1.
3560         line -> label.
3561         (image_instantiator_format_create_glyphs_widget): ditto.
3562
3563 1998-12-10  Andy Piper  <andy@xemacs.org>
3564
3565         * Makefile.in.in (objs): add gui.o
3566
3567 1998-12-10  Andy Piper  <andy@xemacs.org>
3568
3569         * gui.c: adjust defines of HAVE_POPUPS so that we can build with
3570         no window system.
3571
3572 1998-12-09  Andy Piper  <andy@xemacs.org>
3573
3574         * glyphs.c (finalize_image_instance): mark glyphs changed when an
3575         image instance is removed so that the subwindow cache gets reset
3576         and thus destroyed images get GC'd.
3577
3578 1998-12-08  Andy Piper  <andy@xemacs.org>
3579
3580         * gui-msw.c (mswindows_handle_gui_wm_command): call
3581         MARK_SUBWINDOWS_CHANGED.
3582
3583         * glyphs-msw.c (mswindows_finalize_image_instance): make sure
3584         subwindows really get deleted.
3585
3586         * redisplay.c: new variable subwindows_changed[_set].
3587         (redisplay_window): use it.
3588         (redisplay_frame): ditto.
3589         (redisplay_device): ditto.
3590         (redisplay_without_hooks): ditto.
3591
3592         * device.h (MARK_DEVICE_SUBWINDOWS_CHANGED): new macro for
3593         subwindows redisplay as per glyphs equivalent.
3594         * redisplay.h: ditto.
3595         (MARK_SUBWINDOWS_CHANGED): ditto.
3596         (RESET_CHANGED_SET_FLAGS): ditto.
3597         * frame.h (MARK_FRAME_SUBWINDOWS_CHANGED): ditto.
3598
3599 1998-12-07  Andy Piper  <andy@xemacs.org>
3600
3601         * frame.c (Fmake_frame): reset subwindow cachels on non-stream
3602         frames.
3603
3604         * redisplay.c (redisplay_frame): invalidate subwindow cachels.
3605
3606         * event-msw.c (mswindows_wnd_proc): catch the various WM_CTLCOLOR*
3607         messages and paint widget glyphs as appropriate with their face fg
3608         & bg.
3609
3610 1998-12-06  Andy Piper  <andy@xemacs.org>
3611
3612         * glyphs-msw.c (vars_of_glyphs_mswindows): provide widget types
3613         here rather than in glyphs-widget - do this because we only want
3614         to provide what is really available.
3615
3616         * glyphs.c (Fimage_instance_property): new function to get the
3617         properties of image instances. wires through to console specific
3618         methods and then to widget specific methods.
3619         (Fset_image_instance_property): ditto but for setting widget properties.
3620         (check_valid_face): make extern so that it can be used elsewhere.
3621
3622         * glyphs-widget.c (widget_property): new function. gets the
3623         properties of widgets in general and wires the function through to
3624         widget specific ones.
3625         (widget_set_property): ditto but for setting widget properties.
3626
3627         * glyphs-msw.c (mswindows_combo_instantiate): Add functionality to
3628         add items to the list. Play with window styles a bit to get the
3629         desired effect.
3630         (mswindows_widget_property): break out specific widget properties.
3631         (mswindows_button_property): new function. gets the checked state
3632         of a button.
3633         (mswindows_combo_property): new function. gets the current
3634         selection in the combo box.
3635         (mswindows_widget_set_property): new function. sets specific
3636         properties of specific widgets.
3637
3638         * glyphs-widget.c (check_valid_item_list): new function. check
3639         that items for a combo-box are just a list of strings.
3640         (combo_validate): new function. check there is an item list.
3641         (widget_instantiate_1): new function. renamed from
3642         widget_instantiate so that we can do slightly different things for
3643         other widgets.
3644         (widget_instantiate): call widget_instantiate_1.
3645         (combo_instantiate): new function to instantiate combo boxes,
3646         defaults height to the pixel height of the number of items in the
3647         box.
3648         (syms_of_glyphs_widget): move widget keywords here.
3649         (image_instantiator_format_create_glyphs_widget): use new combo
3650         functions.
3651
3652 1998-12-04  Andy Piper  <andy@xemacs.org>
3653
3654         * event-msw.c (mswindows_wnd_proc): mule-ize.
3655
3656         * glyphs.c (pixmap_to_lisp_data): mule-ize.
3657
3658         * glyphs-msw.c (extract_xpm_color_names): mule-ize.
3659         (resource_name_to_resource): ditto.
3660         (mswindows_resource_instantiate): ditto.
3661         (mswindows_widget_instantiate): ditto.
3662         (mswindows_widget_set_property): ditto.
3663
3664         * redisplay-output.c (redisplay_output_subwindow): don't show
3665         subwindows if they are obscured at the edge of the frame, emacs
3666         gets into some sort of redisplay loop otherwise.
3667
3668         * gui.h: prototype gui_item_selected_p.
3669
3670         * gui.c (gui_item_selected_p): new function to determine the
3671         selected state of a gui_item.
3672
3673         * frame.h (struct frame): add subwindows_changed flag.
3674
3675         * redisplay.c (redisplay_frame): call update_frame_subwindows ().
3676
3677         * glyphs.c (update_subwindow): new function to update a
3678         subwindow's state.
3679         (update_frame_subwindows): new function to update all the
3680         subwindows on a frame.
3681
3682         * console.h (struct console_methods): add update_subwindow.
3683
3684         * glyphs-msw.c (mswindows_widget_property): return selected state
3685         for selected property.
3686         (mswindows_update_subwindow): new function. updates widget glyphs
3687         in redisplay as per menubars or toolbars e.g. selected state.
3688         (console_type_create_glyphs_mswindows): add update_subwindow.
3689
3690 1998-12-03  Andy Piper  <andy@xemacs.org>
3691
3692         * console-tty.c (syms_of_console_tty): MULE -> FILE_CODING since
3693         tty coding system things are such.
3694
3695         * glyphs-widget.c (widget_face_font_info): new function for
3696         pulling out height and width metrics for a widget's face.
3697         (widget_text_to_pixel_conversion): calculate pixel sizes of text
3698         for widgets.
3699
3700         * event-msw.c (mswindows_drain_windows_queue): translate messages
3701         that are destined for subwindows. This makes edit fields interact
3702         with the keyboard correctly.
3703         nuke warnings by #ifndef'ing out stuff not required by msg select().
3704
3705         * glyphs.h (INITIALIZE_IMAGE_INSTANTIATOR_FORMAT_NO_SYM): new
3706         macro defining the iiforma without the symbol required by widget.
3707         (INITIALIZE_IMAGE_INSTANTIATOR_FORMAT): use it.
3708
3709         * general.c (syms_of_general): add Qwidget, Qselected.
3710
3711         * faces.c (complex_vars_of_faces): add widget face inheriting from
3712         gui-element face.
3713
3714 1998-11-09  Andy Piper  <andy@xemacs.org>
3715
3716         * window.h (struct window): add a cache of subwindows on a
3717         per-window basis.
3718
3719         * window.c (mark_window): mark the subwindow_instance_cache.
3720         (allocate_window): initialise the subwindow instance_cache.
3721
3722         * toolbar-x.c (x_output_toolbar): call redisplay_clear_region
3723         instead of the devmeth.
3724         (x_clear_toolbar): ditto.
3725
3726         * redisplay-x.c (x_output_display_block): call
3727         redisplay_output_subwindow for subwindows and widgets.
3728
3729         * redisplay-tty.c (tty_output_display_block): add IMAGE_WIDGET to
3730         types to do nothing for.
3731
3732         * lisp.h: declare new widget/subwindow symbols.
3733
3734         * glyphs.c (image_instantiate): cache subwindows on a per-window
3735         basis.
3736         (subwindow_possible_dest_types): new function for subwindow dest
3737         types.
3738         (subwindow_instantiate): generic instantiation of a
3739         subwindow. specialised by device multi-methods.
3740         (Fsubwindowp): moved from glyphs-x.c. adapted for glyph-based
3741         subwindows.
3742         (Fimage_instance_subwindow_id): ditto.
3743         (Fresize_subwindow): ditto.
3744         (Fforce_subwindow_map): ditto.
3745
3746         * glyphs-x.c (x_print_image_instance): remove subwindow
3747         stuff. Handled genrically in glyphs.c.
3748         (x_image_instance_equal): ditto.
3749         (x_image_instance_hash): ditto.
3750         (x_finalize_image_instance): delete subwindows when required.
3751         (mark_subwindow) (print_subwindow) (finalize_subwindow)
3752         (subwindow_hash) (Fmake_subwindow): deleted because of new,
3753         glyph-based, subwindow implementation.
3754         (Fsubwindow_height) (Fsubwindow_width) (Fsubwindow_xid): aliased
3755         in glyphs.el
3756         (Fsubwindowp) (Fresize_subwindow) (Fforce_subwindow_map): moved to
3757         glyphs.c.
3758         (x_unmap_subwindow): new function to unmap X subwindows.
3759         (x_map_subwindow): new function to map X subwindows.
3760         (x_subwindow_instantiate): new function to instantiate X
3761         subwindows.
3762         (x_resize_subwindow): new function to resize X subwindows.
3763         (console_type_create_glyphs_x): add subwindow functions.
3764         (image_instantiator_format_create_glyphs_x): add device
3765         multi-methods for xpm, xbm and subwindow.
3766
3767         * glyphs.el (subwindow-xid): old alias for new subwindow functions.
3768         (subwindow-width): ditto.
3769         (subwindow-height): ditto.
3770
3771         * glyphs-msw.c (mswindows_widget_instantiate): new function for
3772         generally instantiating ms subwindows. Used by
3773         mswindows_*_instantiate.
3774         (mswindows_edit_instantiate): instantiate an edit field on a
3775         mswindows frame.
3776
3777 1998-11-04  Andy Piper  <andy@xemacs.org>
3778
3779         * symsinit.h: declare new functions.
3780
3781         * redisplay.h: declare new functions.
3782
3783         * redisplay-x.c (x_output_display_block): call
3784         redisplay_clear_region rather than x_clear_region.
3785         (x_output_string): ditto.
3786         (x_output_pixmap): ditto.
3787         (x_clear_to_window_end): ditto.
3788         (x_output_eol_cursor): ditto.
3789         (x_clear_region): only do X specific things. other duties handled
3790         in redisplay_clear_region.
3791
3792         * redisplay-tty.c (tty_clear_region): do tty specific things - some
3793         duties moved to redisplay_clear_region.
3794
3795         * redisplay-output.c (clear_left_border): use
3796         redisplay_clear_region instead of device method.
3797         (clear_right_border): ditto.
3798         (output_display_line): ditto.
3799         (redisplay_output_subwindow): ditto.
3800         (redisplay_clear_top_of_window): ditto.
3801         (redisplay_clear_region): perform duties previously handled by
3802         device methods. call the appropriate device method at the
3803         end. unmap subwindows if necessary.
3804
3805         * redisplay-msw.c (mswindows_output_string): use
3806         redisplay_clear_region instead of mswindows_clear_region.
3807         (mswindows_clear_to_window_end): ditto.
3808         (mswindows_output_display_block): output subwindows when required.
3809         (mswindows_clear_region): only do mswindows specific things,
3810         everything else is now handled in redisplay_clear_region.
3811
3812         * gui.h: add item id hash defines and declare function prototypes.
3813
3814         * gui.c (mark_gui_item): new function for marking gui_items.
3815         (gui_item_hash): generic hash function for generating command ids
3816         for gui_items.
3817
3818         * gui-msw.c: new file.
3819         (mswindows_handle_gui_wm_command): new function to handle widget
3820         callbacks.
3821
3822         * glyphs.h (MAYBE_IIFORMAT_DEVMETH): new function for device
3823         multi-methods.
3824         (IIFORMAT_HAS_SHARED_METHOD): ditto.
3825         (DEFINE_DEVICE_IIFORMAT): ditto.
3826         (INITIALIZE_DEVICE_IIFORMAT): ditto.
3827         (struct Lisp_Image_Instance): add widget and subwindow data plus
3828         appropriate access functions.
3829
3830         * glyphs.c (decode_device_ii_format): new function for decoding
3831         image instantiator functions based on a device type as well as an
3832         image format.
3833         (decode_image_instantiator_format): just call
3834         decode_device_ii_format with nil device.
3835         (add_entry_to_device_ii_format_list): new function for per device
3836         method instances.
3837         (add_entry_to_image_instantiator_format_list): just call
3838         add_entry_to_device_ii_format_list with nil device.
3839         (check_valid_vector): new function.
3840         (instantiate_image_instantiator): instantiate using per-format
3841         method and then per-format-per-device method (device
3842         multi-methods). signal an error if neither is possible.
3843         (mark_image_instance): cope with subwindows and widgets.
3844         (print_image_instance): ditto.
3845         (image_instance_equal): ditto.
3846         (image_instance_hash): ditto.
3847         (allocate_glyph): ditto.
3848         (glyph_width): ditto.
3849         (glyph_height_internal): ditto.
3850         (xpm_instantiate): removed because of device multi-methods.
3851         (mark_subwindow_cachels): new cachel functions for caching
3852         instantiated subwindows on a per-frame basis. mostly copied from
3853         glyph cachel functions.
3854         (update_subwindow_cachel_data): ditto.
3855         (add_subwindow_cachel): ditto.
3856         (get_subwindow_cachel_index): ditto.
3857         (reset_subwindow_cachels): ditto.
3858         (mark_subwindow_cachels_as_not_updated): ditto.
3859         (unmap_subwindow): generic unmapping of subwindows based on cachel
3860         data.
3861         (map_subwindow): ditto.
3862         (initialize_subwindow_image_instance): generic initialisation of
3863         subwindow data.
3864         (syms_of_glyphs): add widget keywords.
3865
3866         * glyphs-x.h (struct x_subwindow_data): convert Lisp_Subwindow to
3867         x_subwindow_data.
3868
3869 1998-11-04  Andy Piper  <andy@xemacs.org>
3870
3871         * glyphs-widget.c: new file for instantiating widget type glyphs.
3872         (widget_possible_dest_types): new general dest type function for
3873         widgets.
3874         (widget_validate): ditto.
3875         (initialize_widget_image_instance): ditto
3876         (widget_instantiate): ditto. Sets up fg/bg, gui_item parsing
3877         before handing on control to device multi-methods.
3878         (syms_of_glyphs_widget): new function.
3879         (image_instantiator_format_create_glyphs_widget): new function,
3880         added placeholders for button, edit, combo, scrollbar
3881         (vars_of_glyphs_widget): new function.
3882
3883         * glyphs-msw.h (WIDGET_INSTANCE_MSWINDOWS_HANDLE): new define for
3884         storing window ids of widgets.
3885
3886         * glyphs-msw.c (mswindows_finalize_image_instance): cope with
3887         deletion of widget and subwindow glyphs.
3888         (mswindows_unmap_subwindow): new device function for unmapping
3889         subwindows on a msw frame.
3890         (mswindows_map_subwindow): ditto.
3891         (mswindows_register_image_instance): register instantiated widgets
3892         with the widget hastable.
3893         (mswindows_button_instantiate): instantiate a button type widget
3894         on an msw frame.
3895         (mswindows_subwindow_instantiate): instanttiate a subwindow on a
3896         mswindows frame.
3897         (image_instantiator_format_create_glyphs_mswindows): add device
3898         multi-methods for xbm, xpm, subwindow, edit and button.
3899
3900         * frame.h (struct frame): add subwindow_cachels dynarr for caching
3901         information about subwindows visible on the current frame. used by
3902         redisplay_clear_region to unmap subwindows as required.
3903
3904         * frame.c (mark_frame): mark subwindow_cachels.
3905         (allocate_frame_core): instantiate subwindow_cachels.
3906
3907         * frame-msw.c (mswindows_init_frame_1): instntiate and mark the
3908         widget hashtable.
3909
3910         * event-msw.c (mswindows_wnd_proc): add call to
3911         mswindows_handle_gui_wm_command to handle widget callbacks.
3912
3913         * emacs.c (main_1): add calls to glyphs-widget initialisation
3914         routines.
3915
3916         * console.h (struct console_methods): add
3917         unmap/map_subwindow_method for use be redisplay_clear_region to
3918         map and unmap subwindows. Remove xpm and xbm stuff - now dealt
3919         with by image instantiator multi-methods. Add
3920         resize_subwindow_method.
3921
3922         * console-stream.c (stream_clear_region): change signature to
3923         match new generic clear region function.
3924
3925         * Makefile.in.in: add glyphs-widget.o to list of objects.
3926
3927         * console-msw.h (struct mswindows_frame): add widget hashtable for
3928         wiring command ids to callbacks.
3929
3930 1998-12-16  Andy Piper  <andy@xemacs.org>
3931
3932         * XEmacs 21.2.6 is released
3933
3934 1998-12-08  Hrvoje Niksic  <hniksic@srce.hr>
3935
3936         * md5.c (Fmd5): Correctly initiate string input stream.
3937
3938         * Makefile.in.in (tests): Add md5-tests.el.
3939
3940 1998-12-06  Martin Buchholz  <martin@xemacs.org>
3941
3942         * lisp.h:
3943         * alloc.c (make_vector): remove travesty
3944         (Fmake_vector):
3945         (make_pure_vector):
3946         (pure_cons):
3947         (make_bit_vector_internal):
3948         (make_bit_vector):
3949         (make_bit_vector_from_byte_vector):
3950         (Fmake_bit_vector):
3951         - make vector_equal a little faster.
3952         - Don't use variable name `new'.
3953         - Use size_t instead of EMACS_INT.
3954         - usual Martin-style pointless bit-twiddling.
3955
3956         * fns.c (mapcar1):
3957         (Fmapconcat):
3958         (Fmapcar):
3959         (Fmapvector):
3960         Make mapcar faster.  In particular, make
3961           (mapc #'identity long-string)
3962         MUCH faster under Mule.
3963         * tests/automated/lisp-tests.el: Test 'em!
3964
3965 1998-12-06  Martin Buchholz  <martin@xemacs.org>
3966
3967         * bytecode.c (Ffetch_bytecode): Fix crash when loading lazy-loaded
3968         bytecode.
3969
3970 1998-12-13  Martin Buchholz  <martin@xemacs.org>
3971
3972         * console-msw.c: Function definitions follow coding standards
3973         - This prevents e.g. find-tag on Lisp_Event finding DEVENT
3974
3975 1998-12-11  Martin Buchholz  <martin@xemacs.org>
3976
3977         * events.h (struct timeout_data):
3978         * event-tty.c (tty_timeout_to_emacs_event):
3979         * event-msw.c (mswindows_wm_timer_callback):
3980         * event-Xt.c (Xt_timeout_to_emacs_event):
3981         * event-msw.c (mswindows_cancel_dispatch_event):
3982         Make sure Lisp_Objects inside events are initialized to Qnil, not
3983         Qnull_pointer, which is now illegal.
3984
3985 1998-12-10  Martin Buchholz  <martin@xemacs.org>
3986
3987         * lisp.h: Fix up prototypes to match alloc.c
3988
3989 1998-12-09  Andy Piper  <andy@xemacs.org>
3990
3991         * glyphs-msw.c (init_image_instance_from_xbm_inline): don't use
3992         XSETINT for assigning lisp objects.
3993
3994 1998-12-07  Martin Buchholz  <martin@xemacs.org>
3995
3996         * opaque.h:
3997         * console-msw.c (DHEADER):
3998         (DOPAQUE_DATA):
3999         (DEVENT):
4000         (DCONS):
4001         (DCONSCDR):
4002         (DSTRING):
4003         (DVECTOR):
4004         (DSYMBOL):
4005         (DSYMNAME):
4006         - max_align_t should not be visible to the user of the
4007           XOPAQUE_DATA macro.
4008         - use Bufbyte instead of char
4009         - parens around (FOOP (obj)) are always redundant.
4010           If they were necessary, we should fix the macro instead.
4011         - Always use string_data(foo) instead of foo->data.
4012
4013 1998-12-07  Martin Buchholz  <martin@xemacs.org>
4014
4015         * sysdep.c (set_descriptor_non_blocking):
4016         Since O_NONBLOCK is now always #defined, make use of fcntl
4017         conditional on F_SETFL being defined.
4018
4019 1998-12-09  Andy Piper  <andy@xemacs.org>
4020
4021         * menubar-msw.c (mswindows_handle_wm_command): add back in checks
4022         that got removed in the merge
4023
4024 1998-11-30  Greg Klanderman  <greg@alphatech.com>
4025
4026         * dired.c (vars_of_dired): bugfix for previous conditionalization
4027         of user-name-completion on non- Windows NT.
4028
4029 1998-12-08  Martin Buchholz  <martin@xemacs.org>
4030
4031         * windowsnt.h: Remove `support' for using index and rindex
4032
4033         * filelock.c (current_lock_owner):
4034         - Change uses of index -> strchr, rindex -> strrchr
4035
4036 1998-12-06  Martin Buchholz  <martin@xemacs.org>
4037
4038         * frame-msw.c (mswindows_init_frame_1):
4039         - use make_lisp_hash_table, not Fmake_hash_table
4040         - include elhash.h
4041
4042 1998-12-05  XEmacs Build Bot <builds@cvs.xemacs.org>
4043
4044         * XEmacs 21.2.5 is released
4045
4046 1998-11-30  Martin Buchholz  <martin@xemacs.org>
4047
4048         * xselect.c (receive_incremental_selection):
4049         * xselect.c (x_get_window_property):
4050         * xmu.c (XmuReadBitmapDataFromFile):
4051         * xmu.c (XmuCursorNameToIndex):
4052         * xgccache.c (describe_gc_cache):
4053         * xgccache.c (gc_cache_lookup):
4054         * xgccache.c (free_gc_cache):
4055         * xgccache.c (make_gc_cache):
4056         * window.h:
4057         * window.c (map_windows_1):
4058         * window.c (Fother_window_for_scrolling):
4059         * window.c (window_scroll):
4060         * window.c (change_window_height):
4061         * window.c (Fsplit_window):
4062         * window.c (window_left_gutter_width):
4063         * window.c (window_modeline_height):
4064         * window.c (invalidate_vertical_divider_cache_in_window):
4065         * window.c (window_needs_vertical_divider_1):
4066         * window.c (update_mirror_internal):
4067         * window.c (SET_LAST_FACECHANGE):
4068         * widget.c (Fwidget_plist_member):
4069         * unexec.c (copy_text_and_data):
4070         * unexcw.c (copy_executable_and_dump_data_section):
4071         * tooltalk.doc:
4072         * tooltalk.c (struct Lisp_Tooltalk_Pattern):
4073         * tooltalk.c (struct Lisp_Tooltalk_Message):
4074         * toolbar.h (struct toolbar_button):
4075         * toolbar.c (default_toolbar_visible_p_changed_in_window):
4076         * toolbar.c (recompute_overlaying_specifier):
4077         * toolbar.c (toolbar_validate):
4078         * toolbar.c (toolbar_button_at_pixpos):
4079         * toolbar.c (get_toolbar_coords):
4080         * toolbar.c (update_frame_toolbars):
4081         * toolbar-x.c:
4082         * toolbar-msw.c (mswindows_handle_toolbar_wm_command):
4083         * toolbar-msw.c (mswindows_find_toolbar_pos):
4084         * toolbar-msw.c (mswindows_output_toolbar):
4085         * toolbar-msw.c (mswindows_clear_toolbar):
4086         * toolbar-msw.c:
4087         * systty.h:
4088         * syssignal.h:
4089         * sysproc.h:
4090         * sysfile.h:
4091         * sysdll.c:
4092         * sysdep.h:
4093         * sysdep.c (rmdir):
4094         * sysdep.c (sys_fopen):
4095         * sysdep.c (sys_open):
4096         * sysdep.c (tty_init_sys_modes_on_device):
4097         * sysdep.c (get_eof_char):
4098         * sysdep.c (child_setup_tty):
4099         * sysdep.c (set_descriptor_non_blocking):
4100         * syntax.h:
4101         * syntax.c (scan_words):
4102         * syntax.c:
4103         * symsinit.h:
4104         * symeval.h (struct symbol_value_varalias):
4105         * symeval.h (struct symbol_value_forward):
4106         * symbols.c (syms_of_symbols):
4107         * symbols.c (init_symbols_once_early):
4108         * symbols.c (Fbuilt_in_variable_type):
4109         * symbols.c (Fsymbol_value_in_buffer):
4110         * symbols.c (default_value):
4111         * symbols.c (Fset):
4112         * symbols.c (find_symbol_value_quickly):
4113         * symbols.c (store_symval_forwarding):
4114         * symbols.c (set_default_console_slot_variable):
4115         * symbols.c (set_default_buffer_slot_variable):
4116         * symbols.c (verify_ok_for_buffer_local):
4117         * symbols.c (symbol_is_constant):
4118         * symbols.c (oblookup):
4119         * symbols.c (Funintern):
4120         * symbols.c (Fintern):
4121         * symbols.c (check_obarray):
4122         * sunplay.c:
4123         * specifier.h (struct specifier_methods):
4124         * specifier.h:
4125         * specifier.c (specifier_instance):
4126         * specifier.c (specifier_instance_from_inst_list):
4127         * specifier.c (decode_locale_type):
4128         * specifier.c (specifier_equal):
4129         * specifier.c (finalize_specifier):
4130         * specifier.c (prune_specifiers):
4131         * specifier.c (kill_specifier_buffer_locals):
4132         * sound.c (init_native_sound):
4133         * sound.c:
4134         * signal.c (alarm):
4135         * search.c (Fmatch_data):
4136         * search.c (match_limit):
4137         * search.c (Freplace_match):
4138         * search.c (skip_chars):
4139         * search.c (scan_buffer):
4140         * search.c:
4141         * scrollbar.c (specifier_vars_of_scrollbar):
4142         * scrollbar.c (Fscrollbar_set_hscroll):
4143         * scrollbar.c (vertical_scrollbar_changed_in_window):
4144         * scrollbar.c (release_window_mirror_scrollbars):
4145         * scrollbar.c (free_scrollbar_instance):
4146         * scrollbar-x.c:
4147         * scrollbar-msw.c:
4148         * s/msdos.h (O_BINARY):
4149         * s/linux.h:
4150         * s/freebsd.h (LIBS_TERMCAP):
4151         * regex.c (re_match_2_internal):
4152         * regex.c (compile_extended_range):
4153         * regex.c (POP_FAILURE_POINT):
4154         * regex.c (PUSH_FAILURE_POINT):
4155         * redisplay.h (RESET_CHANGED_SET_FLAGS):
4156         * redisplay.h:
4157         * redisplay.h (struct display_line):
4158         * redisplay.h (struct rune):
4159         * redisplay.c (vars_of_redisplay):
4160         * redisplay.c (redisplay_variable_changed):
4161         * redisplay.c (UPDATE_CACHE_RETURN):
4162         * redisplay.c (validate_line_start_cache):
4163         * redisplay.c (mark_redisplay_structs):
4164         * redisplay.c (mark_glyph_block_dynarr):
4165         * redisplay.c (window_line_number):
4166         * redisplay.c (redisplay_frame):
4167         * redisplay.c (redisplay_window):
4168         * redisplay.c (generate_modeline):
4169         * redisplay.c (create_right_glyph_block):
4170         * redisplay.c (create_left_glyph_block):
4171         * redisplay.c (create_text_block):
4172         * redisplay.c:
4173         * redisplay-x.c (x_output_hline):
4174         * redisplay-x.c (x_output_vertical_divider):
4175         * redisplay-tty.c (tty_output_display_block):
4176         * redisplay-output.c (output_display_line):
4177         * redisplay-output.c:
4178         * redisplay-msw.c (mswindows_output_vertical_divider):
4179         * redisplay-msw.c (mswindows_ring_bell):
4180         * redisplay-msw.c (mswindows_output_cursor):
4181         * redisplay-msw.c:
4182         * rangetab.c:
4183         * ralloc.c:
4184         * puresize.h (RAW_PURESIZE):
4185         * profile.c (syms_of_profile):
4186         * profile.c (Fstart_profiling):
4187         * profile.c (sigprof_handler):
4188         * profile.c:
4189         * procimpl.h:
4190         * process.c (vars_of_process):
4191         * process.c (read_process_output):
4192         * process.c (get_process):
4193         * process.c:
4194         * process-unix.c (unix_open_multicast_group):
4195         * process-unix.c (unix_get_tty_name):
4196         * process-unix.c (unix_send_process):
4197         * process-unix.c (unix_reap_exited_processes):
4198         * process-unix.c (unix_create_process):
4199         * process-unix.c (unix_init_process_io_handles):
4200         * process-unix.c (allocate_pty):
4201         * process-unix.c:
4202         * process-nt.c (nt_open_network_stream):
4203         * process-nt.c (nt_update_status_if_terminated):
4204         * process-nt.c (nt_finalize_process_data):
4205         * process-nt.c:
4206         * print.c (debug_short_backtrace):
4207         * print.c (debug_backtrace):
4208         * print.c (print_symbol):
4209         * print.c (print_internal):
4210         * print.c (print_cons):
4211         * print.c (Fwrite_char):
4212         * print.c (print_prepare):
4213         * print.c (canonicalize_printcharfun):
4214         * print.c (output_string):
4215         * print.c:
4216         * opaque.h:
4217         * opaque.c (allocate_managed_opaque):
4218         * opaque.c:
4219         * offix.c (DndSetData):
4220         * objects.c (face_boolean_create):
4221         * objects.c (font_instantiate):
4222         * objects.c (font_create):
4223         * objects.c (color_create):
4224         * objects.c (finalize_font_instance):
4225         * objects.c (finalize_color_instance):
4226         * objects.c:
4227         * objects-x.c (x_font_instance_truename):
4228         * objects-x.c:
4229         * objects-x.c (x_initialize_font_instance):
4230         * objects-x.c (allocate_nearest_color):
4231         * objects-tty.c (tty_initialize_font_instance):
4232         * objects-tty.c (tty_initialize_color_instance):
4233         * objects-msw.c (mswindows_initialize_color_instance):
4234         * ntproc.c (syms_of_ntproc):
4235         * ntproc.c (Fwin32_set_process_priority):
4236         * ntproc.c (sys_spawnve):
4237         * ntproc.c:
4238         * ntheap.c (get_data_end):
4239         * nt.c (period):
4240         * nt.c:
4241         * nt.c (stat):
4242         * nt.c (generate_inode_val):
4243         * nt.c (sys_rename):
4244         * nas.c:
4245         * mule-wnnfns.c (Fwnn_hinsi_number):
4246         * mule-wnnfns.c (Fwnn_yuragi):
4247         * mule-wnnfns.c (Fwnn_common_learn):
4248         * mule-wnnfns.c (Fwnn_suffix_learn):
4249         * mule-wnnfns.c (Fwnn_prefix_learn):
4250         * mule-wnnfns.c (Fwnn_okuri_learn):
4251         * mule-wnnfns.c (Fwnn_complex_conv):
4252         * mule-wnnfns.c (Fwnn_last_is_first):
4253         * mule-wnnfns.c (Fwnn_bmodify_dict_add):
4254         * mule-wnnfns.c (Fwnn_notrans_dict_add):
4255         * mule-wnnfns.c (Fwnn_fiusr_dict_add):
4256         * mule-wnnfns.c (Fwnn_fisys_dict_add):
4257         * mule-wnnfns.c (Fwnn_hinsi_list):
4258         * mule-wnnfns.c (Fwnn_fuzokugo_set):
4259         * mule-wnnfns.c (Fwnn_dict_search):
4260         * mule-wnnfns.c (Fwnn_word_toroku):
4261         * mule-wnnfns.c (Fwnn_hindo_update):
4262         * mule-wnnfns.c (Fwnn_bunsetu_henkou):
4263         * mule-wnnfns.c (Fwnn_kakutei):
4264         * mule-wnnfns.c (Fwnn_begin_henkan):
4265         * mule-wnnfns.c (Fwnn_dict_comment):
4266         * mule-wnnfns.c (Fwnn_dict_add):
4267         * mule-wnnfns.c (Fwnn_open):
4268         * mule-mcpath.c (mc_getcwd):
4269         * mule-coding.c (vars_of_mule_coding):
4270         * mule-coding.c (convert_to_external_format):
4271         * mule-coding.c (encoding_marker):
4272         * mule-coding.c (decoding_marker):
4273         * mule-coding.c (Fcopy_coding_system):
4274         * mule-coding.c (Fmake_coding_system):
4275         * mule-coding.c (Fcoding_system_list):
4276         * mule-coding.c (Ffind_coding_system):
4277         * mule-coding.c (symbol_to_eol_type):
4278         * mule-coding.c:
4279         * mule-charset.c (complex_vars_of_mule_charset):
4280         * mule-charset.c (vars_of_mule_charset):
4281         * mule-charset.c (Fset_charset_ccl_program):
4282         * mule-charset.c (struct charset_list_closure):
4283         * mule-charset.c (Ffind_charset):
4284         * mule-charset.c (make_charset):
4285         * mule-charset.c (non_ascii_valid_char_p):
4286         * mule-charset.c:
4287         * mule-ccl.c (ccl_driver):
4288         * mule-canna.c (c2mu):
4289         * mule-canna.c (Fcanna_henkan_begin):
4290         * mule-canna.c (Fcanna_parse):
4291         * mule-canna.c (Fcanna_store_yomi):
4292         * mule-canna.c (Fcanna_touroku_string):
4293         * mule-canna.c (Fcanna_initialize):
4294         * minibuf.c:
4295         * menubar.c (menu_parse_submenu_keywords):
4296         * menubar-x.c (make_dummy_xbutton_event):
4297         * menubar-x.c (set_frame_menubar):
4298         * menubar-x.c (menu_item_descriptor_to_widget_value_1):
4299         * menubar-x.c:
4300         * menubar-msw.h:
4301         * menubar-msw.c (mswindows_popup_menu):
4302         * menubar-msw.c (mswindows_update_frame_menubars):
4303         * menubar-msw.c (mswindows_handle_wm_command):
4304         * menubar-msw.c (unsafe_handle_wm_initmenu_1):
4305         * menubar-msw.c (unsafe_handle_wm_initmenupopup_1):
4306         * menubar-msw.c (update_frame_menubar_maybe):
4307         * menubar-msw.c (populate_or_checksum_helper):
4308         * menubar-msw.c (empty_menu):
4309         * menubar-msw.c:
4310         * md5.c:
4311         * marker.c (set_marker_internal):
4312         * marker.c (print_marker):
4313         * malloc.c:
4314         * make-src-depend:
4315         * lstream.c (lisp_buffer_rewinder):
4316         * lstream.c (mark_lstream):
4317         * lrecord.h:
4318         * lrecord.h (struct lrecord_header):
4319         * lread.c (readevalloop):
4320         * lread.c (locate_file):
4321         * lread.c (locate_file_in_directory):
4322         * lread.c (Flocate_file):
4323         * lread.c (load_force_doc_string_unwind):
4324         * lread.c (ebolify_bytecode_constants):
4325         * lread.c:
4326         * lisp.h:
4327         * lisp-union.h:
4328         * lisp-disunion.h:
4329         * linuxplay.c (linux_play_data_or_file):
4330         * linuxplay.c (audio_init):
4331         * line-number.c:
4332         * keymap.h:
4333         * keymap.c (describe_map):
4334         * keymap.c (describe_map_mapper):
4335         * keymap.c (Fdescribe_bindings_internal):
4336         * keymap.c (Fsingle_key_description):
4337         * keymap.c (map_keymap_sorted):
4338         * keymap.c (get_relevant_keymaps):
4339         * keymap.c (Flookup_key):
4340         * keymap.c (raw_lookup_key_mapper):
4341         * keymap.c (Fdefine_key):
4342         * keymap.c (Fevent_matches_key_specifier_p):
4343         * keymap.c (key_desc_list_to_event):
4344         * keymap.c (define_key_parser):
4345         * keymap.c (define_key_check_and_coerce_keysym):
4346         * keymap.c (keymap_submaps):
4347         * keymap.c (keymap_store_internal):
4348         * keymap.c (keymap_delete_inverse_internal):
4349         * keymap.c (keymap_store_inverse_internal):
4350         * keymap.c (print_keymap):
4351         * keymap.c (Lisp_Keymap):
4352         * keymap.c:
4353         * intl.c:
4354         * insdel.c (convert_bufbyte_string_into_emchar_dynarr):
4355         * insdel.c (make_gap):
4356         * input-method-xlib.c (get_XIM_input):
4357         * input-method-xlib.c (XIM_init_frame):
4358         * imgproc.c:
4359         * hash.h:
4360         * hash.c:
4361         * gui.c:
4362         * gui-x.c (button_item_to_widget_value):
4363         * gui-x.c (popup_selection_callback):
4364         * glyphs.h (struct image_instantiator_methods):
4365         * glyphs.c (mark_glyph_cachels):
4366         * glyphs.c (Fglyph_type):
4367         * glyphs.c (image_instantiate):
4368         * glyphs.c (image_create):
4369         * glyphs.c (make_image_instance_1):
4370         * glyphs.c (finalize_image_instance):
4371         * glyphs.c:
4372         * glyphs-x.c (finalize_subwindow):
4373         * glyphs-x.c (xface_validate):
4374         * glyphs-x.c (x_locate_pixmap_file):
4375         * glyphs-x.c (convert_EImage_to_XImage):
4376         * glyphs-msw.c:
4377         * glyphs-msw.c (mswindows_resource_instantiate):
4378         * glyphs-msw.c (xpm_to_eimage):
4379         * glyphs-msw.c (convert_EImage_to_DIBitmap):
4380         * glyphs-eimage.c (tiff_instantiate):
4381         * glyphs-eimage.c (png_instantiate):
4382         * glyphs-eimage.c (struct png_error_struct):
4383         * glyphs-eimage.c (gif_memory_storage):
4384         * glyphs-eimage.c:
4385         * gifrlib.h:
4386         * getloadavg.c (getloadavg):
4387         * getloadavg.c:
4388         * gdbinit:
4389         * free-hook.c (log_gcpro):
4390         * free-hook.c (check_malloc):
4391         * free-hook.c (check_free):
4392         * free-hook.c (ROUND_UP_TO_PAGE):
4393         * free-hook.c:
4394         * frame.h (struct frame):
4395         * frame.h:
4396         * frame.c (change_frame_size_1):
4397         * frame.c (allocate_frame_core):
4398         * frame.c:
4399         * frame-x.c (x_focus_on_frame):
4400         * frame-x.c (x_init_frame_2):
4401         * frame-x.c (x_popup_frame):
4402         * frame-x.c (xemacs_XtPopup):
4403         * frame-x.c:
4404         * frame-x.c (Foffix_start_drag_internal):
4405         * frame-x.c (x_cde_destroy_callback):
4406         * frame-x.c (x_wm_hack_wm_protocols):
4407         * frame-tty.c (tty_frame_visible_p):
4408         * frame-msw.c (mswindows_make_frame_invisible):
4409         * frame-msw.c (mswindows_after_init_frame):
4410         * frame-msw.c (mswindows_init_frame_1):
4411         * fns.c (syms_of_fns):
4412         * fns.c (Fbase64_decode_string):
4413         * fns.c (Fnconc):
4414         * fns.c (Ffillarray):
4415         * fns.c (Fobject_plist):
4416         * fns.c (Fget):
4417         * fns.c (Fcanonicalize_lax_plist):
4418         * fns.c (Fcanonicalize_plist):
4419         * fns.c (Fplist_remprop):
4420         * fns.c (Fplist_get):
4421         * fns.c (advance_plist_pointers):
4422         * fns.c (internal_plist_put):
4423         * fns.c (Fnreverse):
4424         * fns.c (Fremassq):
4425         * fns.c (Felt):
4426         * fns.c (Fsubstring):
4427         * fns.c (Fbvconcat):
4428         * fns.c (Flength):
4429         * fns.c (length_with_bytecode_hack):
4430         * fns.c (print_bit_vector):
4431         * fns.c:
4432         * floatfns.c (Ffloor):
4433         * floatfns.c:
4434         * floatfns.c (in_float_error):
4435         * fileio.c (Ffile_modes):
4436         * fileio.c (Fexpand_file_name):
4437         * fileio.c (Fmake_temp_name):
4438         * fileio.c (Ffile_name_nondirectory):
4439         * fileio.c (Ffile_name_directory):
4440         * file-coding.h:
4441         * file-coding.c (vars_of_mule_coding):
4442         * file-coding.c (convert_to_external_format):
4443         * file-coding.c (encoding_marker):
4444         * file-coding.c (decoding_marker):
4445         * file-coding.c (Fcopy_coding_system):
4446         * file-coding.c (Fmake_coding_system):
4447         * file-coding.c (struct coding_system_list_closure):
4448         * file-coding.c (Ffind_coding_system):
4449         * file-coding.c (symbol_to_eol_type):
4450         * file-coding.c:
4451         * faces.h (struct face_cachel):
4452         * faces.c (vars_of_faces):
4453         * faces.c (face_property_was_changed):
4454         * faces.c (mark_face_cachels):
4455         * faces.c (temporary_faces_list):
4456         * faces.c (struct face_list_closure):
4457         * faces.c:
4458         * extents.h (struct extent):
4459         * extents.c (vars_of_extents):
4460         * extents.c (struct copy_string_extents_1_arg):
4461         * extents.c (add_string_extents_mapper):
4462         * extents.c (Fextent_property):
4463         * extents.c (Fset_extent_property):
4464         * extents.c (symbol_to_glyph_layout):
4465         * extents.c (properties_equal):
4466         * extents.c (print_extent):
4467         * extents.c (print_extent_1):
4468         * extents.c (extent_in_region_p):
4469         * extents.c (gap_array_make_gap):
4470         * extents.c:
4471         * events.h (struct Lisp_Event):
4472         * events.h:
4473         * events.c (Fevent_properties):
4474         * events.c (format_event_object):
4475         * events.c (Fmake_event):
4476         * events.c (event_equal):
4477         * events.c (print_event):
4478         * events.c (mark_event):
4479         * event-stream.c ((read-char)
4480         * event-stream.c (vars_of_event_stream):
4481         * event-stream.c (syms_of_event_stream):
4482         * event-stream.c (Fset_recent_keys_ring_size):
4483         * event-stream.c (Fsit_for):
4484         * event-stream.c (Fnext_event):
4485         * event-stream.c (execute_help_form):
4486         * event-stream.c (maybe_kbd_translate):
4487         * event-stream.c:
4488         * event-msw.c (vars_of_event_mswindows):
4489         * event-msw.c (mswindows_wnd_proc):
4490         * event-msw.c (mswindows_need_event):
4491         * event-msw.c (mswindows_drain_windows_queue):
4492         * event-msw.c (mswindows_pump_outstanding_events):
4493         * event-msw.c:
4494         * event-msw.c (slurp_thread):
4495         * event-msw.c (struct ntpipe_slurp_stream):
4496         * event-msw.c (HANDLE_TO_USID):
4497         * event-Xt.c (emacs_Xt_handle_magic_event):
4498         * event-Xt.c (x_event_to_emacs_event):
4499         * event-Xt.c (x_reset_modifier_mapping):
4500         * event-Xt.c (x_reset_key_mapping):
4501         * event-Xt.c:
4502         * eval.c (syms_of_eval):
4503         * eval.c (warn_when_safe):
4504         * eval.c (warn_when_safe_lispobj):
4505         * eval.c (Fbacktrace_frame):
4506         * eval.c (Fbacktrace):
4507         * eval.c (top_level_set):
4508         * eval.c (unbind_to_hairy):
4509         * eval.c (specbind_magic):
4510         * eval.c (specbind_unwind_wasnt_local):
4511         * eval.c (call2_trapping_errors):
4512         * eval.c (call1_trapping_errors):
4513         * eval.c (catch_them_squirmers_call2):
4514         * eval.c (call0_trapping_errors):
4515         * eval.c (run_hook_trapping_errors):
4516         * eval.c (catch_them_squirmers_eval_in_buffer):
4517         * eval.c (call4_in_buffer):
4518         * eval.c (call3_in_buffer):
4519         * eval.c (call2_in_buffer):
4520         * eval.c (call1_in_buffer):
4521         * eval.c (call0_in_buffer):
4522         * eval.c (run_hook):
4523         * eval.c (run_hook_with_args_in_buffer):
4524         * eval.c (Fapply):
4525         * eval.c (Feval):
4526         * eval.c (do_autoload):
4527         * eval.c (un_autoload):
4528         * eval.c (Fautoload):
4529         * eval.c (Finteractive_p):
4530         * eval.c (Fcommand_execute):
4531         * eval.c (signal_quit):
4532         * eval.c (call_with_suspended_errors):
4533         * eval.c (signal_error):
4534         * eval.c (return_from_signal):
4535         * eval.c (Fcall_with_condition_handler):
4536         * eval.c (run_condition_case_handlers):
4537         * eval.c (condition_case_1):
4538         * eval.c (Funwind_protect):
4539         * eval.c (unwind_to_catch):
4540         * eval.c (internal_catch):
4541         * eval.c (Fmacroexpand_internal):
4542         * eval.c (Fuser_variable_p):
4543         * eval.c (Fdefconst):
4544         * eval.c (Fdefvar):
4545         * eval.c (Ffunction):
4546         * eval.c (signal_call_debugger):
4547         * eval.c (call_debugger):
4548         * eval.c:
4549         * emacs.c (main):
4550         * emacs.c (sort_args):
4551         * emacs.c (main_1):
4552         * elhash.h:
4553         * elhash.c:
4554         * editfns.c (Fencode_time):
4555         * editfns.c (Fdecode_time):
4556         * editfns.c (Fuser_full_name):
4557         * editfns.c:
4558         * editfns.c (save_excursion_restore):
4559         * ecrt0.c:
4560         * dynarr.c:
4561         * doprnt.c (emacs_doprnt_1):
4562         * doc.c (verify_doc_mapper):
4563         * doc.c (Fsnarf_documentation):
4564         * doc.c (Fdocumentation):
4565         * dll.c:
4566         * dired.c (user_name_completion):
4567         * dired.c (Fdirectory_files):
4568         * dialog-x.c:
4569         * dialog-msw.c:
4570         * dgif_lib.c (FreeSavedImages):
4571         * dgif_lib.c (DGifGetImageDesc):
4572         * device.h:
4573         * device.h (struct device):
4574         * device.c (Fselect_device):
4575         * device.c (allocate_device):
4576         * device.c:
4577         * device-x.c (Fx_keysym_on_keyboard_p):
4578         * device-x.c (Fx_valid_keysym_name_p):
4579         * device-x.c (x_IO_error_handler):
4580         * device-x.c (x_delete_device):
4581         * device-x.c (x_finish_init_device):
4582         * device-x.c (x_init_device):
4583         * device-x.c:
4584         * device-msw.c (mswindows_init_device):
4585         * dbxrc:
4586         * database.c (vars_of_database):
4587         * database.c (Fput_database):
4588         * database.c (Fopen_database):
4589         * database.c (berkdb_remove):
4590         * database.c (berkdb_put):
4591         * database.c (Fdatabasep):
4592         * database.c (print_database):
4593         * database.c:
4594         * data.c (vars_of_data):
4595         * data.c (syms_of_data):
4596         * data.c (init_errors_once_early):
4597         * data.c (prune_weak_lists):
4598         * data.c (finish_marking_weak_lists):
4599         * data.c (print_weak_list):
4600         * data.c (Fmod):
4601         * data.c (Fstring_to_number):
4602         * data.c (Fnumber_to_string):
4603         * data.c (Findirect_function):
4604         * data.c (Fsetcdr):
4605         * data.c (Ffloatp):
4606         * data.c (Fsubr_interactive):
4607         * data.c (Farrayp):
4608         * data.c (Fkeywordp):
4609         * data.c (Fnull):
4610         * data.c:
4611         * console.h (CONSOLE_NAME):
4612         * console.h:
4613         * console.c (vars_of_console):
4614         * console.c (Fselect_console):
4615         * console.c:
4616         * console-x.h (DEVICE_X_COLORMAP):
4617         * console-x.h (struct x_device):
4618         * console-x.c (x_device_to_console_connection):
4619         * console-tty.h (CONSOLE_TTY_FINAL_CURSOR_Y):
4620         * console-tty.c (tty_init_console):
4621         * console-tty.c:
4622         * console-msw.h (struct mswindows_frame):
4623         * conslots.h:
4624         * config.h.in:
4625         * cmds.c (internal_self_insert):
4626         * cmds.c (Fforward_line):
4627         * cmds.c (Fforward_char):
4628         * cmds.c:
4629         * cmdloop.c:
4630         * chartab.c (mark_char_table_entry):
4631         * chartab.c:
4632         * casefiddle.c (casify_word):
4633         * callproc.c (child_setup):
4634         * callproc.c (Fcall_process_internal):
4635         * callproc.c:
4636         * callint.c (Fcall_interactively):
4637         * bytecode.h:
4638         * bytecode.c (execute_rare_opcode):
4639         * bytecode.c (execute_optimized_program):
4640         * bytecode.c:
4641         * bufslots.h:
4642         * buffer.h (BUFFER_REALLOC):
4643         * buffer.h (GET_CHARPTR_INT_DATA_ALLOCA):
4644         * buffer.h (GET_CHARPTR_EXT_DATA_ALLOCA):
4645         * buffer.h:
4646         * buffer.h (MAP_INDIRECT_BUFFERS):
4647         * buffer.h (CHECK_LIVE_BUFFER):
4648         * buffer.c (init_initial_directory):
4649         * buffer.c (complex_vars_of_buffer):
4650         * buffer.c (vars_of_buffer):
4651         * buffer.c (finish_init_buffer):
4652         * buffer.c (Fget_file_buffer):
4653         * buffer.c (Fbuffer_list):
4654         * buffer.c (mark_buffer):
4655         * balloon_help.c (balloon_help_move_to_pointer):
4656         * balloon_help.c (show_help):
4657         * balloon_help.c:
4658         * backtrace.h:
4659         * alloc.c (garbage_collect_1):
4660         * alloc.c (sweep_strings):
4661         * alloc.c (sweep_compiled_functions):
4662         * alloc.c (sweep_bit_vectors_1):
4663         * alloc.c (sweep_vectors_1):
4664         * alloc.c (sweep_lcrecords_1):
4665         * alloc.c (tick_lcrecord_stats):
4666         * alloc.c (pure_string_sizeof):
4667         * alloc.c (mark_conses_in_list):
4668         * alloc.c (mark_object):
4669         * alloc.c (report_pure_usage):
4670         * alloc.c (make_pure_float):
4671         * alloc.c (make_pure_string):
4672         * alloc.c (free_managed_lcrecord):
4673         * alloc.c (mark_string):
4674         * alloc.c (noseeum_make_marker):
4675         * alloc.c (allocate_event):
4676         * alloc.c (Fbit_vector):
4677         * alloc.c (Fvector):
4678         * alloc.c (make_float):
4679         * alloc.c (Fmake_list):
4680         * alloc.c (Flist):
4681         * alloc.c (FREE_FIXED_TYPE_WHEN_NOT_IN_GC):
4682         * alloc.c (PUT_FIXED_TYPE_ON_FREE_LIST):
4683         * alloc.c (DECLARE_FIXED_TYPE_ALLOC):
4684         * alloc.c (dbg_constants):
4685         * alloc.c (gc_record_type_p):
4686         * alloc.c (free_lcrecord):
4687         * alloc.c (xmalloc):
4688         * alloc.c (NOSEEUM_INCREMENT_CONS_COUNTER):
4689         * abbrev.c:
4690         * Makefile.in.in (mostlyclean):
4691         * Makefile.in.in (external_client_xlib_objs_nonshared):
4692         * Makefile.in.in (temacs_link_args):
4693         * Makefile.in.in (release):
4694         * Makefile.in.in (dnd_objs):
4695         * Makefile.in.in (objs):
4696         * Makefile.in.in (PROGNAME):
4697         * EmacsShell.c: cast strings to (XtPointer)
4698         * EmacsFrame.c: cast strings to (XtPointer)
4699         - mega patch
4700         - rewrite basic lisp functions for speed
4701         - rewrite bytecode interpreter for speed
4702         - rewrite list looping constructs for speed and safety using
4703           tortoise/hare.
4704         - use size_t where appropriate.
4705         - new hashtable implementation
4706         - cleanup implementation of opaques
4707         - opaques can now be purecopy'ed
4708         - move some cl functionality into C for speed.
4709         - remove last remaining VMS support
4710         - spelling fixes
4711         - improve gdb/dbx debugger support
4712         - move pure.c back into alloc.c for performance
4713         - enable report_pure_usage() if --memory-usage-stats
4714         - remove remnants of Energize support (EMACS_BTL, cadillac...)
4715         - don't use symbols with leading `_' or embedded `__'
4716         - globally cleanup duplicated semicolons `;;'
4717         - I give in on %p vs %lx - we use printf("%lx",(long) p)
4718           globally.
4719         - globally replace O_NDELAY with O_NONBLOCK.
4720         - globally replace CDISABLE with _POSIX_VDISABLE.
4721         - use O_RDONLY and O_RDWR instead of magic `0' and `2'.
4722         - define (and maybe use!) STDERR_FILENO and friends.
4723         - add support for macros defined in C
4724         - `when', `unless', `not' and `defalias' now defined in C,
4725           so that they are universally available.
4726         - rename defvar_mumble to defvar_magic
4727         - rename RETURN__ to RETURN_SANS_WARNINGS
4728         - use consistent style of initial caps in error messages
4729         - implement last, butlast, nbutlast, copy-list in C.
4730         - provide typedefs for all struct Lisp_foo types
4731         - Lisp_Objects must be initialized to Qnil rather than 0.
4732         - make sure XEmacs runs (slowly) with always_gc == 1;
4733         - fast and safe LOOP_* macros
4734         - change calls to XSETOBJ to XSETFOO
4735         - replace calls to XSETINT by make_int()
4736         - plug up memory leaks
4737         - use style markobj (foo), not silly ((markobj) (foo))
4738         - use XFLOAT_DATA (obj) instead of float_data (XFLOAT (obj))
4739
4740 1998-12-02  P. E. Jareth Hein  <jareth@camelot.co.jp>
4741
4742         * unexec.c: Changed a #ifndef statement to fix XEmacs on BSDI 3.0
4743
4744 1998-11-28  SL Baur  <steve@altair.xemacs.org>
4745
4746         * XEmacs 21.2-beta4 is released.
4747
4748 1998-11-27  SL Baur  <steve@altair.xemacs.org>
4749
4750         * mule-charset.c (complex_vars_of_mule_charset): Fix graphic
4751         property in control-1 charset.
4752         From Julian Bradfield <jcb@daimi.au.dk>
4753
4754 1998-11-26  Jan Vroonhof  <vroonhof@math.ethz.ch>
4755
4756         * gui-x.c (button_item_to_widget_value): Ignore :key-sequence
4757         keyword.
4758         Add stub for :label.
4759
4760         * gui.c (gui_item_add_keyval_pair): ditto.
4761
4762         * menubar-x.c (menu_item_descriptor_to_widget_value_1): Ignore
4763         :key-sequence keyword.
4764         Add stub for:label.
4765         Support :active for submenus like the Windows code and FSF Emacs.
4766
4767 1998-11-27  Hrvoje Niksic  <hniksic@srce.hr>
4768
4769         * dired.c (make_directory_hash_table): make_string() is OK because
4770         readdir() Mule-encapsulates.
4771
4772 1998-11-26  Hrvoje Niksic  <hniksic@srce.hr>
4773
4774         * fns.c (Fbase64_encode_string): Fix docstring.
4775         (Fbase64_decode_string): Ditto.
4776
4777 1998-11-26  Hrvoje Niksic  <hniksic@srce.hr>
4778
4779         * editfns.c (Ftranslate_region): Use
4780         convert_bufbyte_string_into_emchar_string().
4781
4782 1998-11-25  Hrvoje Niksic  <hniksic@srce.hr>
4783
4784         * editfns.c (Ftranslate_region): Accept vectors and char-tables as
4785         well as strings.
4786         (Ftranslate_region): Turn table into an array of Emchars for
4787         larger regions.
4788
4789 1998-11-25  Hrvoje Niksic  <hniksic@srce.hr>
4790
4791         * chartab.c (Freset_char_table): Fix wrong placement of #endif.
4792
4793 1998-11-24  Hrvoje Niksic  <hniksic@srce.hr>
4794
4795         * chartab.c (Freset_char_table): Don't blindly fill chartables of
4796         type `char' with nils.
4797
4798         * chartab.c (canonicalize_char_table_value): Coerce ints to chars
4799         for tables of type `char'.
4800
4801 1998-11-26  Didier Verna  <verna@inf.enst.fr>
4802
4803         * input-method-xlib.c (Initialize_Locale): don't call
4804         XtSetLanguageProc. We've done the whole work here.
4805         * input-method-xfs.c (Initialize_Locale): ditto.
4806         * input-method-motif.c (Initialize_Locale): ditto.
4807
4808 1998-11-26  Didier Verna  <verna@inf.enst.fr>
4809
4810         * process-unix.c (unix_create_process): handle properly
4811         Vfile_name_coding_system for converting the program and directory
4812         names.
4813
4814 1998-11-27  SL Baur  <steve@altair.xemacs.org>
4815
4816         * m/arm.h: New file.
4817         From James LewisMoss <dres@ioa.com>
4818
4819 1998-11-27  Takeshi Hagiwara  <hagiwara@ie.niigata-u.ac.jp>
4820
4821         * m/mips-nec.h:
4822         Fix the realpath() problem of UnixWare2.1.3.
4823         Patches for NEC's sysv4.2 machine.
4824
4825 1998-11-25  Hrvoje Niksic  <hniksic@srce.hr>
4826
4827         * dired.c (Fdirectory_files): Remove redundant code.
4828
4829 1998-11-25  Hrvoje Niksic  <hniksic@srce.hr>
4830
4831         * fns.c (free_malloced_ptr): New function.
4832         (XMALLOC_OR_ALLOCA): New macro.
4833         (XMALLOC_UNBIND): Ditto.
4834         (Fbase64_encode_region): Use malloc() for large blocks; arrange it
4835         to be freed in case of non-local exit.
4836         (Fbase64_encode_string): Ditto.
4837         (Fbase64_decode_region): Ditto.
4838         (Fbase64_decode_string): Ditto.
4839         (STORE_BYTE): New macro.
4840         (base64_decode_1): Use it.
4841
4842 1998-11-25  Hrvoje Niksic  <hniksic@srce.hr>
4843
4844         * fns.c (base64_value_to_char): Base64 stuff.
4845
4846 1998-11-24  Hrvoje Niksic  <hniksic@srce.hr>
4847
4848         * editfns.c (Fbuffer_substring): New function.
4849
4850         * lisp.h: Declare make_string_from_buffer_no_extents().
4851
4852         * insdel.c (make_string_from_buffer_1): New function.
4853         (make_string_from_buffer_no_extents): Ditto.
4854
4855 1998-11-15  Michael Sperber [Mr. Preprocessor]  <sperber@informatik.uni-tuebingen.de>
4856
4857         * linuxplay.c: Including <fcntl.h> instead of <sys/fcntl.h> makes
4858         sound work on AIX with OSS installed.  Linux should still work.
4859
4860 1998-11-03  Andy Piper  <andyp@parallax.co.uk>
4861
4862         * config.h.in: name change for cygwin/version.h
4863
4864         * configure.in: check for cygwin/version.h now.
4865
4866         * cygwin32.h: track CYGWIN_DLL_VERSION_MAJOR ->
4867         CYGWIN_VERSION_DLL_MAJOR name change in cygwin b20.
4868         move cygwin32/version.h to cygwin/version.h
4869
4870 1998-11-03  Olivier Galibert  <galibert@pobox.com>
4871
4872         * lisp.h  (struct  Lisp_Bit_Vector): Fix declaration of  bits from
4873         int to long.
4874
4875 1998-10-22  Andy Piper  <andyp@parallax.co.uk>
4876
4877         * cygwin32.h: track CYGWIN_DLL_VERSION_MAJOR ->
4878         CYGWIN_VERSION_DLL_MAJOR name change in cygwin b20.
4879         enable BROKEN_SIGIO under b20 to make QUIT work.
4880
4881 1998-10-22  Andy Piper  <andyp@parallax.co.uk>
4882
4883         * frame-msw.c (mswindows_size_frame_internal): force frame sizing
4884         to fit within the constraints of the screen size. I.e. make the
4885         frame small enough to fit and move it if some of it will be
4886         off-screen.
4887
4888 1998-10-19  Greg Klanderman  <greg@alphatech.com>
4889
4890         * dired.c: conditionalize inclusion of user-name-completion
4891         primitives on non-Windows NT.  The needed functions don't exist on NT.
4892
4893 1998-11-24  SL Baur  <steve@altair.xemacs.org>
4894
4895         * gifrlib.h: Clean up types for 64 bit compile.
4896         * dgif_lib.c (DGifInitRead): Ditto.
4897         (MakeSavedImage): Ditto.
4898         * emacs.c (decode_path): Ditto.
4899         From Steve Carney <carney@pa.dec.com>
4900
4901 1998-10-16  William M. Perry  <wmperry@aventail.com>
4902
4903         * glyphs-msw.c (bitmap_table): Fixed typo in builtin bitmaps
4904           (cehckboxes instead of checkboxes).
4905
4906 1998-10-15  SL Baur  <steve@altair.xemacs.org>
4907
4908         * XEmacs 21.2-beta3 is released.
4909
4910 1998-10-13  Raymond Toy  <toy@rtp.ericsson.se>
4911
4912         * runemacs.c (WinMain): If the basename is "rungnuclient.exe", run
4913         gnuclient.  Otherwise, we run xemacs as we always did.  This gets
4914         rid of the annoying DOS window when running gnuclient.
4915
4916 1998-10-13  Andy Piper  <andyp@parallax.co.uk>
4917
4918         * dragdrop.c (vars_of_dragdrop): rename HAVE_MSWINDOWS ->
4919         HAVE_MS_WINDOWS typo.
4920
4921 1998-10-13  SL Baur  <steve@altair.xemacs.org>
4922
4923         * process-unix.c (unix_send_process): Set closed flag on writable
4924         pipe after SIGPIPE is received and before we call deactivate_process.
4925
4926 1998-10-03  Gunnar Evermann  <ge204@eng.cam.ac.uk>
4927
4928         * window.c (Fset_window_start): respect narrowing when
4929         checking wheter start is at the beginning of a line.
4930         (Fset_window_buffer): Ditto
4931         Fixes repeatable crash in VM.
4932
4933 1998-10-09  SL Baur  <steve@altair.xemacs.org>
4934
4935         * window.c (specifier_vars_of_window): Set default vertical
4936         divider width to 1 on ttys.
4937
4938 1998-10-08  Martin Buchholz  <martin@xemacs.org>
4939
4940         * alloc.c:
4941         * unexec.c:
4942         * malloc.c:
4943         Add <stddef.h> to get ptrdiff_t declaration
4944
4945 1998-10-07  Jonathan Harris  <jhar@tardis.ed.ac.uk>
4946
4947         * scrollbar-msw.c: Use the same vertical scrollbar drag hack as
4948           is used for Motif or Lucid scrollbars under X.
4949
4950 1998-10-08  Pierre Wendling  <pw@ebc.vbe.dec.com>
4951
4952         * m/alpha.h (UNEXEC): quoted to avoid bad expansion when running
4953         `configure'
4954
4955 1998-10-06  Takeshi Hagiwara  <hagiwara@ie.niigata-u.ac.jp>
4956
4957         * frame-x.c (x_delete_frame): Fix an argument of XtDestroyWidget.
4958
4959 1998-10-05  Andy Piper  <andyp@parallax.co.uk>
4960
4961         * s/cygwin32.h: more cygwin b20 reorganisation.
4962
4963 1998-10-01  Raymond Toy  <toy@rtp.ericsson.se>
4964
4965         * nas.c: Added necessary support functions to be able to handle
4966         WAVE files in memory, just like the support for SND files in
4967         memory.
4968
4969 1998-09-30  SL Baur  <steve@altair.xemacs.org>
4970
4971         * callproc.c (child_setup): Fix spelling typo.
4972
4973 1998-09-29  SL Baur  <steve@altair.xemacs.org>
4974
4975         * XEmacs 21.2-beta2 is released.
4976
4977 1998-09-27  P. E. Jareth Hein  <jareth@camelot.co.jp>
4978
4979         * regex.c (re_match_2_internal): Add in code to reset lowest_active_reg
4980         to prevent memory corruption in the case of jumping out of a series of
4981         nested match patterns. This is a rather brute force approach, though.
4982
4983 1998-09-02  Andy Piper  <andyp@parallax.co.uk>
4984
4985         * config.h.in: ditto.
4986
4987         * s/cygwin32.h: rearrange declarations to cope with cygwin
4988         b20. Include cygwin32/version.h if it exists.
4989
4990 1998-09-20  Jonathan Harris  <jhar@tardis.ed.ac.uk>
4991
4992         * device-msw.c (mswindows_init_device): Call new
4993           mswindows_enumerate_fonts() function in objects-msw.c instead
4994           of font_enum_callback_1() to enumerate fonts.
4995
4996           font_enum_callback_1() and _2() moved to objects-msw.c.
4997
4998         * faces.c (complex_vars_of_faces): Make the mswindows default
4999           face font fully specified and provide some fallbacks.
5000
5001         * objects-msw.c: font_enum_callback_1() and _2() moved here
5002           from objects-msw.c. Obtain the enumerated font's character
5003           sets by table lookup instead of using the locale-specific
5004           string provided by Windows.
5005
5006           New public non-method mswindows_enumerate_fonts() that fills
5007           in the supplied mswindows device's font list.
5008
5009           mswindows_initialize_font_instance: Use the supplied name
5010           variable instead of f->name when signalling errors. Match font
5011           weights and character sets using lookup tables which handle
5012           spaces instead of by frobbing.
5013
5014 1998-09-20  Jonathan Harris  <jhar@tardis.ed.ac.uk>
5015
5016         * process-nt.c: Define an arbitrary limit, FRAGMENT_CODE_SIZE,
5017           on the size of code fragments passed to run_in_other_process.
5018
5019           run_in_other_process(): Use FRAGMENT_CODE_SIZE to determine
5020           the amount of memory to allocate in the other process.
5021
5022           Removed sigkill_code_end(), sigint_code_end() and
5023           sig_enable_code_end() since they are now redundant.
5024
5025           send_signal() and enable_child_signals(): Don't try to work
5026           out the end of the code fragments passed to
5027           run_in_other_process()
5028
5029 1998-09-10  Kazuyuki IENAGA  <ienaga@jsys.co.jp>
5030
5031         * src/s/freebsd.h: Added __ELF__ and compiler/liker flags for
5032         FreeBSD-current.
5033
5034         * src/unexelf.c: Partially synched with FSF's 20.3.
5035
5036 1998-09-10  Hrvoje Niksic  <hniksic@srce.hr>
5037
5038         * insdel.c (signal_after_change): Map across indirect buffers
5039         here, and not in the upper-level functions.
5040         (signal_first_change): Don't check for Armageddon.
5041         (signal_before_change): Map across indirect buffers here.
5042         (prepare_to_modify_buffer): ...and here.
5043
5044 1998-09-09  Hrvoje Niksic  <hniksic@srce.hr>
5045
5046         * insdel.c (signal_after_change): Add return value.
5047         (buffer_insert_string_1): Use it.
5048         (buffer_delete_range): Ditto.
5049         (buffer_replace_char): Ditto.
5050         (cancel_multiple_change): Map the indirect buffers.
5051
5052 1998-09-06  Hrvoje Niksic  <hniksic@srce.hr>
5053
5054         * insdel.c (init_buffer_text): Remove INDIRECT_P parameter.
5055         (uninit_buffer_text): Ditto.
5056
5057         * buffer.c (Fmake_indirect_buffer): Implement stricter
5058         error-checking.
5059
5060 1998-09-04  Hrvoje Niksic  <hniksic@srce.hr>
5061
5062         * insdel.c (change_function_restore): Reverse order of
5063         function-call and assignment.
5064         (first_change_hook_restore): Ditto.
5065
5066         * extents.c (mark_extent_auxiliary): Mark them.
5067         (Fset_extent_property): Set them.
5068         (Fextent_property): Get them.
5069         (Fextent_properties): Ditto.
5070         (vars_of_extents): Set their default.
5071
5072         * extents.h (struct extent_auxiliary): Add before_change_functions
5073         and after_change_functions.
5074
5075         * insdel.c (signal_before_change): Use it.
5076         (signal_after_change): Ditto.
5077
5078         * extents.c (report_extent_modification): New function.
5079
5080         * insdel.c (signal_before_change): Don't check for Armageddon.
5081         (signal_after_change): Ditto.
5082
5083 1998-09-11  Gunnar Evermann  <Gunnar.Evermann@nats.informatik.uni-hamburg.de>
5084
5085         * redisplay.c (redisplay_window): make sure a new starting point
5086         is chosen if it somehow got moved from the beginning of the line
5087         -- this can happen because Fwiden was called recently.
5088
5089         * window.c (Fset_window_start): set start_at_line_beg correctly
5090         (Fset_window_buffer): Ditto
5091
5092 1998-09-06  Hrvoje Niksic  <hniksic@srce.hr>
5093
5094         * insdel.c (init_buffer_text): Remove INDIRECT_P parameter.
5095         (uninit_buffer_text): Ditto.
5096
5097         * buffer.c (Fmake_indirect_buffer): Implement stricter
5098         error-checking.
5099
5100 1998-05-14  Jan Vroonhof  <vroonhof@math.ethz.ch>
5101
5102         * emacs.c (main_1): Removed references to *vars_of_filelock.
5103
5104         * lisp.h: Added Fsystem_name.
5105
5106         * filelock.c: Replaced by version from FSF 20.2. Now implements
5107         locking by using symlinks which is NFS safe. However keep the
5108         GCPRO's in lock_file and the calls to callx_in_buffer like our old
5109         version (and of course use ansi C, acessor macros, etc).
5110
5111 1998-09-06  Jan Vroonhof  <vroonhof@math.ethz.ch>
5112
5113         * process-unix.c (unix_create_process): Reset SIGHUP handler to
5114         SIG_DFL. We now try to conserve any inherted SIG_IGN settings
5115         in init_signals_very_early. However these should not be passed
5116         on to children attached to the new pty.
5117
5118 1998-08-28  Andy Piper  <andyp@parallax.co.uk>
5119
5120         * glyphs-eimage.c (png_instantiate_unwind): clean up eimage after use.
5121
5122 1998-09-07  Jonathan Harris  <jhar@tardis.ed.ac.uk>
5123
5124         * fileio.c (file-name-directory, file_name_as_directory):
5125           Don't call CORRECT_DIR_SEPS, even when #defined WINDOWSNT.
5126
5127 1998-09-02  Andy Piper  <andyp@parallax.co.uk>
5128
5129         * emacs.c (main_1): init_ralloc() if initialised and we have REL_ALLOC
5130
5131         * ralloc.c: uncomment __morecore.
5132
5133 1998-09-92  Jonathan Harris  <jhar@tardis.ed.ac.uk>
5134
5135         * event-msw.c(winsock_writer): Supply a dummy 4th argument to
5136           WriteFile() to fix a winsock 1.x bug on Win95.
5137
5138 1998-08-28  Hrvoje Niksic  <hniksic@srce.hr>
5139
5140         * event-Xt.c (emacs_Xt_mapping_action): Check for device being
5141         deleted.
5142         (x_event_to_emacs_event): Ditto.
5143         (emacs_Xt_handle_focus_event): Ditto.
5144         (emacs_Xt_handle_magic_event): Ditto.
5145
5146         * console-x.h (struct x_device): New flag being_deleted.
5147         (DEVICE_X_BEING_DELETED): New macro.
5148
5149         * device-x.c (x_IO_error_handler): Throw to top-level instead of
5150         returning.  Before doing that, set the being_deleted flag on the
5151         device.
5152
5153 1998-08-27  Hrvoje Niksic  <hniksic@srce.hr>
5154
5155         * device-x.c (x-seppuku-on-epipe): Removed.
5156
5157 1998-08-26  Gunnar Evermann  <Gunnar.Evermann@nats.informatik.uni-hamburg.de>
5158
5159         * frame-x.c (x_delete_frame): Flush the X output buffer after
5160         calling XtDestroyWidget to ensure that the windows are really
5161         killed right now.
5162
5163 1998-08-26  Hrvoje Niksic  <hniksic@srce.hr>
5164
5165         * menubar-x.c (my_run_hook): New unused function.
5166         (pre_activate_callback): Use run_hook for Qactivate_menubar_hook,
5167         since we ignore the results of the contained functions anyway.
5168
5169 1998-08-26  P. E. Jareth Hein  <jareth@camelot.co.jp>
5170
5171         * glyphs-eimage.c (gif_instantiate): Fix a crash in handling
5172         interlaced GIF files that are smaller than 4 lines high...
5173
5174 1998-08-31  Hrvoje Niksic  <hniksic@srce.hr>
5175
5176         * buffer.c (map_over_sharing_buffers): Deleted.
5177
5178         * insdel.c (MAP_INDIRECT_BUFFERS): Move to buffer.h.
5179
5180         * buffer.c (Fkill_buffer): Keep indirect_children updated while
5181         killing them.
5182
5183 1998-08-31  Hrvoje Niksic  <hniksic@srce.hr>
5184
5185         * insdel.c (buffer_insert_string_1): Advance the point bytind in
5186         all the buffers.
5187         (buffer_delete_range): Ditto.
5188
5189         * marker.c (init_buffer_markers): Set point-marker to the value of
5190         point in an indirect buffer.
5191
5192 1998-08-30  Hrvoje Niksic  <hniksic@srce.hr>
5193
5194         * undo.c (undo_prelude): Test last-undo-buffer against base
5195         buffer.
5196
5197         * insdel.c (MAP_INDIRECT_BUFFERS): Use it.
5198
5199         * buffer.h (BUFFER_BASE_BUFFER): New macro.
5200
5201 1998-08-30  Hrvoje Niksic  <hniksic@srce.hr>
5202
5203         * insdel.c (init_buffer_text): Initialize it here.
5204
5205         * line-number.c: Address line_number_cache through buffer->text.
5206
5207         * buffer.c (mark_buffer): Mark line number cache.
5208
5209         * bufslots.h (line_number_cache): Move to struct buffer_text.
5210
5211         * insdel.c (buffer_insert_string_1): Propagate signals and changes
5212         across the children buffers.
5213         (buffer_delete_range): Ditto.
5214         (buffer_replace_char): Ditto.
5215         (gap_left): Ditto.
5216         (gap_right): Ditto.
5217
5218         * insdel.c (MAP_INDIRECT_BUFFERS): New macro.
5219
5220         * buffer.c (Fmake_indirect_buffer): Uncomment.
5221
5222 1998-08-31  Hrvoje Niksic  <hniksic@srce.hr>
5223
5224         * macros.c (Fend_kbd_macro): Remove trailing period from error
5225         message.
5226         (Fexecute_kbd_macro): Ditto.
5227
5228 1998-08-21  Greg Klanderman  <greg@alphatech.com>
5229
5230         * dired.c (Fuser_name_completion): remove optional 2nd argument.
5231         (Fuser_name_completion_1): new function to return uniqueness
5232         indication in addition to the user name completion.
5233         (user_name_completion): change type of `uniq' argument.
5234
5235 1998-08-19  Michael Sperber [Mr. Preprocessor]  <sperber@informatik.uni-tuebingen.de>
5236
5237         * lread.c (vars_of_lread): Removed `source-directory' variable.
5238
5239 1998-08-22  Hrvoje Niksic  <hniksic@srce.hr>
5240
5241         * fileio.c (Ffile_readable_p): Apply the DOS/Windows logic to
5242         Cygwin.
5243
5244 1998-08-19  SL Baur  <steve@altair.xemacs.org>
5245
5246         * dired.c (vars_of_dired): Fix misapplied patch.
5247
5248 1998-08-16  Martin Buchholz  <martin@xemacs.org>
5249
5250         * fns.c (Fremrassq, remrassq_no_quit):
5251         A XCAR that should have been an XCDR turned Fremrassq into Fremassq
5252
5253 1998-07-17  Didier Verna  <verna@inf.enst.fr>
5254
5255         * redisplay-x.c (x_get_gc): returns a GC with a FillStipple fill
5256         style as foreground GC for faces that have the `dim' property.
5257         (x_output_string): when the `dim' face property is set,
5258         ensure the gray pixmap has been created, and get a proper
5259         foreground GC to draw the text.
5260
5261 1998-08-09  Jonathan Harris  <jhar@tardis.ed.ac.uk>
5262
5263         * event-msw.c (mswindows_wnd_proc): Workaround for a Win95 bug:
5264           Manually track the state of the left and right Ctrl and Alt
5265           modifiers.
5266
5267 1998-08-07 Matt Stupple <matts@tibco.com>
5268
5269         * ntproc.c: don't wait on char_consumed at thread entry.
5270         Additionally, to get the 'process' marked as finished, ensure
5271         that the CHILD_ACTIVE macro returns false, so before exiting
5272         close char_avail and set it to NULL, and close other handles
5273         to reduce handle leak problems.
5274
5275 1998-08-09  Jonathan Harris  <jhar@tardis.ed.ac.uk>
5276
5277         * menubar-msw.c (displayable_menu_item): take account of menu
5278           depth when deciding whether to try to display accelerators.
5279
5280 1998-08-04  Andy Piper  <andyp@parallax.co.uk>
5281
5282         * event-msw.c: use MsgWaitForMultipleObjects if there are no
5283         subprocesses.
5284
5285         * glyphs-msw.c: fix a couple of potential handle leaks.
5286
5287 1998-08-04  P. E. Jareth Hein  <jareth@camelot.co.jp>
5288
5289         * dgif_lib.c gif_io.c gifrlib.h: New files to put GIF
5290           *decoding ONLY* back into the core.
5291         * glyphs-eimage.c: Change referenced header file for GIF
5292           reading to point to the incore version.
5293
5294 1998-07-20  Martin Buchholz  <martin@xemacs.org>
5295
5296         * casefiddle.c (casify_object):
5297         Change algorithm from O(N**2) to O(N).
5298         Code cleanup.
5299         Doc string cleanup.
5300
5301 1998-07-22  Greg Klanderman  <greg@alphatech.com>
5302
5303         * dired.c (file_name_completion_unwind): don't leak the cons.
5304
5305 1998-07-20  Greg Klanderman  <greg@alphatech.com>
5306
5307         * dired.c (Fuser_name_completion): new function.
5308         (Fuser_name_all_completions): new function.
5309         (user_name_completion): new function.
5310         (syms_of_dired): 2 new DEFSUBRs.
5311         (vars_of_dired): initialize user name cache vars.
5312
5313 1998-07-29  P. E. Jareth Hein  <jareth@camelot.co.jp>
5314
5315         * glyphs-eimage.c (png_instantiate): Add proper handling for background
5316         colors taken from the default face.  Also correct a thinko in
5317         transparency (not alpha) handling.
5318
5319 1998-07-23  Martin Buchholz  <martin@xemacs.org>
5320
5321         * s/decosf4-0.h:  Use a perfectly ordinary link.  Nuke BSD crap.
5322         * unexalpha.c: ANSI C-ize.  Clean compiler warnings.
5323         * lread.c (Fload_internal):  Be very careful with printfs of
5324         size_t's
5325         * gui-x.c (menu_name_to_accelerator): tolower wants an `int'
5326         argument.
5327
5328 1998-07-27  Gunnar Evermann  <Gunnar.Evermann@nats.informatik.uni-hamburg.de>
5329
5330         * callint.c (Fcall_interactively): GCPRO prompt string before
5331         passing it to Fread_key_sequence
5332
5333 1998-07-27  SL Baur  <steve@altair.xemacs.org>
5334
5335         * keymap.c (vars_of_keymap): Initialize Vkey_translation_map and
5336         Vvertical_divider_map.
5337
5338         * mule-canna.c (vars_of_mule_canna): Initialize every symbol to
5339         Qnil or 0, none were initialized prior to this change.
5340
5341         Rename misnamed `V' prefixed integer variables:
5342         Vcanna_empty_info, Vcanna_through_info, Vcanna_underline,
5343         Vcanna_inhibit_hankakukana, Vcanna_henkan_length, Vcanna_henkan_revPos,
5344         Vcanna_henkan_revLen, Vcanna_ichiran_length, Vcanna_ichiran_revPos,
5345         Vcanna_ichiran_revLen.
5346
5347         Rename misnamed `V' prefixed integer variables and initialize
5348         properly in the vars_of routine.
5349         Vcanna_mode_AlphaMode, Vcanna_mode_EmptyMode, Vcanna_mode_KigoMode,
5350         Vcanna_mode_YomiMode, Vcanna_mode_JishuMode, Vcanna_mode_TankouhoMode,
5351         Vcanna_mode_IchiranMode, Vcanna_mode_YesNoMode, Vcanna_mode_OnOffMode,
5352         Vcanna_mode_AdjustBunsetsuMode, Vcanna_mode_ChikujiYomiMode,
5353         Vcanna_mode_ChikujiTanMode, Vcanna_mode_HenkanMode,
5354         Vcanna_mode_HenkanNyuryokuMode, Vcanna_mode_ZenHiraHenkanMode,
5355         Vcanna_mode_HanHiraHenkanMode, Vcanna_mode_ZenKataHenkanMode,
5356         Vcanna_mode_HanKataHenkanMode, Vcanna_mode_HanKataHenkanMode,
5357         Vcanna_mode_ZenAlphaHenkanMode, Vcanna_mode_HanAlphaHenkanMode,
5358         Vcanna_mode_ZenHiraKakuteiMode, Vcanna_mode_HanHiraKakuteiMode,
5359         Vcanna_mode_ZenKataKakuteiMode, Vcanna_mode_HanKataKakuteiMode,
5360         Vcanna_mode_ZenAlphaKakuteiMode, Vcanna_mode_HanAlphaKakuteiMode,
5361         Vcanna_mode_HexMode, Vcanna_mode_BushuMode, Vcanna_mode_ExtendMode,
5362         Vcanna_mode_RussianMode, Vcanna_mode_GreekMode, Vcanna_mode_LineMode,
5363         Vcanna_mode_ChangingServerMode, Vcanna_mode_HenkanMethodMode,
5364         Vcanna_mode_DeleteDicMode, Vcanna_mode_TourokuMode,
5365         Vcanna_mode_TourokuEmptyMode, Vcanna_mode_TourokuHinshiMode,
5366         Vcanna_mode_TourokuDicMode, Vcanna_mode_QuotedInsertMode,
5367         Vcanna_mode_BubunMuhenkanMode, Vcanna_mode_MountDicMode,
5368         Vcanna_fn_SelfInsert, Vcanna_fn_FunctionalInsert,
5369         Vcanna_fn_QuotedInsert, Vcanna_fn_JapaneseMode, Vcanna_fn_AlphaMode,
5370         Vcanna_fn_HenkanNyuryokuMode, Vcanna_fn_Forward, Vcanna_fn_Backward,
5371         Vcanna_fn_Next, Vcanna_fn_Prev, Vcanna_fn_BeginningOfLine,
5372         Vcanna_fn_EndOfLine, Vcanna_fn_DeleteNext, Vcanna_fn_DeletePrevious,
5373         Vcanna_fn_KillToEndOfLine, Vcanna_fn_Henkan, Vcanna_fn_Kakutei,
5374         Vcanna_fn_Extend, Vcanna_fn_Shrink, Vcanna_fn_AdjustBunsetsu,
5375         Vcanna_fn_Quit, Vcanna_fn_ConvertAsHex, Vcanna_fn_ConvertAsBushu,
5376         Vcanna_fn_KouhoIchiran, Vcanna_fn_BubunMuhenkan, Vcanna_fn_Zenkaku,
5377         Vcanna_fn_Hankaku, Vcanna_fn_ExtendMode, Vcanna_fn_ToUpper,
5378         Vcanna_fn_Capitalize, Vcanna_fn_ToLower, Vcanna_fn_Hiragana,
5379         Vcanna_fn_Katakana, Vcanna_fn_Romaji, Vcanna_fn_BaseHiragana,
5380         Vcanna_fn_BaseKatakana, Vcanna_fn_BaseEisu, Vcanna_fn_BaseZenkaku,
5381         Vcanna_fn_BaseHankaku, Vcanna_fn_BaseKana, Vcanna_fn_BaseKakutei,
5382         Vcanna_fn_BaseHenkan, Vcanna_fn_BaseHiraKataToggle,
5383         Vcanna_fn_BaseZenHanToggle, Vcanna_fn_BaseKanaEisuToggle,
5384         Vcanna_fn_BaseKakuteiHenkanToggle, Vcanna_fn_BaseRotateForward,
5385         Vcanna_fn_BaseRotateBackward, Vcanna_fn_Touroku, Vcanna_fn_HexMode,
5386         Vcanna_fn_BushuMode, Vcanna_fn_KigouMode, Vcanna_fn_Mark,
5387         Vcanna_fn_TemporalMode, Vcanna_key_Nfer, Vcanna_key_Xfer,
5388         Vcanna_key_Up, Vcanna_key_Left, Vcanna_key_Right, Vcanna_key_Down,
5389         Vcanna_key_Insert, Vcanna_key_Rollup, Vcanna_key_Rolldown,
5390         Vcanna_key_Home, Vcanna_key_Help, Vcanna_key_KP_Key,
5391         Vcanna_key_Shift_Nfer, Vcanna_key_Shift_Xfer, Vcanna_key_Shift_Up,
5392         Vcanna_key_Shift_Left, Vcanna_key_Shift_Right, Vcanna_key_Shift_Down,
5393         Vcanna_key_Cntrl_Nfer, Vcanna_key_Cntrl_Xfer, Vcanna_key_Cntrl_Up,
5394         Vcanna_key_Cntrl_Left, Vcanna_key_Cntrl_Right, Vcanna_key_Cntrl_Down
5395
5396 1998-07-16  Jan Vroonhof  <vroonhof@math.ethz.ch>
5397
5398         * event-Xt.c (x_to_emacs_keysym): Return nil for modifier keysyms.
5399         (x_event_to_emacs_event): Let x_to_emacs_keysym check for modifier
5400         keys thus no longer considering all keysyms on a key.
5401
5402 1998-07-19  SL Baur  <steve@altair.xemacs.org>
5403
5404         * XEmacs 21.2-beta1 is released.
5405
5406 1998-07-12  Oscar Figueiredo  <Oscar.Figueiredo@di.epfl.ch>
5407
5408         * eldap.c (Fldap_search_internal): When converting the list of
5409         attributes to search Copy the final 0 from Lisp strings to C
5410         strings.
5411         Check base, not Vldap_default_base as a a string
5412
5413 1998-07-13  Jonathan Harris  <jhar@tardis.ed.ac.uk>
5414
5415         * nt.c: Remove Vstdio_str; already defined in console-stream.c.
5416
5417         * unexnt.c: Unconditionally define bss_start and bss_size, and
5418           ensure that they don't go in the .bss section.
5419
5420 1998-07-17  Olivier Galibert  <galibert@pobox.com>
5421
5422         * glyphs-x.c (convert_EImage_to_XImage):  Fix previous patch (conv
5423         byte order is dependant  of  the local  byte order).
5424         From Takeshi Hagiwara <hagiwara@ie.niigata-u.ac.jp>
5425
5426 1998-07-18  SL Baur  <steve@altair.xemacs.org>
5427
5428         * glyphs-msw.c (mswindows_resource_normalize): Qresource ->
5429         Qmswindows_resource.
5430         From Jonathan Harris <jhar@tardis.ed.ac.uk>
5431
5432 1998-07-12  SL Baur  <steve@altair.xemacs.org>
5433
5434         * general.c (syms_of_general): Add defsymbol for Qresource.
5435
5436         * glyphs-msw.c (vars_of_glyphs_mswindows): Rename Qresource to
5437         Qmswindows_resource.
5438         (TopLevel): Rename 'resource image format to 'mswindows_resource.
5439         (mswindows_resource_validate): Rename.
5440         (mswindows_resource_normalize): Rename.
5441         (mswindows_resource_possible_dest_types): Rename.
5442         (mswindows_resource_instantiate): Rename.
5443         (image_instantiator_format_create_glyphs_mswindows): Replace
5444         `resource' with `mswindows.resource'.
5445
5446         * XEmacs 21.0-pre5 is released.
5447
5448 1998-07-10  SL Baur  <steve@altair.xemacs.org>
5449
5450         * mule-wnnfns.c (Fwnn_open): Correctly trap on misdefined Wnn
5451         server type in environment.
5452         Use alloca-ed strings instead of tiny fixed size ones.
5453
5454 1998-07-09  SL Baur  <steve@altair.xemacs.org>
5455
5456         * XEmacs 21.0-pre4 is released.
5457
5458 1998-07-01  James N. Potts  <jnpotts@plutonium.net>
5459
5460         * fileio.c: (expand_file_name): under win32: Don't treat names
5461         as UNC names if a drive letter has been specified.  If a drive
5462         has been specified, strip out extra directory-seperators that
5463         reportedly cause problems under Win95.
5464
5465 1998-07-09  Jonathan Harris  <jhar@tardis.ed.ac.uk>
5466
5467         * windowsnt.h: Define DUMP_SEPARATE_SECTION when building with
5468           MSVC >= 5.0. Put emacs init and zero-init data in a special
5469           section of the executable when this is defined.
5470
5471         * unexnt.c, ntheap.h:
5472           Removed unused find_section() and get_section_size().
5473
5474         * unexnt.c:
5475           Fix up the executable's checksum after dumping otherwise the
5476           profiler complains.
5477           When DUMP_SEPARATE_SECTION is defined, don't need to dump
5478           zero-init data separately from init data. Dump emacs data
5479           into a special section of the executable.
5480           When DUMP_SEPARATE_SECTION not defined, dump .bss up to
5481           my_ebss instead of up to the end of bss.
5482
5483 1998-07-09  Jonathan Harris  <jhar@tardis.ed.ac.uk>
5484
5485         * filelock.c: Removed Vconfigure_lock_directory - already
5486           defined in emacs.c.
5487
5488         * frame-msw.c: Removed Qinitially_unmapped and Qpopup - already
5489           defined in frame.c and general.c respectively.
5490
5491         * glyphs-msw.c: Removed Qresource - already defined in
5492           general.c.
5493
5494 1998-07-05  Oscar Figueiredo  <Oscar.Figueiredo@di.epfl.ch>
5495
5496         * eldap.c (Fldap_search_internal): Docstring fixes
5497
5498 1998-07-04  Jonathan Harris  <jhar@tardis.ed.ac.uk>
5499
5500         * nt.c (init_environment): Removed unused PRELOAD_WINSOCK,
5501           EMACSDOC and TERM variables. Added EMACSDEBUGPATHS,
5502           EMACSPACKAGEPATH and INFOPATH variables.
5503           Removed unused get_emacs_configuration function.
5504
5505         * s/windowsnt.h: Don't define EMACS_CONFIGURATION here because
5506           it is now defined at build-time by the makefile.
5507
5508 1998-07-01  James N. Potts  <jnpotts@plutonium.net>
5509
5510         * fileio.c: (expand_file_name): under win32: Don't treat names as
5511         UNC names if a drive letter has been specified.  If a drive has
5512         been specified, strip out extra directory-seperators that
5513         reportedly cause problems under Win95.
5514
5515 1998-07-05  Andy Piper  <andyp@parallax.co.uk>
5516
5517         * faces.c (complex_vars_of_faces): for the gui-element face don't
5518         fallback to the default face, instead provide reasonable default
5519         fallbacks that were previously hardcoded elsewhere.
5520
5521 1998-07-06  Olivier Galibert  <galibert@pobox.com>
5522
5523         * glyphs-x.c (convert_EImage_to_XImage): Fix pixel writing problem
5524         when the X server endianness is different than the client's one.
5525
5526 1998-06-29  Kyle Jones  <kyle_jones@wonderworks.com>
5527
5528         * eval.c (run_hook_with_args_in_buffer): Check
5529           default (non-buffer-local) value of hook for
5530           nil before treating it as a function.  Don't initialize
5531           the `globals' variable twice.
5532
5533 1998-06-24  Jonathan Harris  <jhar@tardis.ed.ac.uk>
5534
5535         * fileio.c: Don't do directory seperator canonicalisation in
5536           substitute-in-file-name because we don't know that the
5537           filename refers to a local file.
5538
5539 1998-06-24  Adrian Aichner  <aichner@ecf.teradyne.com>
5540
5541         * process-nt.c (nt_create_process): Try appending the standard
5542           executable file extensions to the filename if none supplied.
5543
5544 1998-06-29  SL Baur  <steve@altair.xemacs.org>
5545
5546         * fileio.c (Fsubstitute_in_file_name): Enable double slash notation
5547         for cygwin32.
5548         From Keisuke Mori <ksk@ntts.com>
5549
5550 1998-06-24  Andy Piper  <andyp@parallax.co.uk>
5551
5552         * toolbar-msw.c (mswindows_output_toolbar): only enable masked
5553         images if we have masks. This handles the xbm case (have masks)
5554         and avoids overuse of resources in the xpm case (generally no masks).
5555         Don't output small toolbars.
5556
5557 1998-06-29  Kyle Jones  <kyle_jones@wonderworks.com>
5558
5559         * eval.c (run_hook_with_args_in_buffer): Don't treat
5560           the default value of a buffer local hook as a list of
5561           hooks unless it is both a cons and the car of that cons
5562           is not Qlambda.
5563
5564 1998-06-29  SL Baur  <steve@altair.xemacs.org>
5565
5566         * extents.c: Email address for Ben Wing is ben@xemacs.org.
5567         * process-unix.c: Ditto.
5568         * mule-coding.h: Ditto.
5569         * mule-coding.c: Ditto.
5570         * mule-charset.c: Ditto.
5571         * mule-charset.h: Ditto.
5572         * file-coding.c: Ditto.
5573         * file-coding.h: Ditto.
5574
5575 1998-06-22  Jonathan Harris  <jhar@tardis.ed.ac.uk>
5576
5577         * event-msw.c: Guard against recursion when freeing
5578           FRAME_MSWINDOWS_TARGET_RECT struture in WM_SIZE processing.
5579
5580         * frame-msw.c: Don't set WS_VISIBLE attribute on first frame.
5581           Call ShowWindow twice in init_frame_3 to get round runemacs
5582           weirdness.
5583
5584 1998-06-27  Hrvoje Niksic  <hniksic@srce.hr>
5585
5586         * scrollbar.c (vertical_scrollbar_changed_in_window): Ditto.
5587
5588         * winslots.h: Rename.
5589
5590         * window.c (specifier_vars_of_window): Renamed
5591         vertical-divider-draggable-p to vertical-divider-always-visible-p,
5592         as suggested by Ben Wing.
5593         (specifier_vars_of_window): Fix docstrings.
5594
5595 1998-06-22  Michael Sperber [Mr. Preprocessor]  <sperber@informatik.uni-tuebingen.de>
5596
5597         * unexaix.c: Line number information works correctly again.
5598
5599 1998-06-22  Olivier Galibert  <galibert@pobox.com>
5600
5601         * emacs.c (__sti__iflPNGFile_c___): Added. See comment. Cry.
5602
5603 1998-06-21  Martin Buchholz  <martin@xemacs.org>
5604
5605         * editfns.c (get_home_directory): ANSIfy.
5606         XEmacs is compilable under C *and* C++.
5607         It's XEmacs, not Xemacs!
5608
5609 1998-06-19  Jonathan Harris  <jhar@tardis.ed.ac.uk>
5610
5611         * console-msw.h: added a list of fonts to device data.
5612
5613         * device-msw.c: enumerate list of available fonts in
5614           mswindows_init_device. Free list in mswindows_delete_device.
5615
5616         * objects-msw.c: Added helper function match_font used by
5617           mswindows_initialize_font_instance and mswindows_list_fonts.
5618           Allow a charset to be specified in a font string, even if
5619           previous fields havn't been specified.
5620
5621 1998-06-23  Greg Klanderman  <greg@alphatech.com>
5622
5623         * indent.c (column_at_point): column cache bugfix.
5624         Set last_known_column_point to the buffer position for
5625         which the column was requested, not buffer's point.
5626
5627         * redisplay.c (decode_mode_spec): for current-column, show
5628         window's point's column, not buffer's point's column.
5629
5630 1998-06-23  Andy Piper  <andyp@parallax.co.uk>
5631
5632         * menubar-msw.c (mswindows_handle_wm_command): use
5633         enqueue_misc_user event rather than
5634         mswindows_enqueue_msic_user_event to fix customize problems. Add some
5635         checks that X does.
5636
5637         * console-msw.h: declare mswindows_enqueue_magic_event.
5638
5639         * event-msw.c (mswindows_enqueue_magic_event): make global.
5640
5641 1998-06-24  Hrvoje Niksic  <hniksic@srce.hr>
5642
5643         * line-number.c (LINE_NUMBER_FAR): Reverted to 16384.
5644         (buffer_line_number): Use EMACS_INT_MAX instead of random LOTS.
5645         (add_position_to_cache): Use EMACS_INT instead of int.
5646
5647 1998-06-21  Olivier Galibert  <galibert@pobox.com>
5648
5649         * lisp-disunion.h (XMARKBIT): Have XMARKBIT return something
5650         suitable for an int used as a boolean (btw, C sucks.).
5651
5652 1998-06-18  Andy Piper  <andyp@parallax.co.uk>
5653
5654         * object-msw.c: remove warnings.
5655
5656         * device-msw.c: #define wrongly named cygwin structure elements.
5657
5658         * s/cygwin32.h: define DEMI_BOLD
5659
5660 1998-06-19  Jonathan Harris  <jhar@tardis.ed.ac.uk>
5661
5662         * redisplay-msw.c: new function mswindows_apply_face_effects.
5663           This is called by output_string and output_cursor to display
5664           underline and strikeout on faces.
5665
5666 1998-06-19  Jonathan Harris  <jhar@tardis.ed.ac.uk>
5667
5668         * console-msw.h: added a list of fonts to device data.
5669
5670         * device-msw.c: enumerate list of available fonts in
5671           mswindows_init_device. Free list in mswindows_delete_device.
5672
5673         * objects-msw.c: Added helper function match_font used by
5674           mswindows_initialize_font_instance and mswindows_list_fonts.
5675           Allow a charset to be specified in a font string, even if
5676           previous fields havn't been specified.
5677
5678 1998-06-15  Jonathan Harris  <jhar@tardis.ed.ac.uk>
5679
5680         * objects-msw.c:
5681           Removed compilation warnings from mswindows_string_to_color.
5682           mswindows_list_fonts returns a more general bogus font.
5683           New lisp-visible function mswindows-color-list.
5684
5685 1998-06-19  David Bush <david.bush@adn.alcatel.com>
5686
5687         * editfns.c (Fuser_login_name): Modify to user new function
5688         user_login_name.
5689         (user_login_name): C only function to avoid Lisp object overhead
5690         Returns "unknown" instead of nil in Cygwin environment
5691
5692         * fileio.c (Fexpand_file_name): Treat "~" and "~user" as
5693         equivalent for current user in Cygwin environment. Use new
5694         function user_login_name to get username.
5695
5696         * lisp.h: Declare user_login_name
5697
5698 1998-06-18  Michael Sperber [Mr. Preprocessor]  <sperber@informatik.uni-tuebingen.de>
5699
5700         * unexaix.c (make_hdr): Fixed bias computations so debugging info
5701         works again.
5702         Some other insignificant nitpicks.
5703
5704 1998-06-18  Andy Piper  <andyp@parallax.co.uk>
5705
5706         * toolbar-msw.c (mswindows_output_toolbar): specify ILC_MASK when
5707         creating the image list and make sure he bk color is transparent.
5708
5709 1998-06-18  Jan Vroonhof  <vroonhof@math.ethz.ch>
5710
5711         * event-Xt.c (emacs_Xt_remove_timeout): Also remove timeout from
5712         completed_timeouts. The timer could have expired.
5713
5714 1998-06-17  Andy Piper  <andyp@parallax.co.uk>
5715
5716         * console-msw.h: move XEMACS_RECT_WH inside frame
5717         parameters. define macors to access it.
5718
5719         * frame-msw.c (mswindows_init_frame_1): use new target_rect
5720         parameter to intialise desired sizing. (mswindows_init_frame_2):
5721         enable and size the frame to something sensible when we get
5722         here. (mswindows_set_frame_properites): use new
5723         mswindows_size_frame_internal function and size frame if frame
5724         parameters not just if init is finished - WM_SIZE happens too
5725         early for some specs. (mswindows_size_frame_internal): new
5726         function abstracted from mswindows_set_frame_properties.
5727         (Vmswindows_use_system_frame_size_defaults):
5728         new variable controls whether to allow the system to pick frame
5729         size defaults, defaults to nil.
5730
5731         * event-msw.c: in WM_SIZE use mswindows_size_frame_internal rather
5732         than duplicated code.
5733
5734 1998-06-15  Colin Rafferty <colin@xemacs.org>
5735
5736         * Makefile.in.in: Made EXTW_LINK expand properly.
5737
5738 1998-06-12  Martin Buchholz  <martin@xemacs.org>
5739
5740         * redisplay.c (vars_of_redisplay): default value of
5741         column-number-start-at-one should be NIL!
5742
5743 1998-06-11  Martin Buchholz  <martin@xemacs.org>
5744
5745         * casefiddle.c:
5746         (upcase-initials "fooBar") ==> "FooBar" instead of "Foobar"
5747
5748 1998-06-05  Hrvoje Niksic  <hniksic@srce.hr>
5749
5750         * eldap.c (Fldap_search_internal): Use build_ext_string instead of
5751         build_string to avoid crashes under Mule.
5752
5753 1998-06-13  Andy Piper  <andyp@parallax.co.uk>
5754
5755         * ntplay.c (play_sound_data_1): don't delete the sound data until
5756         the next sound is played and the previous one finished.
5757
5758 1998-06-10  Samuel Mikes  <smikes@alumni.hmc.edu>
5759
5760         * fileio.c (directory-sep-char): Escape backslashes.
5761
5762 1998-06-10  Hrvoje Niksic  <hniksic@srce.hr>
5763
5764         * event-stream.c: Fix docstring reference.
5765
5766 1998-06-12  Hrvoje Niksic  <hniksic@srce.hr>
5767
5768         * alloc.c (make_float): Remove useless initialization of `next'
5769         field.
5770         (make_pure_float): Ditto.
5771
5772         * lisp.h (struct Lisp_Float): Rename `next' to `__unused__next'.
5773
5774 1998-06-08  Kirill M. Katsnelson  <kkm@kis.ru>
5775
5776         * fileio.c (Fmake_directory_internal): Remove conditionals
5777         on WINDOWSNT when calling mkdir.
5778
5779         * ntproc.c: Deleted the following unused functions:
5780         register_child, reap_subprocess, sys_wait.
5781
5782         * nt.c (sys_rename): Ifzeroed this implementation.
5783         Deleted the following unused functions:
5784         sys_access, sys_chdir, sys_chmod, sys_creat, sys_link, sys_mkdir,
5785         sys_mktemp, sys_rmdir, sys_unlink, sys_close, sys_dup, sys_dup2,
5786         sys_read, sys_write.
5787         Merger sys_fopen and sys_open with sysdep.c implementation.
5788
5789         * sysdep.c: Removed MS-DOS code.
5790         (sys_rename): Deal with Microsoft rename weirdness.
5791         (sys_open): Implemented for Windows.
5792         (sys_fopen): Ditto.
5793         (sys_mkdir): Ditto.
5794
5795 1998-06-08  Kirill M. Katsnelson  <kkm@kis.ru>
5796
5797         * buffer.c (complex_vars_of_buffer): Removed %t description from
5798         the docstring.
5799
5800 1998-06-04  Rick Rankin  <Rick_Rankin-P15254@email.mot.com>
5801
5802         * scrollbar-msw.c: initialize the cbSize element of the
5803         SCROLLINFO struct before calling SetScrollInfo. WinNT seems
5804         to ignore the value of cbSize, but Win95 (and I presume Win98)
5805         appear to want it set to sizeof(SCROLLINFO).
5806
5807 1998-06-04  Kirill M. Katsnelson  <kkm@kis.ru>
5808
5809         * event-stream.c: Defined Qcancel_mode_internal.
5810         (syms_of_event_stream): defsymbol'ed it.
5811
5812         * events.h: Externed it.
5813
5814         * event-msw.c (mswindows_wnd_proc, WM_CANCELMODE): Added this handler.
5815
5816 1998-06-04  Oliver Graf <ograf@fga.de>
5817
5818         * frame-x.c (x_cde_destroy_callback): free the data
5819         (cde-start-drag-internal) corrected root position, 21.1 needs this
5820         hardcoded in Button events
5821         (offix-start-drag-internal) corrected root position
5822
5823 1998-06-03  Kirill M. Katsnelson  <kkm@kis.ru>
5824
5825         * process-nt.c (signal_cannot_launch): Use signal_simple_error()
5826         instead of error().
5827
5828 1998-06-03  Kirill M. Katsnelson  <kkm@kis.ru>
5829
5830         * dialog-msw.c (button_width): Removed `inline' from the function
5831         declaration.
5832
5833 1998-06-03  Rick Rankin  <Rick_Rankin-P15254@email.mot.com>
5834
5835         * frame-msw.c: add WS_VISIBLE flag to the first frame created.
5836         Note that adding this flag to subsequent frames causes problems.
5837
5838 1998-06-03  Gunnar Evermann  <Gunnar.Evermann@nats.informatik.uni-hamburg.de>
5839
5840         * glyphs-eimage.c (png_instantiate) move 'struct
5841         png_memory_storage tbr' out of nested block to avoid dangling
5842         reference
5843
5844 1998-06-02  Andy Piper  <andyp@parallax.co.uk>
5845
5846         * faces.h:
5847         * faces.c: rename 3d-object -> gui-element. add toolbar face which
5848         inherits from gui-element.
5849
5850         * glyphs-msw.c: use DIBitmaps for xbm bitmaps to be consistent
5851         with existing code, generate masks correctly.
5852
5853 1998-06-03  P. E. Jareth Hein  <jareth@camelot-soft.com>
5854
5855         * glyphs-eimage.c: Changed included header for gifs to use
5856         Gifreader instead of giflib.
5857
5858         * glyphs-x.c: removed the image-related functions that were
5859         moved into glyphs-eimage.
5860
5861 1998-06-02  David Bush  <david.bush@adnb.alcatel.com>
5862
5863         * glyphs.c (bitmap_to_lisp_data) Define XFree to be free
5864         if built without X Windows support.
5865
5866 1998-06-02  Hrvoje Niksic  <hniksic@srce.hr>
5867
5868         * fns.c (Fconcat): Synch docstring with new reality.
5869
5870 1998-06-03  SL Baur  <steve@altair.xemacs.org>
5871
5872         * frame.c: Remove reference to msdos.h (which is going away).
5873         Suggested by Hrvoje Niksic and Kirill Katsnelson.
5874
5875 1998-06-02  P. E. Jareth Hein  <jareth@camelot-soft.com>
5876
5877         * glyphs-eimage.c (jpeg_instantiate): Fix handling of
5878         grayscale images/
5879
5880
5881 1998-05-30  Kirill M. Katsnelson  <kkm@kis.ru>
5882
5883         * events.h: Fixed commentary about misc-user scrollbar events.
5884
5885         * scrollbar-x.c (x_update_vertical_scrollbar_callback): Use frame
5886         object as an event channel, instead of window object.
5887         (x_update_horizontal_scrollbar_callback): Ditto.
5888
5889 1998-05-29  Andy Piper  <andyp@parallax.co.uk>
5890
5891         * ntplay.c (play_sound_data_1) new function. convert alloca data
5892         to malloc if necessary.
5893         (play_sound_file): if the file is not in our path then convert to
5894         data and play.
5895
5896 1998-06-01  SL Baur  <steve@altair.xemacs.org>
5897
5898         * mule-mcpath.c (mc_chdir): Reverse parameters in call to memcpy.
5899         * msdos.c (Frecent_doskeys): Ditto.
5900
5901         * unexalpha.c (unexec): Reverse parameters in call to memcpy.
5902         Suggested by Reggie Perry <perry@zso.dec.com>
5903
5904         * buffer.h: Eliminate size in declaration.
5905
5906 1998-06-01  Olivier Galibert  <galibert@pobox.com>
5907
5908         * unexelfsgi.c (unexec): Cleanup n/nn and remove useless kludge.
5909
5910 1998-06-01  Kirill M. Katsnelson  <kkm@kis.ru>
5911
5912         * gui.c (gui_item_init): Changed the default value for config member
5913         from Qunbound to Qnil.
5914
5915 1998-06-01  Greg Klanderman  <greg@alphatech.com>
5916
5917         * indent.c (vmotion_pixels): Don't #define abs().
5918
5919 1998-05-30  Kirill M. Katsnelson  <kkm@kis.ru>
5920
5921         * s/windowsnt.h: Defined popen and pclose to be _popen and _pclose
5922         respectively.
5923
5924 1998-05-30  Andy Piper  <andyp@parallax.co.uk>
5925
5926         * glyphs.h: add xbm declarations.
5927
5928         * console.h: add xbm_instantiate_method device method.
5929
5930         * glyphs.c (check_valid_xbm_inline) (xbm_validate)
5931         (bitmap_to_lisp_data) (xbm_mask_file_munging) (xbm_normalize)
5932         (xbm_possible_dest_types): moved here from glyphs-x.c. use
5933         locate_pixmap_file device method and read_bitmap_data_from_file
5934         instead of XmuReadBitmapDataFromFile.
5935         (xbm_instatntiate): make a device method.
5936
5937         * glyphs-x.c: see glyphs.c changes. (read_bitmap_data_from_file)
5938         new function that just calls XmuReadBitmapDataFromFile.
5939         (x_xbm_instatntiate): device method from xbm_instantiate.
5940
5941         * glyphs-msw.c (read_bitmap_data) (NextInt)
5942         (read_bitmap_data_from_file): new functions copied from Xmu
5943         sources.
5944         (xbm_create_bitmap_from_data) from Ben <ben@666.com> convert
5945         inline data to an mswindows bitmap.
5946         (init_image_instance_from_xbm_inline) (xbm_instantiate_1)
5947         (mswindows_xbm_instantiate): mswindows-ized versions of the X
5948         functions.
5949
5950 1998-05-30  Kirill M. Katsnelson  <kkm@kis.ru>
5951
5952         * window.c (specifier_vars_of_window): Renamed `has_modeline-p' to
5953         `modeline-visible-p'.
5954         Declared specifier lisp variables at the beginning oh the file
5955         as static.
5956
5957         * procimpl.h (struct process_methods): Changed semantics of
5958         create_process method so it accepts lisp strings instead of
5959         char pointers.
5960
5961         * process.c (Fstart_process_internal): Moved building of
5962         unix style argv from here to process-unix.c, ...
5963
5964         * process-unix.c (unix_create_process): ... right here.
5965
5966         * process-nt.c (nt_create_process): Changed this function to
5967         support new semantics, so avoided a GC problem.
5968
5969         * events.c (Fmake_event): Document misc-user events properties.
5970         (Fmake_event): Do not allow arbitrary objects for channel property
5971         of misc-user events.
5972         (Fmake_event): Change misc-user event validation: it is function
5973         which is required, not button.
5974
5975         * event-msw.c (mswindows_user_event_p): Recognize misc user events as
5976         user events.
5977         (mswindows_enqueue_misc_user_event): Added function.
5978         (mswindows_bump_queue): Removed function.
5979         (mswindows_enqueue_magic_event): Support NULL HWND parameter.
5980         (mswindows_wnd_proc, WM_CLOSE): Use mswindows_enqueue_misc_user_event().
5981         (mswindows_wnd_proc, WM_EXITSIZEMOVE): Ditto.
5982         (emacs_mswindows_handle_magic_event): Handle XM_BUMPQUEUE, by doing
5983         really nothing, which is my personal favorite thing.
5984
5985         * console-msw.h: Removed prototype for mswindows_bump_queue().
5986         Added prototype for mswindows_enqueue_misc_user_event().
5987
5988         * menubar-msw.c (mswindows_handle_wm_command): Use
5989         mswindows_enqueue_misc_user_event().
5990
5991         * toolbar-msw.c (mswindows_handle_toolbar_wm_command): Ditto.
5992
5993         * dialog-msw.c (dialog_proc): Ditto.
5994
5995         * scrollbar-msw.c (mswindows_handle_scrollbar_event): Ditto.
5996          (mswindows_handle_scrollbar_event): Use frame, not window, for misc
5997         user events channel.
5998
5999 1998-05-29  Greg Klanderman  <greg@alphatech.com>
6000
6001         * window.c (Fwindow_displayed_text_pixel_height): was relying on
6002         incorrect semantics of vmotion_pixels which has been fixed.  don't
6003         use it anymore as it can't easily be used.
6004
6005         * indent.c (vmotion_pixels): fix off by one bug moving up.  also
6006         the motion was reported incorrectly if you tried to go past end of
6007         buffer.
6008
6009 1998-05-30  Kirill M. Katsnelson  <kkm@kis.ru>
6010
6011         * toolbar.h: Removed misleading commentary, as Martin suggested.
6012
6013 1998-05-30  Kirill M. Katsnelson  <kkm@kis.ru>
6014
6015         * lisp.h: Extern Qactivate_menubar_hook.
6016
6017         * menubar-msw.c (unsafe_handle_wm_initmenu_1): Pass correct value to
6018         run_hook ().
6019
6020 1998-05-29  Andy Piper  <andyp@parallax.co.uk>
6021
6022         * glyphs-msw.c: use BPLINE macro.
6023
6024         * select-msw.c (mswindows-selection-exists-p)
6025         (mswindows-delete-selection): doc string fixes.
6026
6027         * toolbar-msw.c (mswindows_output_toolbar): make disabled buttons
6028         unpressable. warning elimination.
6029
6030 1998-05-28  Martin Buchholz  <martin@xemacs.org>
6031
6032         * alloc.c (dbg_constants):
6033         * dbxrc:
6034         * gdbinit:
6035         Remove toolbar_data debugging code, since that lrecord has
6036         also been removed.
6037
6038 Wed May 27, 1998  Darryl Okahata  <darrylo@sr.hp.com>
6039
6040         * alloc.c: zap cached value of (user-home-directory), so that
6041           it's not undumped.
6042
6043         * buffer.c: From init_buffer(), separated out code that
6044           determined the initial directory for the *scratch* buffer, and
6045           put them into a function called "init_initial_directory()".
6046           The initial directory is now available as a global "char *"
6047           called initial_directory.
6048
6049         * buffer.h: Added extern entries for initial_directory[] and
6050           init_initial_directory().
6051
6052         * editfns.c: added new elisp function "user-home-directory",
6053         which basically returns getenv("HOME"), but attempts to use
6054         other values if $HOME isn't set.This may have to be tweaked in
6055         the future as, under Unix, "/" is used if $HOME isn't set (this
6056         probably should be set to the current directory).  To support
6057         this, a new C function, "get_home_directory()", now exists,
6058         which returns the "home directory", as a "char *" string.
6059
6060         * emacs.c: Rearrange NT initialization order so that
6061         environment/registry variables will be properly entered into
6062         Vprocess_enviroment.
6063
6064         * fileio.c: replaced egetenv("HOME") with calls to the new
6065           get_home_directory().
6066
6067         * lisp.h: Added function prototypes for uncache_home_directory()
6068           and get_home_directory(), along with lisp prototypes for
6069           Fuser_home_directory() and friends.
6070
6071         * nt.c: replaced getenv("HOME") with calls to the new
6072           get_home_directory().
6073
6074         * sysfile.h: for WINDOWSNT, #include <direct.h>, to suppress
6075           warnings about getcwd(), etc. not having prototypes.
6076
6077 1998-05-28  Kirill M. Katsnelson  <kkm@kis.ru>
6078
6079         * process-nt.c (send_signal): Emulate SIGHUP.
6080         (validate_signal_number): Ditto.
6081
6082         * event-msw.c (mswindows_wnd_proc, WM_KEYDOWN): Unconditionally
6083         remove MOD_SHIFT from ASCII characters.
6084         (mswindows_wnd_proc, WM_KEYDOWN): Do not activate the menubar when
6085         F10 is pressed.
6086
6087 1998-05-24  Oliver Graf <ograf@fga.de>
6088
6089         * frame-x.c (cde-start-drag-internal): added filename and multi-
6090         data transfers
6091         (x_cde_convert_callback) dito
6092
6093 1998-05-26  Oliver Graf <ograf@fga.de>
6094
6095         * frame-x.c: include event-mod.h also with CDE
6096         (x_cde_convert_callback) made the thing working
6097         (cde-start-drag-internal) also debugging
6098
6099 1998-05-25  Hans Guenter Weigand  <hgweigand@wiesbaden.netsurf.de>
6100
6101         * m/sparc.h:
6102         * getloadavg.c:
6103         * malloc.c:
6104         * unexec.c:
6105         * mem-limits.h:
6106           - add __OpenBSD__ where __NetBSD__ was found.
6107           - TODO: replace platform-specific conditional compilation by
6108             feature tests in configure.in.
6109
6110 1998-05-15  Greg Klanderman  <greg@alphatech.com>
6111
6112         * window.c (Fwindow_displayed_text_pixel_height): New function.
6113         (syms_of_window): DEFSUBR it.
6114
6115         * indent.c (Fvertical_motion_pixels): New function - request
6116         movement in pixels.
6117         (vmotion_pixels): helper.
6118         (syms_of_indent): DEFSUBR.
6119         * lisp.h: declaration for vmotion_pixels().
6120
6121         * indent.c (Fvertical_motion): Add optional third argument PIXELS,
6122         to request returning motion in pixels.
6123         (Fvertical_motion_pixels): Remove, functionality merged into
6124         Fvertical_motion.
6125         * window.c (window_scroll): call Fvertical_motion with 3 arguments.
6126         (Fmove_to_window_line): ditto.
6127         * lisp.h: Change declaration for Fvertical_motion.
6128
6129         * window.c: rename window-text-pixel-{height,width,edges} to
6130         window-text-area-pixel-*.
6131
6132 1998-05-26  Gunnar Evermann  <Gunnar.Evermann@nats.informatik.uni-hamburg.de>
6133
6134         * tooltalk.c (vars_of_tooltalk) added staticpro for
6135         Tooltalk_Message_plist_str and Tooltalk_Pattern_plist_str
6136
6137 1998-05-27  Andy Piper  <andyp@parallax.co.uk>
6138
6139         * faces.c: create a new 3d_object_face, make modeline and
6140         vertical_divider faces fallback to this rather than the default.
6141
6142 1998-05-21  Andy Piper  <andyp@parallax.co.uk>
6143
6144         * s/cygwin32.h: define charsets for cygwin.
6145
6146 1998-05-25  Andy Piper  <andyp@parallax.co.uk>
6147
6148         * toolbar-msw.c (mswindows_output_toolbar): fix up button sizes
6149         and coordinates. resize bitmaps if we have already settled on a
6150         different size.
6151
6152         * glyphs-msw.c (xpm_to_eimage): add ';' for mswindows compiler.
6153
6154 1998-05-25  Hrvoje Niksic  <hniksic@srce.hr>
6155
6156         * toolbar-msw.c (mswindows_handle_toolbar_wm_command): Ditto.
6157
6158         * menubar-msw.c (mswindows_handle_wm_command): Ditto.
6159
6160         * gui.h: Ditto.
6161
6162         * gui-x.c (popup_selection_callback): Ditto.
6163
6164         * dialog-msw.c (dialog_proc): get_callback -> get_gui_callback.
6165
6166         * gui.c (get_callback): Renamed to get_gui_callback.
6167
6168 1998-05-17  Martin Buchholz  <martin@xemacs.org>
6169
6170         * glyphs.h: order rearrangement.
6171
6172         * device-tty.c (tty_asynch_device_change): Warning suppression.
6173         * device-x.c (x_device_system_metrics): Warning suppression.
6174         Make Doc strings consistent with coding standards.
6175
6176 1998-05-24  Martin Buchholz  <martin@xemacs.org>
6177
6178         * general.c: multiple definition of `Qicon'.  general.c seems
6179           like a good home for Qicon.
6180
6181 1998-05-20  Kirill M. Katsnelson  <kkm@kis.ru>
6182
6183         * This patch is to fix compilation warnings under Windows.
6184
6185         * s/windowsnt.h: Encapsulate getpid with sys_getpid.
6186         Added prototypes for FSF inherited functions, with which XEmacs is
6187         sprinkled thoroughly.
6188         Removed some #if 0 code. Bracketed some more definitions, probably
6189         related to Visual C versions prior to 4 (we do not support them).
6190
6191         * sysfloat.h (logb): Finally, get logb() prototyped.
6192
6193         * sysfile.h: Added Windows specific includes.
6194         Removed old Windows specific code bracketed with #if 0.
6195
6196         * sysdep.h: Added prototype for xrealpath().
6197
6198         * sysdep.c (sys_getpid): Added function, to support '95 negative pids.
6199
6200         * symsinit.h: Added prototypes for syms_of_dired_mswindows,
6201         vars_of_dired_mswindows and init_ntproc (Grrr).
6202
6203         * realpath.c: Added Windows specific include files.
6204         (xrealpath): Conditionalized declaration of some auto variables on
6205         S_IFLNK, to avoid warnings.
6206
6207         * ntproc.c: Disabled some compiler warnings. This file is going to
6208         die, so I have not cleaned it up much.
6209         (set_process_dir): Const parameter.
6210         (Fwin32_short_file_name): Down CHECK_* macros to one argument.
6211         (Fwin32_long_file_name): Ditto.
6212         (Fwin32_set_process_priority): Ditto. Why didn't I remove these
6213         three functions?
6214
6215         * nt.h: Added prototypes for set_process_dir and convert_time.
6216
6217         * nt.c: More include files.
6218         (getpwnam): Consted char* argument.
6219         (get_emacs_configuration): Const return value.
6220         (opendir): Const argument.
6221         (stat): Casted converstion long->short.
6222         (stat): Removed ad hoc and questionable support for non-MSC compile.
6223         (sys_pipe): Removed unused auto variable.
6224         (_sys_read_ahead): Removed calls to DebPrint.
6225         (sys_read): Ditto, in 2 places.
6226         (term_ntproc): Added unused int parameter to signal handler, to
6227         avoid a warning when compiling a call to signal().
6228         (msw_sigset): Properly return old signandler or NULL instead of void.
6229
6230         * floatfns.c (Flogb): Casted arguments to unary minus to signed.
6231
6232         * gmalloc.c (morecore): Ditto.
6233         (_free_internal): Ditto.
6234
6235         * lread.c (parse_integer): Ditto.
6236
6237         * dired-msw.c: Added several include files.
6238
6239         * cmdloop.c (Fcommand_loop_1): Added Microsoft C to the Big List
6240         of Compilers to Shut Up.
6241
6242         * callproc.c: Added #includes to suppress warnings under Windows.
6243         (init_callproc): Removed #if0'ed code and unused variables.
6244
6245 1998-05-25  Andy Piper  <andyp@parallax.co.uk>
6246
6247         * device-msw.c (mswindows_device_system_metrics): do planes in a
6248         way consistent with X.
6249
6250         * glyphs-msw.c (mswindows_initialize_image_instance_mask): don't
6251         use SetPixel, use DIBits functions.
6252         (xpm_to_eimage): frob colors more closely like xpm deos.
6253
6254         * toolbar-msw.c: only resize bitmaps when shrinking. Adjust look
6255         to be closer to X version.
6256
6257         * event-msw.c: use tooltip string directly.
6258
6259         * redisplay-msw.c: reinstate Kirill's bg pixmap change.
6260
6261         * objects-msw.c: frob rgb colors that only Kyle uses.
6262
6263         * dialog-msw.c (button_width): INLINE -> inline.
6264
6265 1998-05-23  SL Baur  <steve@altair.xemacs.org>
6266
6267         * getloadavg.c (getloadavg): Fix typo.
6268
6269 1998-05-23  Kirill M. Katsnelson  <kkm@kis.ru>
6270
6271         * objects-msw.c (mswindows_initialize_font_instance): Added support
6272         for font character sets.
6273         Replaced 'XXX' with '####' in comments throughout the file.
6274
6275 1998-05-23  Kirill M. Katsnelson  <kkm@kis.ru>
6276
6277         * emacs.c (main_1): Added calls to vars_of_dialog_mswindows() and
6278         console_type_create_dialog_mswindows(), to initialize Windows dialog
6279         support.
6280
6281         * symsinit.h: Prototyped the above functions.
6282
6283         * dialog-x.c (x_popup_dialog_box): Moved dialog descriptor consistency
6284         checks to dialog.c...
6285
6286         * dialog.c (Fpopup_dialog_box): ...right here. Added more checks: a
6287         device must support dialog boxes, and the descriptor must supply at
6288         least one button.
6289
6290         * dialog-msw.c: New file, dialogs for Windows.
6291
6292 1998-05-21  Oscar Figueiredo  <Oscar.Figueiredo@di.epfl.ch>
6293
6294         * eldap.c (ldap_search_unwind): Return Qnil instead of nothing
6295         (Fldap_search_internal): Removed unused variable `err'
6296
6297         * eldap.h: Moved Lisp_LDAP declaration here instead of using a
6298         forward declaration
6299
6300 1998-05-17  Martin Buchholz  <martin@xemacs.org>
6301
6302         * eldap.h: eldap.[ch] should never be used unless HAVE_LDAP is
6303         defined.  Therefore there is no need to handle the case when
6304         HAVE_LDAP is undefined.  Similarily, there is no reason to have
6305         any code wrapped within `#ifdef emacs', since this code is only
6306         useful within an emacs.  This simplifies the code significantly.
6307
6308         * inline.c: Include eldap.h only if HAVE_LDAP.
6309         * inline.c: Don't bother including TT_C_H_PATH, since tooltalk.h
6310         already does that.
6311
6312 1998-05-21  Kirill M. Katsnelson  <kkm@kis.ru>
6313
6314         * unexnt.c (copy_executable_and_dump_data_section): Suppress
6315         printing dump stats when building without DEBUG_XEMACS.
6316         (dump_bss_and_heap): Ditto.
6317
6318 1998-05-21  Andy Piper  <andyp@parallax.co.uk>
6319
6320         * gnuclient.c: don't suppress window system if there is no display
6321         and we are running under mswindows. send 'mswindows device type if
6322         we are in this situation.
6323
6324 1998-05-20  Andy Piper  <andyp@parallax.co.uk>
6325
6326         * general.c:
6327         * lisp.h: Qbitmap, Qcursor, Qicon moved here from glyphs-msw.c.
6328
6329         * glyphs-msw.c: change cursor imgae type name to resource. Fix
6330         some nits.
6331
6332 1998-05-20  Kirill M. Katsnelson  <kkm@kis.ru>
6333
6334         * EmacsFrame.c (Xt_StringToScrollBarPlacement):  Added support for
6335         {top,bottom}-{left,right} values in addition to
6336         {top,bottom}_{left,right}.
6337
6338 1998-05-18  Hrvoje Niksic  <hniksic@srce.hr>
6339
6340         * fileio.c (Fmake_temp_name): Remove unreached code.
6341
6342         * process-nt.c (validate_signal_number): Use
6343         signal_simple_error().
6344
6345 1998-05-19  Martin Buchholz  <martin@xemacs.org>
6346
6347         * unexhp9k800.c:
6348         * sound.c (vars_of_sound):
6349         * sysdep.c (reset_sigio_on_device):
6350         * window.c (window_bottom_gutter_height):
6351         unexhp9k800.c:258: warning: implicit declaration of function
6352         `calculate_checksum'
6353         sound.c:604: warning: implicit declaration of function `vars_of_hpplay'
6354         sysdep.c:1012: warning: unused variable `owner'
6355         window.c:993: warning: `window_right_toolbar_width' defined but not used
6356
6357 1998-05-19  Andy Piper  <andyp@parallax.co.uk>
6358
6359         * glyphs-msw.c (mswindows_create_resized_mask)
6360         (mswindows_create_resized_bitmap): new funnctions split out from
6361         mswindows_resize_dibitmap_instance.
6362
6363         * glyphs-msw.h: declare new resize functions.
6364
6365         * toolbar-msw.c (mswindows_output_toolbar): use new bitmap resize
6366         functions so that the original bitmaps are preserved.
6367
6368         * sheap.c: fixup static heap exhausted error to avoid FAQs.
6369
6370         * redisplay-msw.c (mswindows_output_blank): fixup brush from bg
6371         color if we are trying to output 0 depth bg pixmap.
6372
6373         * scrollbar-msw.c: warning elimination.
6374
6375 1998-05-18  Martin Buchholz  <martin@xemacs.org>
6376
6377         * frame-x.c (x_update_frame_external_traits): Start preprocessor
6378         directives in column 1.
6379
6380         * search.c (skip_chars): Avoid using xzero with arrays, since some
6381         compilers get confused by the construct &array.
6382
6383 1998-05-18  Kirill M. Katsnelson  <kkm@kis.ru>
6384
6385         * objects-msw.h:
6386         * objects-msw.c: Changed the charset value for a new font from
6387         "don't care" to "ansi".
6388
6389         * glyphs-msw.c (convert_EImage_to_DIBitmap): Warnings fix.
6390
6391 1998-05-18  Kirill M. Katsnelson  <kkm@kis.ru>
6392
6393         * event-msw.c (mswindows_wnd_proc, WM_KEYDOWN): Do not clear shift
6394         modifier on control chars.
6395         Use IsCharAlpha() instead of isaplha().
6396
6397 1998-05-19  Kazuyuki IENAGA <ienaga@jsys.co.jp>
6398
6399         * s/freebsd.h: FreeBSD 2.2.6 now supports setlocale(LC_ALL, "").
6400
6401 1998-05-18  Kirill M. Katsnelson  <kkm@kis.ru>
6402
6403         * objects-msw.c (mswindows_initialize_font_instance): Use ANSI
6404         charset when creating font.
6405         (mswindows_initialize_color_instance): Do not create brush along
6406         with a color.
6407         (mswindows_finalize_color_instance): Do not delete it then.
6408
6409         * objects-msw.h (struct mswindows_color_instance_data): Removed
6410         brush slot, and corresponding accessor macro.
6411
6412 1998-05-18  Kirill M. Katsnelson  <kkm@kis.ru>
6413
6414         * toolbar.c: Removed toolbar_data lrecord implementation.
6415         (mark_frame_toolbar_buttons_dirty): Replase usage of toolbar_data
6416         with toolbar_buttons (via FRAME_TOOLBAR_BUTTONS).
6417         (compute_frame_toolbar_buttons): Ditto.
6418         (CHECK_TOOLBAR): Ditto.
6419         (set_frame_toolbar): Removed allocation of toolbar_data lrecord.
6420         (update_frame_toolbars): Do not check for changed buffer
6421         here. Toolbar information is provided by cached specs in
6422         windows. The check for buffer is eliminated becuase toolbars are
6423         marked changed in set_frame_selected_window() in frame.c
6424         Added check for changed toolbars geometry.
6425         (compute_frame_toolbars_data): Removed unused second parameter;
6426         Adjusted callers of this static function throughout the file.
6427         (init_frame_toolbars): Initialize current_toolbar_size.
6428         (update_frame_toolbars): Use DEVICE_SUPPORTS_TOOLBARS_P instead of
6429         what is its current expansion, for clarity.
6430         (init_frame_toolbars): Ditto.
6431         (init_device_toolbars): Ditto.
6432         (init_global_toolbars): Ditto.
6433
6434         * toolbar.h: Removed definition of toolbar_data lrecord.
6435         Added accessor macros FRAME_TOOLBAR_BUTTONS and
6436         FRAME_CURRENT_TOOLBAR_SIZE.
6437         Added macro DEVICE_SUPPORTS_TOOLBARS_P.
6438
6439         * toolbar-x.c (x_output_toolbar): The same change as in
6440         toolbar-msw.c
6441         (x_output_toolbar): Ditto.
6442         (x_redraw_exposed_toolbar): Ditto.
6443
6444         * toolbar-msw.c (mswindows_output_toolbar): Retrieve current
6445         buttons from toolbar_buttons using FRAME_TOOLBAR_BUTTONS macro.
6446         (mswindows_output_toolbar): Ditto.
6447         (mswindows_output_toolbar): Ditto.
6448
6449         * frame.c (mark_frame): Removed marking of arrays, according to
6450         frameslots.h change.
6451         (nuke_all_frame_slots): Ditto.
6452         (set_frame_selected_window): Mark toolbars changed when
6453         last_nonminibuf_window changes.
6454
6455         * frame.h (struct frame): Moved some slots to frameslots.h.
6456         Added current_toolbar_size array.
6457         Changed references from toolbar_data to toolbar_buttons in macros
6458         FRAME_RAW_THEORETICAL_TOOLBAR_VISIBLE,
6459         FRAME_RAW_THEORETICAL_TOOLBAR_SIZE and
6460         FRAME_RAW_THEORETICAL_TOOLBAR_BORDER_WIDTH.
6461
6462         * frameslots.h: Added macro MARKED_SLOT_ARRAY a la winslots.h
6463         Moved arrays of lisp objects here from frame.h: toolbar_size,
6464         toolbar_visible_p, toolbar_border_width.
6465         Removed toolbar_data slot and added toolbar_buttons.
6466
6467 1998-05-17  Kirill M. Katsnelson  <kkm@kis.ru>
6468
6469         * symsinit.h: Externed syms_of_process_nt()
6470
6471         * emacs.c (main_1): Call syms_of_process_nt()
6472
6473         * process-nt.c: Quote process arguments by a call to Lisp function
6474         `nt-quote-process-args'.
6475         (syms_of_process_nt): New function.
6476         (nt_send_process): Flush data stream after each write, to avoid
6477         leaving buffered data.
6478         (nt_send_process): When blocked on process output, wait for
6479         process to slurp more for progressively increasing time intervals.
6480
6481 1998-05-17  Martin Buchholz  <martin@xemacs.org>
6482
6483         * window.c (have_undivided_common_edge): Make file-local function
6484         static.
6485         (map_windows): Return 0 if all map functions successful.
6486         Fix typos.
6487
6488         * winslots.h: Use unlikely names for local variables in macros to
6489         avoid shadowing warnings.
6490
6491 1998-05-17  Andy Piper  <andyp@parallax.co.uk>
6492
6493         * toolbar-msw.c (mswindows_output_toolbar): hash on toolbar width
6494         so that we re-output if the toolbar size has changed.
6495
6496 1998-05-17  Michael Sperber [Mr. Preprocessor]  <sperber@informatik.uni-tuebingen.de>
6497
6498         * s/aix4-2.h (ALIGN_DATA_RELOC): Undefined to support new unexaix.c.
6499
6500         * s/aix3-1.h (ALIGN_DATA_RELOC): Defined to support new unexaix.c.
6501
6502         * unexaix.c: Massive cleanup and support of AIX 4.2 (and hopefully
6503         greater).
6504
6505 1998-05-16  Kirill M. Katsnelson  <kkm@kis.ru>
6506
6507         * glyphs-msw.c: Defined OEMRESOURCE before including windows.h to
6508         get bitmap manifest constants defined.
6509
6510         * console-msw.h: Include system files in angle brackets, not in
6511         quotes.
6512
6513         * window.c (specifier_vars_of_window): Fixed a typo in
6514         `vertical-divider-line-width' docstirng.
6515
6516 1998-05-16  Olivier Galibert  <galibert@pobox.com>
6517
6518         * line-number.c (delete_invalidate_line_number_cache): Use an
6519         EMACS_INT.
6520         (buffer_line_number): Remove dangerous, plain wrong when using
6521         64bits emacs ints, cast.
6522
6523         * insdel.c (buffer_delete_range): Use an EMACS_INT.
6524
6525         * cmds.c (Fforward_line): Use EMACS_INTs.
6526
6527         * search.c (bi_scan_buffer): Change to use EMACS_INTs.
6528         (scan_buffer): Ditto.
6529         (bi_find_next_newline_no_quit): Remove useless cast.
6530         (find_next_newline_no_quit): Ditto.
6531         (find_next_newline): Ditto.
6532         (find_before_next_newline): Use an EMACS_INT.
6533
6534         * lisp.h: Change scan_buffer to pass EMACS_INTs.
6535
6536 1998-05-16  Hrvoje Niksic  <hniksic@srce.hr>
6537
6538         * menubar-msw.c (mswindows_handle_wm_command): Ditto.
6539
6540         * toolbar-msw.c (mswindows_handle_toolbar_wm_command): Ditto.
6541
6542         * gui-x.c (popup_selection_callback): Use it.
6543
6544         * gui.h (get_callback): Declare it.
6545
6546         * gui.c (get_callback): New function.
6547
6548 1998-05-15  SL Baur  <steve@altair.xemacs.org>
6549
6550         * window.c (have_undivided_common_edge): Guard scrollbar specific
6551         stuff.
6552         (window_needs_vertical_divider_1): Ditto.
6553
6554 1998-05-16  Hrvoje Niksic  <hniksic@srce.hr>
6555
6556         * emacs.c (decode_path): Eliminate compiler warning.
6557         (Fdecode_path): Renamed to Fsplit_path.
6558         (Fsplit_string_by_char): New function.
6559
6560 1998-05-14  Damon Lipparelli  <lipp@primus.com>
6561
6562         * winslots.h: close comment
6563
6564 1998-05-16  Kirill M. Katsnelson  <kkm@kis.ru>
6565
6566         * callproc.c: Removed declared and unused variable Qbuffer_file_type.
6567
6568         * bufslots.h: Removed buffer_file_type slot.
6569
6570         * buffer.c (complex_vars_of_buffer): Removed buffer_file_type from
6571         buffer local flags.
6572         (complex_vars_of_buffer): Removed buffer-file-type variable and
6573         its default reference.
6574
6575 1998-05-15  Kirill M. Katsnelson  <kkm@kis.ru>
6576
6577         * faces.c (complex_vars_of_faces): Defined
6578         Vvertical_divider_face.
6579         (vars_of_faces): Staticpro it.
6580
6581         * faces.h: Externed Vvertical_divider_face.
6582
6583         * redisplay-x.c (x_output_vertical_divider): Use
6584         Vvertical_divider_face to draw the divider instead of modeline
6585         face.
6586
6587         * redisplay-msw.c (mswindows_output_vertical_divider): Draw
6588         divider face using Vvertical_divider_face background.
6589         Fix drawing spacing gaps around the divider.
6590
6591 1998-05-14  Didier Verna  <verna@inf.enst.fr>
6592
6593         * redisplay-x.c (x_output_vertical_divider): removed hard-wired
6594         values for the vertical divider line width and spacing. Use the
6595         cached values from the window structure instead.
6596         (x_divider_width): ditto.
6597
6598         * window.c (specifier_vars_of_window): new specifiers:
6599         vertical-divier -line-width and -spacing.
6600         (vertical_divider_global_width_changed): formerly known as
6601         vertical_divider_shadow_thickness_changed.
6602
6603         * winslots.h: new slots: vertical_specifier _line_width and
6604         _spacing. Plus corrected a comment typo.
6605
6606 1998-05-15  Kirill M. Katsnelson  <kkm@kis.ru>
6607
6608         * window.h: Declared window_divider_width().
6609
6610         * console-stream.c (stream_divider_width): Removed method.
6611         (console_type_create_stream): And declaration for it.
6612
6613         * redisplay.c (pixel_to_glyph_translation): Use
6614         window_divider_width() instead of divider_width redisplay method.
6615         (pixel_to_glyph_translation): Fix top divider edge calculation
6616         when scrollbar is on top.
6617
6618         * window.c (window_divider_width): New function, an outphaser for
6619         divider_width redisplay method.
6620         (window_right_gutter_width): Use it.
6621         (specifier_vars_of_window): For vertical-divider-{spacing,line-width}
6622         specifiers, set fallback values differently on TTYs, and document
6623         the behavior of these on TTYs in the docstrings.
6624
6625         * scrollbar.c (update_scrollbar_instance): Use
6626         window_divider_width() instead of divider_width redisplay method.
6627
6628         * console.h (struct console_methods): Removed divider_width_method.
6629
6630         * redisplay-tty.c (tty_divider_width): Removed device method.
6631         (console_type_create_redisplay_tty): Removed definition for it.
6632         (tty_output_vertical_divider): Respect the value returned by
6633         window_divider_width thus divider line width specification.
6634
6635         * redisplay-msw.c (mswindows_divider_width): Removed device method.
6636         (console_type_create_redisplay_mswindows): Removed definition for it.
6637         (mswinodws_output_vertical_divider): Respect the value returned by
6638         window_divider_width thus divider line width specification.
6639
6640 1998-05-15  Andy Piper  <andyp@parallax.co.uk>
6641
6642         * toolbar-msw.c: guess toolbar frame size a bit more accurately.
6643
6644 1998-05-15  Andy Piper  <andyp@parallax.co.uk>
6645
6646         * glyphs-msw.c: resource loading implementation.
6647         (cursor_normalize): new function.
6648         (cursor_validate): ditto.
6649         (cursor_instantiate): ditto.
6650         (cursor_name_to_resource): ditto.
6651         (cursor_possible_dest_types): ditto.
6652         (check_valid_symbol): ditto.
6653         (check_valid_string_or_int): ditto.
6654
6655 1998-05-14  Martin Buchholz  <martin@xemacs.org>
6656
6657         * sysdep.c (tty_init_sys_modes_on_device): Treat VSUSP just like
6658         VINTR and VQUIT.
6659
6660         * process-unix.c (process_signal_char): Use VSUSP instead of
6661         non-standard VSWTCH.  Always prefer VSUSP to VSWTCH.
6662
6663 1998-05-14  Kirill M. Katsnelson  <kkm@kis.ru>
6664
6665         * specifier.c (specifier_instance): Change locale precedence of
6666         instantiation so window locale has higher priority than buffer
6667         locale.
6668         (Fspecifier_instance): Reflect this in docstring.
6669         (Fadd_spec_list_to_specifier): Ditto.
6670         (Fadd_spec_to_specifier): Ditto.
6671         (Fremove_specifier): Ditto.
6672
6673 1998-05-15  Kirill M. Katsnelson  <kkm@kis.ru>
6674
6675         ** Dialog separation into a device method from Andy Piper
6676
6677         * emacs.c (main_1): Call console_type_create_dialog_x().
6678
6679         * dialog-x.c (x_popup_dialog_box): Old Fpopup_dialog_box converted
6680         into this device method.
6681         (console_type_create_dialog_x): New function.
6682
6683         * dialog.c (Fpopup_dialog_box): New function.
6684         (syms_of_dialog): Defsubr it.
6685
6686         * console.h (struct console_methods): Declared
6687         popup_dialog_box_method().
6688
6689         * symsinit.h: Defined console_type_create_dialog_{x,mswindows}
6690
6691 1998-05-14  Oliver Graf <ograf@fga.de>
6692
6693         * dragdrop.c (vars_of_dragdrop): dragdrop-protocols created
6694         * frame-x.c (x_cde_transfer_callback): checked for merge errors
6695
6696 1998-05-13  Oliver Graf <ograf@fga.de>
6697
6698         * dragdrop.c (vars_of_dragdrop): provide dragdrop-api
6699
6700 1998-05-15  Kirill M. Katsnelson  <kkm@kis.ru>
6701
6702         * console.h (device_metrics): Removed dbcs, input-method-editor
6703         and right-to-left metrics.
6704
6705         * device.c (Fdevice_system_metric): Ditto.
6706         (Fdevice_system_metrics): Ditto.
6707         (syms_of_device): Ditto.
6708         (Fdevice_system_metric): Swapped DEVICE and METRIC parameters back
6709         again.
6710
6711 1998-05-14  Hrvoje Niksic  <hniksic@srce.hr>
6712
6713         * line-number.h (mark_line_number_cache): Remove unused
6714         declaration.
6715
6716         * line-number.c (LINE_NUMBER_FAR): Increase to 32768.
6717         (get_nearest_line_number): Simplify.
6718         (add_position_to_cache): Make the old marker point nowhere.
6719
6720 1998-05-14  Kirill M. Katsnelson  <kkm@kis.ru>
6721
6722         ** Renamed window-divider-map => vertical-divider-map
6723         and event-over-divider-p => event-over-vertical-divider-p,
6724         in the following files/functions:
6725         * events.h:
6726         * events.c (Fevent_over_divider_p):
6727         * keymap.c (get_relevant_keymaps):
6728         (vars_of_keymap):
6729
6730         * redisplay.h (OVER_V_DIVIDER): Renamed so from OVER_DIVIDER.
6731
6732         * redisplay.c (pixel_to_glyph_translation): Use OVER_V_DIVIDER.
6733
6734 1998-05-14  Kirill M. Katsnelson  <kkm@kis.ru>
6735
6736         * window.c (vertical_divider_changed_in_window): Renamed so.
6737         (specifier_vars_of_window): Defined Vvertical_divider_draggable_p.
6738         (window_needs_vertical_divider_1): Decide whether we need it based
6739         on the value of the above specifier. If separators are unwanted,
6740         put them only if there's no scrollbar between this window and its
6741         right neighbor.
6742         (have_undivided_common_edge): New function, helper for the above.
6743         (window_needs_vertical_divider): Return either a cached value,
6744         or clauclate and cache one.
6745         (invalidate_vertical_divider_cache_in_window): Implemented.
6746         (map_windows): Changed return type to int, return the value from
6747         MAPFUN.
6748
6749         * window.h: Prototype invalidate_vertical_divider_cache_in_window.
6750         (struct window): Added need_vertical_divider_p and
6751         need_vertical_divider_valid_p.
6752
6753         * winslots.h: Added vertical_divider_draggable_p slot.
6754
6755         * scrollbar.c (vertical_scrollbar_changed_in_window): Implemented.
6756         (specifier_vars_of_scrollbar): Used it in all vertical specifiers.
6757
6758         * frame.c (invalidate_vertical_divider_cache_in_frame): New function.
6759
6760         * frame.h (MARK_FRAME_WINDOWS_STRUCTURE_CHANGED): Call
6761         invalidate_vertical_divider_cache_in_frame().
6762         Prototype it.
6763
6764 1998-05-14  Andy Piper  <andyp@parallax.co.uk>
6765
6766         * toolbar-msw.c: provide correct parameters to TB_SETROWS.
6767
6768         * glyphs-msw.c (mswindows_initialize_image_instance_mask): size
6769         masks correctly and don't select 0.
6770
6771 1998-05-14  Kirill M. Katsnelson  <kkm@kis.ru>
6772
6773         * winslots.h: New file, declaration of some struct window and
6774         struct saved_window members.
6775
6776         * window.h (struct window): Include it, with required preprocessor
6777         magic.
6778
6779         * window.c (mark_window): Ditto.
6780         (allocate_window): Ditto.
6781         (struct saved_window): Ditto.
6782         (mark_window_config): Ditto.
6783         (saved_window_equal): Ditto.
6784         (Fset_window_configuration): Ditto.
6785
6786 1998-05-14  Kirill M. Katsnelson  <kkm@kis.ru>
6787
6788         * redisplay-msw.c (mswindows_output_vertical_divider): Syntax fix.
6789
6790 1998-05-12  Didier Verna  <verna@inf.enst.fr>
6791
6792         * redisplay-x.c (x_output_vertical_divider): draw shadows around
6793         the divider line. The shadow thickness is currently
6794         hard-wired. This will probably be turned into a specifier soon.
6795
6796 1998-05-12  Didier Verna  <verna@inf.enst.fr>
6797
6798         * console.h (struct console_methods): the divider_width console
6799         method now requires a struct window * argument.
6800
6801         * redisplay-x.c (x_divider_width): ditto. Plus remove
6802         X_DIVIDER_WIDTH, X_DIVIDER_SHADOW_THICKNESS.
6803         (x_output_vertical_divider): give a depressed look when the shadow
6804         thickness is negative.
6805
6806         * console-stream.c (stream_divider_width): pass a struct window *
6807         argument.
6808
6809         * redisplay-tty.c (tty_divider_width): ditto.
6810
6811         * window.c (window_right_gutter_width): totdi.
6812
6813         * redisplay.c (generate_modeline): ittod.
6814
6815         * scrollbar.c (update_scrollbar_instance): ttido.
6816
6817         * redisplay-msw.c (mswindows_divider_width): ottid.
6818         WARNING: this enables to compile, but the feature is not functional.
6819
6820         * window.h (struct window): new field
6821         vertical_divider_shadow_thickness.
6822
6823         * window.c (specifier_vars_of_window): new specifier
6824         vertical-divider-shadow-thickness.
6825         (vertical_divider_shadow_thickness_changed): new function to
6826         inform redisplay that the window has changed.
6827         (mark_window): handle new field vertical_divider_shadow_thickness
6828         from struct window.
6829         (allocate_window): ditto.
6830         (saved_window_equal): toddi.
6831         (Fset_window_configuration): totid.
6832         (save_window_save): ttdio.
6833         (struct saved_window): new field vertical_divider_shadow_thickness.
6834
6835 1998-05-14  Kirill M. Katsnelson  <kkm@kis.ru>
6836
6837         * device-msw.c (mswindows_device_system_metrics): Support a deluge
6838         of metrics.
6839
6840 1998-05-12  Oliver Graf <ograf@fga.de>
6841
6842         * frame-x.c (x_cde_transfer_callback): fixed for the new protocol
6843         * event-Xt.c (x_event_to_emacs_event): C++ compability
6844
6845 1998-05-14  Hrvoje Niksic  <hniksic@srce.hr>
6846
6847         * emacs.c (Fdecode_path): Default SEPCHAR to value of
6848         path-separator.
6849
6850 1998-05-14  Hrvoje Niksic  <hniksic@srce.hr>
6851
6852         * emacs.c (vars_of_emacs): Do it here; change the meaning of
6853         Vpath_separator.
6854
6855         * fileio.c (vars_of_fileio): Don't define Vpath_separator here.
6856
6857 1998-05-14  Hrvoje Niksic  <hniksic@srce.hr>
6858
6859         * emacs.c (decode_path_1): New function.
6860         (decode_path): Use it.
6861         (Fdecode_path): Renamed from Fdecode_path_internal; use
6862         decode_path_1.
6863
6864 1998-05-12  Hrvoje Niksic  <hniksic@srce.hr>
6865
6866         * macros.c (Fzap_last_kbd_macro_event): New function.
6867         (Fend_kbd_macro): Remove REMOVE_LAST kludge.
6868
6869 1998-05-10  Andy Piper  <andyp@parallax.co.uk>
6870
6871         * redisplay-msw.c (mswindows_output_dibitmap_region): make sure
6872         multiple bitmaps are output vertically as well as horizontally.
6873         * (mswindows_output_dibitmap): don't cope with bitmap boundaries
6874         crossing lines this is handled by
6875         mswindows_output_dibitmap_region.
6876
6877 1998-05-12  Martin Buchholz  <martin@xemacs.org>
6878
6879         * inline.c: Include eldap.h
6880
6881         * menubar-x.c (x_update_frame_menubar_internal):
6882         Remove: unused variable `container'
6883
6884 1998-05-11  Martin Buchholz  <martin@xemacs.org>
6885
6886         * s/aix4.h: Allow AIX 4.3 XEmacs to compile cleanly.
6887         Unfortunately, the resulting temacs still cannot dump.
6888
6889         * symbols.c (symbol_is_constant):
6890         (verify_ok_for_buffer_local):
6891         -Wswitch Warning suppression - add default case to switches.
6892
6893         * redisplay.c (decode_mode_spec): Remove unused variables,
6894         Replace Fcoding_system_property (codesys, Qmnemonic) with
6895         XCODING_SYSTEM_MNEMONIC (codesys);
6896         Fcoding_system_property is for users.
6897
6898         * buffer.c:
6899         * fileio.c:
6900         * lread.c:
6901         * xselect.c:
6902         Change empty docstrings into no doc strings at all.
6903         Fix bogus FSF-format docstrings.
6904
6905         * extents.c:
6906         Standardize docstrings.
6907
6908         * floatfns.c:
6909         Explain problems with matherr.
6910
6911         * glyphs.c:  make DEFUNs etags-readable, i.e. single-line
6912
6913         * syssignal.h:
6914         if BROKEN_SIGIO, then SIGIO wants to be undefined.
6915         if SIGIO and not SIGPOLL, SIGPOLL wants to be SIGIO.\
6916         Fix the weird resultant interaction (causes windows problems)
6917
6918         * gdbinit:
6919         * dbxrc:
6920         Take new EMACSBOOTSTRAPLOADPATH into account.
6921         Update documentation strings
6922
6923         * Makefile.in.in:
6924         - Adjust for luser's CDPATH being set to something weird.
6925         - Take into account bash 2.02's tendency to print the cwd when
6926           using CDPATH.  Always use `cd ./foo' instead of `cd foo'.
6927         - fix the run-temacs target to use $(DUMPENV)
6928         - fix the run-puremacs target to use $(DUMPENV)
6929         - fix the `depend' target to properly $(RM) the right files
6930         - Generate a better TAGS file for XEmacs' lisp code using
6931           hand-crafted regexps.
6932         - Use standard coding conventions for modules/Makefile.in
6933
6934 1998-05-12  Didier Verna  <verna@inf.enst.fr>
6935
6936         * redisplay.c: removed the scrolling modeline code that didn't
6937         make it for 21.0. To be continued ...
6938
6939 1998-05-13  Michael Sperber [Mr. Preprocessor]  <sperber@informatik.uni-tuebingen.de>
6940
6941         * emacs.c (Fdecode_path_internal): Removed bogus handling of nil
6942         and empty string inputs.
6943
6944 1998-05-12  Hrvoje Niksic  <hniksic@srce.hr>
6945
6946         * redisplay-x.c (x_output_vertical_divider): Fixed typo.
6947
6948 1998-05-10  Oliver Graf <ograf@fga.de>
6949
6950         * event-stream.c (enqueue_misc_user_event_pos): created
6951         * lisp.h (enqueue_misc_user_event_pos): prototype added
6952         * frame-x.c (x_cde_transfer_callback): debug code plus API changes
6953         * emacs.c: call vars_of_dragdrop
6954         * dragdrop.c (vars_of_dragdrop): provide dragdrop
6955
6956 1998-05-11  Oliver Graf <ograf@fga.de>
6957
6958         * frame-x.c (x_cde_transfer_callback): return at correct pos
6959         * event-Xt.c (x_event_to_emacs_event): changed format of drop
6960         object for MIME (see comment in dragdrop.c)
6961         * dragdrop.c: API change documented in comment
6962         removed provide of dragdrop [is provided by dragdrop.el]
6963
6964 1998-05-12  Kirill M. Katsnelson  <kkm@kis.ru>
6965
6966         * window.c (window_needs_vertical_divider): Enable vertical
6967         dividers for every non-rightmost window.
6968         (window_left_gutter_width): Left gutter consists of mythical
6969         toolbar and a virtual scrollbar.
6970         (window_right_gutter_width): The right one may have a divider
6971         also.
6972
6973         * scrollbar.c (update_scrollbar_instance): Position vertical
6974         scrollbar left to divider if the latter present.
6975
6976         * redisplay.h: Declared OVER_DIVIER constant.
6977
6978         * redisplay.c (pixel_to_glyph_translation): Handle OVER_DIVIDER
6979         case.
6980
6981         * redisplay-x.c (x_output_vertical_divider): Output divider along
6982         the right side of the window, down to window bottom. Swapped
6983         foreground and background colors so it is visible by default.
6984
6985         * redisplay-tty.c (tty_output_vertical_divider): Uncondiionally
6986         stick the divider to the right window side.
6987
6988         * redisplay-msw.c (mswindows_redisplay_deadbox_maybe): Fixed
6989         deadbox painting.
6990         (mswindows_divider_width): Ask system for user preferred value.
6991         (mswindows_output_vertical_divider): Always output the divider on
6992         the right side of a window, down to bottom.
6993
6994         * keymap.c (get_relevant_keymaps): Route mouse button events which
6995         happened over a window divider through window-divider-map.
6996         (Fkey_binding): Documented that in the docstring.
6997         Defined the variable Vwindow_divider_map.
6998
6999         * events.c (Fevent_over_divider_p): Added this function.
7000
7001         * events.h: EXFUNed it.
7002
7003 1998-05-12  Kirill M. Katsnelson  <kkm@kis.ru>
7004
7005         * toolbar.c (update_frame_toolbars): Re-layout frame windows if
7006         toolbar geometry is suspected to change.
7007
7008 1998-05-11  Jonathan Harris  <jhar@tardis.ed.ac.uk>
7009
7010         * src/device-msw.c
7011         * src/event-msw.c
7012         Condition dnd and dde code on HAVE_DRAGNDROP.
7013
7014 1998-05-11  Hrvoje Niksic  <hniksic@srce.hr>
7015
7016         * events.c (format_event_object): Print space as SPC etc.
7017
7018 1998-05-11  Hrvoje Niksic  <hniksic@srce.hr>
7019
7020         * print.c (print_internal): In the default case, abort() if
7021         ERROR_CHECK_TYPECHECK.
7022
7023         * fileio.c (Fmake_temp_name): Doc fix.
7024
7025 1998-05-10  Hrvoje Niksic  <hniksic@srce.hr>
7026
7027         * xgccache.c (describe_gc_cache): Define only if DEBUG_XEMACS.
7028
7029         * undo.c (Fprimitive_undo): Fixed typo.
7030
7031 1998-05-11  Hrvoje Niksic  <hniksic@srce.hr>
7032
7033         * fns.c (concat): Signal error on integer argument.
7034
7035 1998-05-10  Kirill M. Katsnelson  <kkm@kis.ru>
7036
7037         * console.h (device_metrics): Prefixed each constatnt with DM_
7038
7039         * device.c: (Fdevice_system_metric): Renamed so from plural form
7040         (metrics); Changed parameters order and added DEFAULT parameter;
7041         Unabbreviated some metric constants; Fixed and untabified doc string.
7042         (Fdevice_system_metrics): Added. Returns a plist of all provided
7043         metrics.
7044
7045         * device-msw.c (mswindows_device_system_metrics): Renamed
7046         device_metrics enum constants.
7047         Return Qunbound instead of Qnil.
7048
7049         * device-tty.c (tty_device_system_metrics): Ditto.
7050
7051         * device-x.c (x_device_system_metrics): Ditto.
7052
7053 1998-05-10  Andy Piper  <andyp@parallax.co.uk>
7054
7055         * redisplay-msw.c: implement background pixmaps (really!). Make
7056         sure bg color is transparent if we have bg pmaps.
7057         * (mswindows_output_string) (mswindows_clear_region): output bg
7058         pmap if required.
7059         * (mswindows_output_dibitmap_region): new function.
7060         * (mswindows_output_dibitmap): output offset pixmaps, blt masks in
7061         the bg color rather than transparently.
7062
7063         * toolbar-msw.c: use masks if they exist.
7064
7065         * glyphs-msw.c: set up masks correctly.
7066
7067         * event-msw.c: typedef SOCKET if cygwin and not msg select().
7068
7069 1998-05-10  Hrvoje Niksic  <hniksic@srce.hr>
7070
7071         * regex.c (re_match_2_internal): Check for quit.
7072
7073 1998-05-10  Hrvoje Niksic  <hniksic@srce.hr>
7074
7075         * frame.c (Ffocus_frame): New function.