XEmacs -- Emacs: The Next Generation
     Searching XEmacs
Quick Links About XEmacs Getting XEmacs Customizing XEmacs Troubleshooting XEmacs Developing XEmacs

XEmacs 21.2.33 Release

Summary of Changes to 21.2.33 "Melpomene"

goto changes

  • Yet more progress gauge and gutter redisplay fixes from Andy Piper
  • glyph error checking from Andy Piper
  • Proper implementation of string glyps makes them Mule safe (IKEYAMA Tomonori)
  • Bug fixes from the usual suspects
  • --with-clash-detection now defaults to `yes', at least for betas.
  • Autoconf support for detecting how to #include header files with names containing preprocessor constants, Didier Verna.
  • LDAP documentation updated, Oscar Figueiredo.
  • clash-detection code cleaned and audited, Yoshiki and Martin
  • Fix hangs on DEC OSF 4.0 when (process-send-string) sends strings longer than 252 bytes.
  • Fix non-ANSI macro hacking to allow compilation by Irix native compiler.
  • redisplay fixes, IKEYAMA Tomonori
  • Code cleaning, Mike Alexander
  • Pdump + Windows support, Mike Alexander
  • Sound code cleanup, Jan Vroonhof
  • yes-or-no-p-dialog-box no longer gives unpredictable results with focus follows mouse, Martin Buchholz

ChangeLogs for Release 21.2.33 "Melpomene" of XEmacs

goto summary


goto changes, summary

2000-04-19  Martin Buchholz  <martin@xemacs.org>

	* gnuclient.c (initialize_signals): Always use full ANSI prototypes.

2000-04-06  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>

	* i.c: New file, source for the i utility.

2000-03-22  Mike Alexander  <mta@arbortext.com>

	* make-dump-id.c (gettimeofday): new (Windows only)


goto changes, summary

2000-04-29  Martin Buchholz  <martin@xemacs.org>

	* dialog.el (yes-or-no-p-dialog-box): 
	Fix docstring.
	Fix following horrible bug in X11 mode with focus-follows-mouse: 
	  1. Visit two files in two different frames.
	  2. do File->Revert Buffer in one of those frames.
	  3. Dialog box appears.
	  4. Arrange things so that the mouse passes over the *other*
	     frame, then to the dialog box, and click on "Yes".
	  5. The file contents end up in the *wrong* buffer!
	Add TODO comment.
2000-04-28  Ben Wing  <ben@xemacs.org>

	* help.el (describe-installation): correct typo introduced
	in last patch: boundp -> fboundp.

	* etags.el (buffer-tag-table-list):
	canonicalize filenames to Unix format so that tag-table-alist
	searching works under Windows.
	* autoload.el:
	Bowdlerize the supposedly objectionable words
	"who couldn't quite manage to cleanly modify batch-update-autoloads".
	* gutter-items.el (set-progress-display-style):
	* gutter-items.el (search-dialog-callback):
	* gutter-items.el (make-search-dialog):
	Change to new callback-ex api.

2000-04-26  Björn Torkelsson  <torkel@hpc2n.umu.se>

	* help.el: (describe-installation): decode-coding-string is not
	defined in a non MULE environment.

2000-04-28  Ben Wing  <ben@xemacs.org>

	* gutter-items.el (buffer-list-changed-hook):
	use it, not record-buffer-hook.

	* subr.el (record-buffer-hook): Removed.

2000-04-27  Ben Wing  <ben@xemacs.org>

	* gutter-items.el (buffers-tab-switch-to-buffer): do not
	use NORECORD option.  Andy will not like this, but the existing
	gutter behavior is just wrong, as per this comment:

	;; this used to add the norecord flag to both calls below.
        ;; this is bogus because it is a pervasive assumption in XEmacs
        ;; that the current buffer is at the front of the buffers list.
        ;; for example, select an item and then do M-C-l
        ;; (switch-to-other-buffer).  Things get way confused.
        ;; Andy, if you want to maintain the current look, you must
        ;;  *uncouple* the gutter order and buffers order.

	* loaddefs.el (completion-ignored-extensions): unfuckify.

	* bytecomp.el (batch-byte-compile-one-file): new function, used in

	* autoload.el (batch-update-one-directory): new function, used in

	* loadup.el: set gc-cons-threshold very high unless dumping --
	loadup during update-elc is much much much faster.  also do this
	when quick-building.

	add commented-out code for profiling loadup.

	* update-elc.el (preloaded-file-list): add bytecomp.el, since it
	is required in order to build xemacs.

2000-04-26  Ben Wing  <ben@xemacs.org>

	* loadup.el: don't garbage collect during loadup if quick-build
	compile-time option is set.

2000-04-23  Ben Wing  <ben@xemacs.org>

	* update-elc.el: compute whether any dumped .el or .elc files
	are newer than the dumped exe, and touch the file ../src/NEEDTODUMP
	if so.
	* update-elc.el (update-elc-files-to-compile): always change
	NOBYTECOMPILE in the src directory rather than current dir,
	so it will work under NT.

	* autoload.el (autoload-trim-file-name): canonicalize to slashes so
	the form of this file is identical between Unix and Windows.
	(autoload-target-directory): Fixed to be lisp/ not lisp/prim/.
	Added comment.
	(update-autoloads-from-directory): updated doc string.
	updated doc strings in a few other places.

2000-04-18  Yoshiki Hayashi  <yoshiki@xemacs.org>

	* bytecomp.el (byte-force-recompile): Fix argument to

2000-04-17  Yoshiki Hayashi  <yoshiki@xemacs.org>

	* gutter-items.el (progress-display-clear-when-idle): Use
	* gutter-items.el (clear-progress-display): Adjust number of

2000-04-13  Yoshiki Hayashi  <yoshiki@xemacs.org>

	* dumped-lisp.el (preloaded-file-list): Always dump select.el.

2000-04-16  Ben Wing  <ben@xemacs.org>

	* printer.el: New file.
	* dumped-lisp.el (preloaded-file-list): Declare printer.el.
	* help.el (describe-installation): Fix decoding for Windows.
	* menubar-items.el:
	* menubar-items.el (default-menubar):
	* menubar-items.el (tutorials-menu-filter): New.
	* menubar-items.el (popup-menubar-menu):
	Add authorship.  Redo Help menu and Tutorials filter.
	* menubar.el: Correct comment.
	* modeline.el (modeline-buffer-identification): Correct doc string.
	* simple.el:
	* simple.el (printing): Removed.
	* simple.el (printer-name): Removed.
	* simple.el (generic-print-buffer): Removed.
	* simple.el (generic-print-region): Removed.
	Move generic print code to printer.el.

2000-04-15  Ben Wing  <ben@xemacs.org>

	* simple.el (generic-print-region): New.
	make this function actually work.
	(generic-print-buffer): call generic-print-region.

2000-04-14  Andy Piper  <andy@xemacs.org>

	* gutter-items.el (make-search-dialog): avoid unneccessary futzing
	by using the new widget-callback-current-channel.
	(search-dialog-callback): ditto.

2000-04-12  Andy Piper  <andy@xemacs.org>

	* gutter.el (default-gutter-position): moved from gutter-items.el.
	(default-gutter-position-changed-hook): ditto.
	(gutter-element-visibility-changed-hook): ditto.
	(set-gutter-element): ditto.
	(remove-gutter-element): ditto.
	(set-gutter-element-visible-p): ditto. 
	(gutter-element-visible-p): ditto.
	(init-gutter): ditto.

	* dialog.el (make-dialog-box): renamed and moved from

	* gutter-items.el: move various functions elsewhere.

2000-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>

	* menubar-items.el: Fixed place of parenthesis.

2000-04-12  Ben Wing  <ben@xemacs.org>

	* etags.el (find-tag-at-point): New.  Lets you do find-tag
		without constantly being prompted for the tag.
	* simple.el: Added a number of section headings, to clarify the
		organization of this file.
	* simple.el (activate-region): 
	* simple.el (region-exists-p): 
	* simple.el (region-active-p): 
		Moved these three function down to the other side of
		the case-changing functions, so they join the rest of
		the region code.
	* simple.el (printing): New.
	* simple.el (printer-name): New.
	* simple.el (generic-print-buffer): New.
		New functions, a very simple prototype for a unified
		printing interface.
	* process.el (call-process-internal): Real fix for null BUFFER,
		other problems with BUFFER specs.
	* menubar-items.el:
		Fixed up File->Print to use new printing functions.
		Various corrections and expansions to Grep/Compile menus.
		New options for Printing.
		New options for SMTP Mail, the way to send mail under
		  MS Windows. (There's also a package patch to make SMTP
		  Mail be the default under MSWin.)

2000-04-09  Jeff Miller <jmiller@cablespeed.com>

	* menubar-items.el: Selecting Rectangle Mousing from menubar
	did not work.  Needed to quote mouse-track-rectangle-p.

2000-04-06  Yoshiki Hayashi  <yoshiki@xemacs.org>

	* cl-compat.el (keywordp): Removed.

2000-04-05  Andy Piper  <andy@xemacs.org>

	* gutter-items.el (progress-layout-glyph): don't initialize here.
	(progress-gauge-glyph): use dynamic sizing.
	(set-progress-display-style): new function. Set progress glyphs
	appropriately depending on the style.
	(progress-display-style): new variable. Custom version of
	(progress-abort-glyph): switch to dynamic sizes.
	(search-dialog-text): make the edit field active.

2000-04-04  Andy Piper  <andy@xemacs.org>

	* gutter-items.el (make-search-dialog): need to make the search
	dialog visible after creation.

	* menubar-items.el (default-menubar): use the search dialog for
	searching. Remove some extraneous search menu items.

	* gutter-items.el (set-gutter-element): allow glyphs to be used as
	well as strings.
	(make-gutter-only-dialog-frame): allow the user to create the
	frame unmapped. Allow the gutter spec to be given as a glyph.
	(search-dialog-direction): new variable.
	(search-dialog-text): new variable.
	(search-dialog-callback): new function. Callback for the search
	dialog action.
	(make-search-dialog): new function. Create a user-friendly search

2000-04-04  Hrvoje Niksic  <hniksic@iskon.hr>

	* faces.el (set-face-stipple): Use mswindows-bitmap-file-path
	under Windows.

2000-04-01  Andy Piper  <andy@xemacs.org>

	* font-lock.el (font-lock-fontify-keywords-region): Calculate
	progress more accurately.

2000-02-02  Hirokazu FUKUI  <hfukui@sannet.ne.jp>

	* finder.el (finder-compile-keywords): Process readable files only.
	Because error in process of .#finder-inf.el when compile xemacs
	with --with-clash-detection option.

2000-03-31  Andy Piper  <andy@xemacs.org>

	* gutter-items.el (append-progress-display): don't delay after a
	successful font-lock.
	(make-gutter-only-dialog-frame): new function. Allow users to
	create gutter-only dialogs.

2000-03-27  Mike Alexander  <mta@arbortext.com>

	* process.el (call-process-internal): Handle a null BUFFER
	parameter correctly.

2000-03-28  Andy Piper  <andy@xemacs.org>

	* gutter-items.el (abort-progress-display): put strings in the
	gutter not extents.
	(progress-layout-glyph): signal special 'quit callback.
	(progress-display-quit-function): deleted.
	(progress-display-stop-callback): deleted.
	(progress-display-dispatch-command-events): deleted.
	(append-progress-display): remove calls to
	(raw-append-progress-display): ditto.

2000-03-23  Hrvoje Niksic  <hniksic@iskon.hr>

	* faces.el (set-face-stipple): Rewrite to correctly handle PIXMAP
	being a list.  Actually define `stipple-pixmap-p' which is used as
	an error predicate.  Correctly handle PIXMAP being either relative
	or absolute file name.

