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