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