2000-03-24  Andy Piper  <andy@xemacs.org>

	* gutter-items.el (add-tab-to-gutter): use copy-sequence.
	(abort-progress-display): ditto. Don't delete the created extent.
	(raw-append-progress-display): ditto.
	(progress-display-dispatch-non-command-events): new
	function. Encapsulates what we want to do when no command input is
	(progress-display-dispatch-command-events): likewise, but disable
	for now since it causes too many problems.
	(append-progress-display): use them.
	(raw-append-progress-display): ditto.
	(default-gutter-position-changed-hook): set this rather than
	(default-gutter-position-changed-hook): lambda with zero arguments
	rather than one.
	(raw-append-progress-display): trap errors in pending input since
	allowing them to signal will hose the gauge well and
	truly. Ideally we would like to delay these until we are more able
	to cope.
	(append-progress-display): ditto.

2000-03-20  Jeff Miller <jmiller@cablespeed.com>
	* lisp/make-docfile.el: call-process-internal is now implemented
	in process.el.

2000-03-21  Ben Wing  <ben@xemacs.org>

	* mule\mule-cmds.el (set-language-info-alist): 
	Fix to correspond to new menu arrangement.

2000-03-21  Ben Wing  <ben@xemacs.org>

	* process.el:
	* process.el (call-process-internal): New.
	New implementation of call-process.  Only enabled under NT, so far.
	stderr handling not implemented yet in CVS'd C code.

