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