2000-03-20  Ben Wing  <ben@xemacs.org>

	* lisp-mode.el:
	* lisp-mode.el (lisp-interaction-mode-menubar-menu): New.
	* lisp-mode.el (lisp-interaction-mode):
	Put back Lisp Interaction menubar for Jan V's sake.
	* simple.el:
	* simple.el (mark-ring):
	* simple.el (dont-record-current-mark): New.
	* simple.el (in-shifted-motion-command): New.
	* simple.el (mark-ring-unrecorded-commands): New.
	* simple.el (mark-ring-max):
	* simple.el (set-mark-command):
	* simple.el (push-mark):
	* simple.el (handle-pre-motion-command):
	Implement scheme for not recording unimportant marks.
	* subr.el:
	* subr.el (function-allows-args): New.
	New function function-allows-args.


goto changes, summary

2000-04-19  Martin Buchholz  <martin@xemacs.org>

	* lwlib.c (lw_destroy_everything): Always use full ANSI prototypes.
	* lwlib.c (lw_destroy_all_pop_ups): Always use full ANSI prototypes.

2000-04-12  Andy Piper  <andy@xemacs.org>

	* lwlib-Xaw.c (xaw_update_one_widget): no-op for text widgets.
	(xaw_update_one_value): Get strings safely.
	(xaw_create_text_field): add some extra properties.

2000-04-05  Andy Piper  <andy@xemacs.org>

	* lwlib-Xaw.c (lw_xaw_widget_p): include asciiTextWidgetClass as
	an athena widget.

2000-04-05  Andy Piper  <andy@xemacs.org>

	* xlwradio.c (RadioSetValues): resize if position information has

	* lwlib-Xm.c (xm_create_text_field): text fields should be enabled
	even if there is no callback.
	* lwlib-Xaw.c (xaw_create_text_field): ditto.

2000-04-03  Andy Piper  <andy@xemacs.org>

	* lwlib.c (merge_widget_value_args): only merge when the two args
	are actually different.

2000-03-21  Didier Verna  <didier@xemacs.org>

	* config.h.in: move INCLUDE_GLUE_1 and INCLUDE_GLUE_2 to
	* config.h.in (ATHENA_INCLUDE): use the `SMART_INCLUDE' macro.


goto changes, summary

2000-04-11  Yoshiki Hayashi  <yoshiki@xemacs.org>

	* xemacs-faq.texi (Q2.1.24): Removed wrong header.

2000-04-01  Oscar Figueiredo  <oscar@xemacs.org>

	* lispref/ldap.texi: Documentation of the add/modify/delete and
	  internationalization APIs

	* lispref/lispref.texi: Updated LDAP-related menus


goto changes, summary

2000-04-27  Ben Wing  <ben@xemacs.org>

	* xemacs.mak: combine auto-autoloads.el and custom.el update into
	one call to xemacs.

2000-04-26  Ben Wing  <ben@xemacs.org>

	* xemacs.mak: put in support for QUICK_BUILD.

	* config.inc.samp: put in an entry for QUICK_BUILD.

2000-04-23  Ben Wing  <ben@xemacs.org>

	* xemacs.mak: Modified section that dumps .exe to not dump
	when nothing has changed.  It does this by relying on a flag
	set by update-elcs.

	Also in building of auto-autoloads.el, we no longer unconditionally
	remove the old one.  That was pointless and made the whole build
	procedure a lot longer -- the autoload code is smart enough to
	update itself automatically from an out-of-date autoload file.

2000-04-04  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>

	* xemacs.mak: Build the i utility and use it to pipe windowed
	[xt]emacs output to the build console.

2000-03-25  Didier Verna  <didier@xemacs.org>

	* config.h: handle the renaming of `foo_h_path' to `foo_h_file'.

2000-03-22  Mike Alexander  <mta@arbortext.com>

	* xemacs.mak (PROGRAM_DEFINES): Define EMACS_VERSION and
	(DEPEND): Don't try to create $(OUTDIR) if it already exists
	($(SRC)\dump-id.c): Make it
	(DOC_SRC11): Add dumper.c if portable dumping
	(dump-xemacs): Make portable dumping work again and create
	dump-id.c and compile it whenever we do a portable dump.
	(depend): Change $(SRCDIR) to $(SRC)

2000-03-22  Jonathan Harris  <jhar@tardis.ed.ac.uk>

	* .cvsignore: New file, ignores user's config.inc and files
	containing the user's DevStudio workspace info.

	* config.h.samp: Added DEPEND option. Renamed HAVE_MSW and HAVE_X to

	* README: Documented DEPEND option. Other small changes.

	* Todo: Removed - was hopelessly out of date.

	* config.h.samp:
	* xemacs.mak: Added DEPEND option to control use of dependency
	information generated by make-src-depend. Requires Perl. Defaults
	to disabled. Renamed HAVE_MSW and HAVE_X to HAVE_MS_WINDOWS and
	HAVE_X_WINDOWS as a side-effect.
	Handles '&' in XEmacs codenames by replacing with 'and'.

	* xemacs.dsp:
	Correct Output_Dir so that DevStudio finds the xemacs executable
	by default.

2000-03-20  Ben Wing  <ben@xemacs.org>

	* README: Substantial rewrite.
	* xemacs.mak: Pdump fix. (not working yet, though)


goto changes, summary

2000-05-01  Yoshiki Hayashi  <yoshiki@xemacs.org>

	* make-src-depend: Allow dots in header file name.

2000-05-01  Yoshiki Hayashi  <yoshiki@xmacs.org>

	* mule-charset.h (struct charset_lookup): Add
	next_allocated_1_byte_leading_byte and
	* mule-charset.c: Move above two variables so that those values
	will be dumped.

2000-04-26  Yoshiki Hayashi  <yoshiki@xemacs.org>

	* insdel.c (find_charsets_in_bufbyte_string): Add Vcharset_ascii
	when string length is zero.
	(find_charsets_in_emchar_string): Ditto.

2000-04-29  Bjrn Torkelsson  <torkel@hpc2n.umu.se>

	* lisp.h: extern Qdialog and Qmenubar.

	* gui-x.c: added events.h.
		also fixed typo which made the file uncompilable.

	* general.c: Added Qmenubar and Qdialog

2000-04-28  Ben Wing  <ben@xemacs.org>

	* frame-msw.c (mswindows_init_frame_1):
	* frame-msw.c (mswindows_mark_frame):
	* event-msw.c (mswindows_enqueue_dispatch_event):
	* console-msw.h:
	* console-msw.h (struct mswindows_frame):
	there are now three hash tables for callbacks.
	mswindows_enqueue_dispatch_event is no longer static.
	* dialog-x.c (maybe_run_dbox_text_callback):
	* dialog-x.c (dbox_descriptor_to_widget_value):
	switch to new cons3 form for callbacks.
	* glyphs-msw.c (mswindows_register_gui_item):
	* glyphs-msw.c (mswindows_widget_instantiate):
	* glyphs-msw.c (add_tree_item):
	* glyphs-msw.c (add_tab_item):
	new image instance parameter, so it can be passed to callback-ex.
	respect :callback-ex as well as :callback.
	* glyphs-widget.c (VALID_GUI_KEYWORDS):
	add :callback-ex.
	* glyphs.c (print_image_instance):
	prettify, e.g. now prints widget type.
	* gui-x.h:
	certain funs have new image instance parameter.
	* gui.c:
	* gui.c (get_gui_callback):
	* gui.c (gui_item_add_keyval_pair):
	* gui.c (gui_item_init):
	* gui.c (gui_add_item_keywords_to_plist):
	* gui.c (mark_gui_item):
	* gui.c (gui_item_hash):
	* gui.c (gui_item_equal):
	* gui.c (copy_gui_item):
	* gui.c (syms_of_gui):
	recognize callback-ex in a number of places.
	also, fix the annoying "can't get out of yes-no dialog" bug.
	* gui.h:
	* gui.h (struct Lisp_Gui_Item):
	recognize callback-ex in a number of places.

	* menubar-x.c (menu_item_descriptor_to_widget_value_1):
	new parameter in button_item_to_widget_value.
	* glyphs-x.c (x_update_widget):
	* glyphs-x.c (x_button_instantiate):
	* glyphs-x.c (x_button_update):
	* glyphs-x.c (x_progress_gauge_instantiate):
	* glyphs-x.c (x_edit_field_instantiate):
	* glyphs-x.c (x_combo_box_instantiate):
	* glyphs-x.c (x_tab_control_instantiate):
	* glyphs-x.c (x_label_instantiate):
	new image instance parameter in various places.
	* event-Xt.c:
	* event-Xt.c (enqueue_Xt_dispatch_event):
	this fun gets exported.
	* gui-msw.c:
	* gui-msw.c (mswindows_handle_gui_wm_command):
	handle both :callback and :callback-ex, and generate our own
	event because it's one of the callback-ex arguments.
	* gui-x.c:
	* gui-x.c (popup_selection_callback):
	handle both :callback and :callback-ex, and generate our own
	event because it's one of the callback-ex arguments.
	* gui-x.c (button_item_to_widget_value):
	* gui-x.c (gui_items_to_widget_values_1):
	* gui-x.c (gui_item_children_to_widget_values):
	* gui-x.c (gui_items_to_widget_values):
	new image instance parameter in various places.

	* fns.c (Freplace_list):
	fix small typo in doc string.
	* lisp.h:
	declare enqueue_Xt_dispatch_event.

2000-04-28  Ben Wing  <ben@xemacs.org>

	* buffer.c:
	* buffer.c (Frecord_buffer):
	* buffer.c (syms_of_buffer):
	delete record-buffer-hook.
	* fns.c:
	* fns.c (Freplace_list):
	* fns.c (syms_of_fns):
	new primitive replace-list.
	* frameslots.h:
	slot for old buffer-alist.
	* lisp.h:
	exfun replace-list.
	* redisplay.c:
	* redisplay.c (redisplay_frame):
	* redisplay.c (syms_of_redisplay):
	* redisplay.c (vars_of_redisplay):
	new hook buffer-list-changed-hook.
	call it.

2000-04-27  Ben Wing  <ben@xemacs.org>

	* extents.h: extern in_modeline_generation.

	* redisplay.c (generate_formatted_string_db): set

	* extents.c (extent_changed_for_redisplay): don't mark redisplay
	flags if in modeline generation.  otherwise frame-modified-tick
	is ticked far too often.
	Declare in_modeline_generation.

2000-04-26  Ben Wing  <ben@xemacs.org>

	* emacs.c (vars_of_emacs): document quick-build "error-checking"
	(vars_of_emacs): add quick-build as an error-checking option.
	A bit kludgy, but there doesn't seem much point in creating
	a real var for this.

	* config.h.in: put in an entry for QUICK_BUILD; remove NO_DOC_FILE.

2000-04-14  IKEYAMA Tomonori  <tomonori@suiyokai.org>

	* redisplay.h (struct display_line): Add a new variable,

	* redisplay.c (create_text_block): Set dl->line_continuation if
	the line continues.
	(create_string_text_block): Ditto.
	(regenerate_window_incrementally): Use line_continuation instead
	of searching continuation glyph.
	(add_margin_runes): Call add_glyph_rune.
	(add_glyph_rune): Handle margin glyph.

2000-04-20  Martin Buchholz  <martin@xemacs.org>

	* filelock.c (fill_in_lock_file_name): 
	Check for IS_ANY_SEP instead of '/'.
	Avoid generating gratuitous garbage.  Call user_login_name() directly.
	Never check errno without first seeing that system call failed.
	(unlock_file): Add GCPRO.
	(Flock_buffer): Fix docstring.
	(Ffile_locked_p): Fix docstring.  Add GCPRO.

2000-04-19  Martin Buchholz  <martin@xemacs.org>

	* sysdep.c (get_pty_max_bytes): 
	Fix hangs on DEC OSF 4.0 when (process-send-string) sends
	strings longer than 252 bytes.

	* md5.c: Unconditionally include ANSI header <limits.h>

	* glyphs-x.c (convert_EImage_to_XImage): 
	* lisp-union.h (union Lisp_Object): 
	Use consistently the syntax #ifdef FEATURE, not #if FEATURE.

2000-04-13  Yoshiki Hayashi  <yoshiki@xemacs.org>

	* filelock.c (current_lock_owner): Remove unused variable o, p.

2000-04-17  Norbert Koch  <n.koch@eai-delta.de>

	* callint.c: Remove multiply defined symbol Qlet
	(syms_of_callint): ditto.

2000-04-14  Andy Piper  <andy@xemacs.org>

	* general.c (syms_of_general): add last-command, this-command, let
	and funcall.

	* lisp.h: declare various symbols.

	* glyphs.h: declare Qwidget_callback_current_channel;

	* glyphs-widget.c (syms_of_glyphs_widget): add
	(vars_of_glyphs_widget): add Vgui_callback_current_channel.

	* gui-msw.c (mswindows_handle_gui_wm_command): bind
	widget-callback-current-channel when invoking the interactive
	arg. Also bind last-command and next-command when invoking the
	widget updates.
	* gui-x.c (popup_selection_callback): ditto.

	* gui.c (get_gui_callback): massage args so that we are always
	calling eval. This allows us to add our own variable bindings

	* glyphs-x.c (x_button_instantiate): use
	gui_items_to_widget_values since this is GC safe.
	(x_progress_gauge_instantiate): ditto.
	(x_edit_field_instantiate): ditto.
	(x_label_instantiate): ditto.

	* event-Xt.c (emacs_Xt_handle_magic_event): remove old printfs.
	(emacs_Xt_event_widget_focus_out): new function
	(emacs_Xt_event_widget_focus_in): new function. Set the keyboard
	(emacs_Xt_event_add_widget_actions): new function. add focus
	functions as actions.
	(init_event_Xt_late): use it.

2000-04-14  Hrvoje Niksic  <hniksic@iskon.hr>

	* event-stream.c (Fdispatch_event): Doc fix.

2000-03-29  SL Baur  <steve@musashimaru.m17n.org>

	* postgresql.c: Remove all references to PQsetenv*.

	* postgresql.h: Remove references to PGsetenvHandler object.
	* lrecord.h (lrecord_type): Ditto.

2000-04-11  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>

	* glyphs-msw.h (struct mswindows_image_instance_data): Added
	real_heigh and real_width members, and accessor macros for these.

	* glyphs-msw.c (init_image_instance_geometry): New function.
	(init_image_instance_from_dibitmap): Use it.
	(mswindows_resource_instantiate): Use it.
	(init_image_instance_from_xbm_inline): Use it.
	(mswindows_initialize_image_instance_mask): Use real bitmap
	(mswindows_create_resized_bitmap): Ditto.
	(mswindows_create_resized_mask): Ditto.
	* redisplay-msw.c (mswindows_output_dibitmap): Stretch real mask
	and bitmap to their surface size.

2000-04-11  Jan Vroonhof  <jan@xemacs.org>

	* process-unix.c (unix_send_process): Guard against process MIA
	after Faccept_process_output.

2000-04-11  Ben Wing  <ben@xemacs.org>

	* eval.c (unbind_to_hairy): fix brokenness introduced by
	nanosecond speed improvements.

2000-04-07  Raymond Toy  <toy@rtp.ericsson.se>

	* sunplay.c (init_device): To play sounds correctly, the device
	apparently needs to be initialized at least once by XEmacs.  Make
	it so.

2000-04-10  IKEYAMA Tomonori  <tomonori@suiyokai.org>

	* redisplay.c (add_margin_runes): Add text image glyph

2000-04-06  Yoshiki Hayashi  <yoshiki@xemacs.org>

	* lisp.h (DOESNT_RETURN): Don't declare as volatile when
	gcc is newer than 2.5.

2000-04-06  Colin Rafferty  <colin@xemacs.org>

	* fns.c (size_bit_vector):
	* alloc.c (size_vector):
	Replace calls to offsetof with FLEXIBLE_ARRAY_STRUCT_SIZEOF macro.

2000-04-06  Andy Piper  <andy@xemacs.org>

	* gmalloc.c (malloc): undo previous change.
	(malloc): ditto.
	(free): ditto.
	(realloc): ditto.

2000-04-06  IKEYAMA Tomonori <tomonori@suiyokai.org>

	* line-number.c (buffer_line_number): Revert to former version.

2000-04-06  Andy Piper  <andy@xemacs.org>

	* gmalloc.c (malloc): add error checking.
	(malloc): ditto.
	(free): ditto.
	(realloc): ditto.

	* dialog-x.c (dbox_descriptor_to_widget_value): add extra
	button_item_to_widget_value arg.

	* glyphs-x.c (x_button_instantiate): add extra
	button_item_to_widget_value arg.
	(x_progress_gauge_instantiate): ditto.
	(x_edit_field_instantiate): ditto.
	(x_label_instantiate): ditto.

	* gui-x.c (gui_items_to_widget_values_1): add extra
	button_item_to_widget_value arg.
	(button_item_to_widget_value): add extra menu_item_p arg.

	* gui-x.h: change signature of button_item_to_widget_value.

	* menubar-x.c (menu_item_descriptor_to_widget_value_1): add extra
	button_item_to_widget_value arg.

2000-04-03  Yoshiki Hayashi  <yoshiki@xemacs.org>

	* buffer.h (struct buffer): auto_save_modified should be long.

2000-04-05  Andy Piper  <andy@xemacs.org>

	* glyphs-widget.c (widget_instantiate): pixwidth != pixheight
	(button_query_geometry): give a little more room so that athena
	buttons fit.

2000-04-05  Andy Piper  <andy@xemacs.org>

	* faces.c (complex_vars_of_faces): The widget face should inherit
	the font of the gui-element face.

2000-04-04  Andy Piper  <andy@xemacs.org>

	* glyphs-x.c (x_button_update): new function. unconditionally
	update a button's state when the instance is dirty.
	(image_instantiator_format_create_glyphs_x): add x_button_update.
	(x_widget_instantiate): remove old resize cruft.

2000-04-02  Andy Piper  <andy@xemacs.org>

	* frame.c (change_frame_size_1): The introduction of gutters means
	that we need to allow 0 as a potential frame dimension.

2000-04-02  IKEYAMA Tomonori  <tomonori@suiyokai.org>

	* redisplay.c (add_glyph_rune): Don't set 0 to bufpos for text
	image glyph if allow_cursor.
        (add_hscroll_rune): Don't allow cursor to border glyph.
        (create_text_block): Ditto.

	* redisplay-output.c (redisplay_move_cursor): Do nothing even if
	text not in buffer.
        (redisplay_output_layout): Call ensure_face_cachel_complete for
	text image glyph.

2000-03-16  IKEYAMA Tomonori  <tomonori@suiyokai.org>

	* redisplay.c (add_glyph_rune): Adding text image as text runes.

	* redisplay-output.c (redisplay_move_cursor): NO_CURSOR if text
	not in buffer

	* redisplay-tty.c (tty_output_display_block): Delete the routine
	for text image glyph
	* redisplay-x.c (x_output_display_block): ditto
	* redisplay-msw.c (mswindows_output_display_block): ditto

2000-02-02  Mike Alexander  <mta@arbortext.com>

	Note: Some of these were committed by accident as part of other
	* regex.c (regex_compile): Avoid compiler warnings.

	* ntproc.c (sys_spawnve): Avoid compiler warnings.

	* nt.h: Declare term_ntproc correctly.

	* nt.c: Remove incorrect declaration of get_home_directory which
	is declared correctly in lisp.h.

	* keymap.c (get_keyelt): Avoid compiler warnings.
	(raw_lookup_key_mapper): Avoid compiler warnings.

	* gutter.c (gutter_was_visible): Add return statement to avoid warning.

	* glyphs-eimage.c (png_instantiate): Avoid compiler warnings.

	* filemode.c (mode_string): Avoid compiler warnings.

	* file-coding.c (Fcoding_system_aliasee): Add return statement to
	avoid warning.

	* events-mod.h: Undef some things that winuser.h defines differently.

	* data.c (Faset): Avoid compiler warnings.

	* alloc.c (Fmake_byte_code): Avoid compiler warnings.

2000-03-03  Jan Vroonhof  <vroonhof@math.ethz.ch>

	* sound.c (Fplay_sound_file): Wrap ESD in start/stop_interrupts.
	Fall through to simple beep on error.
	Replace "extern" by real header file.

	* linuxplay.c: Use nativesound.h
	(play_sound_data): Return error code. Be less verbose on error.

	* sunplay.c: Use nativesound.h
	(play_sound_data): Return error code. Be less verbose on error.

	* ntplay.c: Use nativesound.h
	(play_sound_data): Return fake error code

	* sgiplay.c: Use nativesound.h
	(play_sound_data): Return error code

	* hpplay.c: Use nativesound.h, partially implement
	new error code. Break compilation until finished.
	(play_sound_data): error code.

	* nativesound.h (play_sound_file): 
	  (play_sound_data): Prototype in new header.

2000-03-31  Andy Piper  <andy@xemacs.org>

	* glyphs-widget.c: (button_query_geometry): new function. Adjust
	for toggle and radio buttons.
	(image_instantiator_buttons): use it.

2000-03-03  Jan Vroonhof  <vroonhof@math.ethz.ch>

	* scrollbar-x.c (x_update_vertical_scrollbar_callback): 
	(x_update_horizontal_scrollbar_callback): Return if no mirror was
	found. Scrollbar event probably belonged to some old config.

2000-03-31  Andy Piper  <andy@xemacs.org>

	* glyphs-widget.c (widget_instantiate): use LAYOUT_VERTICAL rather
	than 1.
	(initialize_widget_image_instance): default layout to
	LAYOUT_HORIZONTAL rather than 0.
	(widget_instantiate): reverse the item list at the end rather than
	every iteration.
	(layout_layout): re-code for the border text at the front of the
	item list rather than at the end.
	(layout_query_geometry): ditto. Pick up fixed and dynamic sizes
	provided by the user.
	(widget_query_geometry): comment.

2000-03-30  Andy Piper  <andy@xemacs.org>

	* glyphs-widget.c (image_instantiator_layout): allow standard
	widget keywords in layouts.

	* gutter.c (output_gutter): cope with nil gutter contents.

	* frame.c (Fset_frame_properties): add gutter docs.

2000-03-29  Andy Piper  <andy@xemacs.org>

	* toolbar-msw.c (TBSTYLE_FLAT): add.
	(mswindows_output_toolbar): minor fiddling.

2000-03-29  Andy Piper  <andy@xemacs.org>

	* gutter.c (output_gutter): force gutter size recalculation if
	what we are trying to display won't fit.
	(update_gutter_geometry): new function. A per-gutter version of
	(update_frame_gutter_geometry): use it.
	(redraw_exposed_gutter): add extra debugging output.

2000-03-28  Mike Alexander  <mta@arbortext.com>

	* dumper.c: Declare pdump_hFile and pdump_hMap (Windows only)
	(pdump_file_unmap): Implement it on Windows
	(pdump_file_get): Save alocated handles for pdump_file_unmap

2000-03-28  Andy Piper  <andy@xemacs.org>

	* gui.c (get_gui_callback): treat Quit specially.

2000-03-27  Andy Piper  <andy@xemacs.org>

	* glyphs.c (image_instantiate): be careful to check in the same
	way we assigned.

2000-03-27  Didier Verna  <didier@xemacs.org>

	* config.h.in: define the proper SMART_INCLUDE macro.
	handle renaming of `foo_h_path' to `foo_h_file'.

	* database.c: ditto.

	* emacs.c: ditto.

	* linuxplay.c: ditto.

	* terminfo.c: ditto.

	* tooltalk.h: ditto.

2000-03-27  Andy Piper  <andy@xemacs.org>

	* glyphs-msw.c (mswindows_update_widget): make sure the widget
	gets updated whenever the face might have changed.

2000-03-26  Mike Alexander  <mta@arbortext.com>

	* dumper.c (pdump_resource_free): Fix the comment.

2000-03-21  Olivier Galibert  <galibert@pobox.com>

	* input-method-xlib.c (XIM_init_frame): Remove painful warning.

2000-03-22  Mike Alexander  <mta@arbortext.com>

	* dumper.c: Include Windows headers on Windows
	(pdump_resource_free): Add a body to the function
	(pdump_load): exe_name -> exe_path and add some comments.

2000-03-25  Mike Alexander  <mta@arbortext.com>

	* gui.c (copy_gui_item_tree): Return a value in all cases

2000-03-21  Didier Verna  <didier@xemacs.org>

	* config.h.in: move INCLUDE_GLUE_1 and INCLUDE_GLUE_2 here from
	(SMART_INCLUDE): new macro.
	(POSTGRES_INCLUDE): new macro to include postgresql headers from
	the proper location.

	* postgresql.c: use it.

	* inline.c: ditto.

2000-03-24  Andy Piper  <andy@xemacs.org>

	* gutter.c (redraw_exposed_gutters): must be "in display" when we
	do this.

2000-03-24  Andy Piper  <andy@xemacs.org>

	* redisplay-output.c (compare_runes): use image_instance_changed
	to detect changes. Do not depend on glyphs_changed, only depend on
	 (redisplay_output_layout): add debug messages.
	(compare_runes): ditto.

	* glyphs.h: declare new functions.
	(struct Lisp_Image_Instance): remove percent and associated

	* gui.h: declare new copying functions.

	* gui.c (copy_gui_item_tree): new function.
	(copy_gui_item): new function.
	(gui_item_id_hash): revert to standard hash.
	(gui_item_hash): ditto.
	(gui_item_hash_internal): deleted.
	(mark_gui_item): mark value.
	(gui_item_add_keyval_pair): add value.
	(gui_item_init): ditto.
	(gui_add_item_keywords_to_plist): ditto.
	(gui_item_equal): ditto.
	(syms_of_gui): add Q_value.

	* glyphs-x.c (x_progress_gauge_update): use pending items and
	value for setting the state.
	(x_update_widget): don't set items from pending here.

	* glyphs-widget.c (update_widget): update items here.
	(progress_gauge_set_property): use items for storing value. Put
	new value in pending items.

	* glyphs-msw.c (mswindows_progress_gauge_update): use pending
	items for new value. Convert percent -> value.
	(mswindows_tab_control_update): don't update items here.

	* glyphs.c (Fupdate_widget_instances): use image_instance_changed.
	(update_subwindow): ditto.
	(image_instance_changed): new function. Compare hash values and
	past and present widget items.
	(image_instantiate): We more careful about where we instantiate
	(image_instantiate): add error checking.

	* gutter.c (syms_of_gutter): use -hook.

2000-03-20  Yoshiki Hayashi  <yoshiki@xemacs.org>

	* console-tty.c (Fset_console_tty_input_coding_system): Use
	(Fset_console_tty_output_coding_system): Use Qterminal.
	(tty_init_console): Use Qkeyboard and Qterminal.

2000-03-21  Ben Wing  <ben@xemacs.org>

	* ntproc.c (create_child): remove bogus HAVE_NTGUI's.
	From Mike Alexander <mta@arbortext.com>.

2000-03-21  Ben Wing  <ben@xemacs.org>

	* event-msw.c (mswindows_need_event): Horrible kludge to fix
	process brokenness.  Proper implementation to come.
	* callproc.c:
	Rename call-process-internal to old-call-process-internal.
	New impl. in process.el.

2000-03-21  Martin Buchholz  <martin@xemacs.org>

	* Makefile.in.in: Coalesce HAVE_NATIVE_SOUND code fragments.

2000-03-20  Andy Piper  <andy@xemacs.org>

	* glyphs.c (full_list_hash): make hashes of the same elements in
	different orders return different values.

Conform with <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
Automatically validated by PSGML