2001-04-30  Gerd Moellmann  <gerd@gnu.org>

	* xlwmenu.c (xlwmenu_window_p): New function.

2001-03-23  Gerd Moellmann  <gerd@gnu.org>

	* lwlib-Xlw.c (x_print_complete_resource_name) [0]: New function.

2001-03-22  Gerd Moellmann  <gerd@gnu.org>

	* lwlib-Xm.c (x_print_complete_resource_name) [0]: New function.

2001-03-13  Gerd Moellmann  <gerd@gnu.org>

	* lwlib-Xm.c (make_menu_in_widget): Remove code forcing LessTif to
	recompute centered text; it works fine without with current LessTif.

	* lwlib-Xm.c (make_menu_in_widget): Add an XmNpopdownCallback
	instead of an XmNunmapCallback.
	(xm_unmap_callback): Removed.
	
	* lwlib-Xm.c (make_menubar): Take out code in #if 0.

	* lwlib-Xm.c (xm_popup_menu): Don't set XmNmenuPost unless
	necessary.  From Rick Scott <rwscott@alumni.uwaterloo.ca>.

2001-02-28  Gerd Moellmann  <gerd@gnu.org>

	* lwlib-Xm.c (xm_arm_callback): Don't compare widgets with `None',
	use NULL instead.

	* lwlib-Xaw.c (xaw_update_one_widget): Use XtSetSensitive instead
	of setting the value of XtNsensitive.

	* lwlib-Xm.c (xm_update_radiobox, update_one_menu_entry)
	(xm_update_one_widget): Use XtSetSensitive instead of setting the
	value of XmNsensitive.  From Rick Scott
	<rwscott@alumni.uwaterloo.ca>.

2000-12-14  Dave Love  <fx@gnu.org>

	* xlwmenu.c (gray_bitmap_bits): Remove `unsigned' from
	declaration.

2000-12-11  Dave Love  <fx@gnu.org>

	* xlwmenu.c (draw_separator) <SEPARATOR_SHADOW_ETCHED_IN_DASH>:
	<SEPARATOR_SHADOW_ETCHED_OUT_DASH>: Fix call of draw_separator.

2000-12-07  Gerd Moellmann  <gerd@gnu.org>

	* lwlib-Xm.c (xm_arm_callback): Fix last change.

2000-11-30  Gerd Moellmann  <gerd@gnu.org>

	* lwlib-Xm.c (xm_arm_callback): Handle case that W is null;
	also see comment there.

2000-11-21  Gerd Moellmann  <gerd@gnu.org>

	* xlwmenu.c (xlwmenu_redisplay): New function.

2000-09-30  Stefan Monnier  <monnier@cs.yale.edu>

	* lwlib.c (lw_separator_p): Init separator_p (bug with "-- some text").

2000-09-28  Sam Steingold  <sds@gnu.org>

	* xlwmenu.c: Before including <X11/Xos.h> on SUN, define SUNOS41
	to avoid redefining struct timeval and struct timezone.

2000-09-04  Miles Bader  <miles@gnu.org>

	* xlwmenu.c (XlwMenuSetValues): Only frob the display if the menu
	is actually displayed.
	(remap_menubar): Only include the menu-margin in the initial X & Y
	positions for horizontal menu-bars.
	(fit_to_screen): If moving a sub-menu to the left-side, increment
	its x-position by the shadow-thickness to make it look more
	attached to the invoking menu-item (similarly to the way it would
	be displayed on the right side).

2000-09-03  Miles Bader  <miles@gnu.org>

	* xlwmenu.c (x_alloc_lighter_color_for_widget): New extern declaration.
	(make_shadow_gcs) [emacs]: Use x_alloc_lighter_color_for_widget to
	do shadow calculation.
	(make_shadow_gcs): Remove code that tests whether the top shadow
	is dimmer than the bottom shadow--it shouldn't ever happen.

2000-08-30  Miles Bader  <miles@gnu.org>

	* xlwmenu.c (XlwMenuSetValues): If the background color has
	changed, re-make the shadow-gcs too.

2000-08-03  Gerd Moellmann  <gerd@gnu.org>

	* lwlib.c, lwlib-Xm.c, lwlib-Xaw.c: Use NULL at the end of the
	variable argument lists of XtVaSetValues and XtVaGetValues
	functions because 0 is not sufficient on systems where sizeof
	(int) < sizeof (void *).

2000-07-19  Gerd Moellmann  <gerd@gnu.org>

	* xlwmenu.c [emacs]: Don't include <X11/bitmaps/gray> because that
	leads to redefinition errors when static is defined as empty in
	config.h.  Refer to the gray bitmap in xfns.c, instead.

2000-07-18  Dave Love  <fx@gnu.org>

	* lwlib-utils.c (XtApplyToWidgets): Cast args of lwlib_bcopy.

2000-06-23  Dave Love  <fx@gnu.org>

	* lwlib-Xlw.c (xlw_popup_menu): Cast arg of pop_up_menu.

	* lwlib-utils.c: Include lwlib.h.

2000-06-16  Gerd Moellmann  <gerd@gnu.org>

	* xlwmenuP.h (_XlwMenu_part): Add free_top_shadow_color_p and
	free_bottom_shadow_color_p.

	* xlwmenu.c (make_shadow_gcs): Set free_top_shadow_color_p
	and free_top_shadow_color_p flags in the menu widget if
	top and bottom shadow colors must be freed.
	(release_shadow_gcs): Free colors only if they must be freed.

2000-06-12  Gerd Moellmann  <gerd@gnu.org>

	* xlwmenu.c (make_shadow_gcs): Free and copy colors so that
	color reference counts are right.
	(release_shadow_gcs): Free colors.

2000-06-06  Dave Love  <fx@gnu.org>

	* xlwmenu.c (x_alloc_nearest_color_for_widget, x_catch_errors)
	(x_uncatch_errors, x_had_errors_p, x_clear_errors): Add prototypes
	-- should be moved into separate header.
	(make_shadow_gcs) <x_alloc_nearest_color_for_widget>: Cast first
	arg.
	(Start) <pop_up_menu>: Cast second arg.

	* lwlib.c (P_): Use PROTOTYPES.
	(safe_strdup): Declare arg const.
	(lw_modify_all_widgets) <!info>: Return 0.

	* lwlib-Xm.c (P_): Use PROTOTYPES.

	* xlwmenu.h, lwlib.h, lwlib-utils.h, lwlib-int.h, lwlib-Xm.h:
	* lwlib-Xlw.h, lwlib-Xaw.h: Enable prototypes.

	* lwlib-Xaw.c (xaw_popup_menu): Add EVENT arg.

	* Makefile.in (lwlib.o): Depend on lwlib-Xlw.h.
	(lwlib-Xlw.o): Depend on lwlib-Xlw.h.
	(lwlib-Xaw.o): Depend on lwlib-Xaw.h.
	(lwlib-Xm.o): Depend on lwlib-Xm.h.

2000-03-12  Gerd Moellmann  <gerd@gnu.org>

	* lwlib-Xm.c (make_menubar) [LESSTIF_VERSION]: Don't set
	XmNresizeHeight and XmNresizeWidth.

2000-03-08  Dave Love  <fx@gnu.org>

	* Makefile.in (liblw.a): Don't bother testing for ranlib failing
	since configure sets it up.

2000-03-06  Gerd Moellmann  <gerd@gnu.org>

	* lwlib-Xm.c (make_menubar): Set XmNresizeHeight and
	XmNresizeWidth resources only if LESSTIF_VERSION is defined.

2000-03-05  Gerd Moellmann  <gerd@gnu.org>

	* lwlib-Xm.c (xm_manage_resizing): Rewritten.

	* lwlib.c (lw_modify_all_widgets): Return non-zero if widget
	tree was changed.
	(merge_widget_value): Add parameter CHANGE_P.  Set *CHANGE_P
	to 1 if a change occurs.

	* lwlib.h (lw_modify_all_widgets): Change prototype.

2000-03-04  Gerd Moellmann  <gerd@gnu.org>

	* xlwmenu.c (make_shadow_gcs): Use the widget's colormap instead
	of the screen's default colormap.

2000-02-18  Gerd Moellmann  <gerd@gnu.org>

	* lwlib.c (merge_widget_value): Fix incorrect assignment of
	safe_strdup'd help string.

2000-01-25  Gerd Moellmann  <gerd@gnu.org>

	* lwlib-Xm.c (make_menu_in_widget): Don't add XmNpopdownCallback,
	add XmNunmapCallback.
	(xm_unmap_callback): New function.
	(xm_pull_down_callback): Call pre-activate callback only if
	parent is the menu bar.

2000-01-17  Gerd Moellmann  <gerd@gnu.org>

	* lwlib-Xm.c (xm_arm_callback): New function.
	(make_menu_in_widget): Set xm_arm_callback as XmNarmCallback and
	XmNdisarmCallback for buttons (not supported for other widgets).
	(make_menubar): Set XmNresizeHeight and XmNresizeWidth to False.

	* lwlib-Xlw.c (highlight_hook): New function.
	(xlw_create_menubar, xlw_create_popup_menu): Add highlight_hook as
	callback XtNhighlightCallback.

	* lwlib.c (copy_widget_value_tree): Copy help string.
	(free_widget_value_tree): Free help string.
	(merge_widget_value): Handle help string.
	(allocate_widget_info, lw_register_widget, lw_create_widget): Add
	parameter HIGHLIGHT_CB.
	(lw_get_widget_instance): New function.

	* lwlib-int.h: Add prototype for lw_get_widget_instance.

	* lwlib.h (_widget_value): Add help string.

	* xlwmenu.c (xlwMenuResources): All XtNhighlightCallback.
	(remap_menubar): Call highlight callback.

	* xlwmenu.h (XtNhighlightCallback): New define.

	* xlwmenuP.h (_XlwMenu_part): Add `highlight' callback list.

1999-10-19  Paul Eggert  <eggert@twinsun.com>

	Add support for large files, plus some locale improvements.

	* dispatch.c, lwlib-Xaw.c, lwlib-Xlw.c, lwlib-Xm.c, lwlib.c, xlwmenu.c,
	xrdb-cpp.c, xrdb.c:
	Include <config.h> before any system include files.

	* lwlib-Xm.c, lwlib.c:
	Do not include <stdlib.h> or <string.h>, as <config.h> does this.

1999-10-07  Gerd Moellmann  <gerd@gnu.org>

	* lwlib-Xm.c (make_menu_in_widget, update_one_menu_entry): Use
	widgets instead of gadgets to be able to set colors.

1999-09-17  Richard Stallman  <rms@gnu.org>

	* lwlib-Xaw.c (wm_delete_window): Check all the shell's children,
	not just the first, to find the dialog box.

1999-09-14  Gerd Moellmann  <gerd@gnu.org>

	* lwlib.c (lw_separator_p): Check for new-style separators
	differently.

1999-09-10  Gerd Moellmann  <gerd@gnu.org>

	* lwlib.c (lw_separator_p): Add `--:space' with the same
	meaning as `--:noLine'.

1999-09-06  Gerd Moellmann  <gerd@gnu.org>

	* lwlib.c (lw_separator_p): Add alternative separator type names.

1999-09-03  Gerd Moellmann  <gerd@gnu.org>

	* xlwmenu.c (make_shadow_gcs): Call
	x_alloc_nearest_color_for_widget.

1999-07-12  Gerd Moellmann  <gerd@gnu.org>

	* lwlib-Xm.c: Add function prototypes.

	* lwlib-Xm.c (xm_update_label): Use val->name to look up
	a label string from resources.
	(xm_update_label): Add some comments.

1999-07-12  Gerd Moellmann  <gerd@gnu.org>

	* xlwmenu.c (all_dashes_p): Removed.
	(size_menu_item): Call lw_separator_p.
	(display_menu_item): Ditto.
	(display_menu): Ditto.
	(draw_separator): New.
	(display_menu_item): Call it.
	(separator_height): New.
	(size_menu_item): Call it.

	* lwlib-Xm.c (all_dashes_p): Removed.
	(make_menu_in_widget): Use lw_separator_p.  Set Motif separator
	type.

	* lwlib.c (lw_separator_p): New.

	* lwlib.h (enum menu_separator): New.

1999-07-12  Gerd Moellmann  <gerd@gnu.org>

	* lwlib-Xm.c (make_menu_in_widget): Set alignment of menu
	title after all widgets have been created.

1999-07-12  Gerd Moellmann  <gerd@gnu.org>

	* xlwmenu.c (toggle_button_width): Renamed from
	toggle_or_radio_button_width.
	(radio_button_width): New.
	(size_menu_item): Use new functions.
	(draw_shadow_rhombus): New.
	(draw_radio): Use radio_button_width and draw_shadow_rhombus.
	(draw_toggle): Use toggle_button_width.

1999-07-12  Gerd Moellmann  <gerd@gnu.org>

	* lwlib-Xm.c (xm_update_toggle): Add callback xm_generic_callback
	instead of xm_internal_update_other_instances.

	* lwlib-Xm.c (make_menu_in_widget): Do help button before managing
	children to get it to the right place.
	(make_menu_in_widget): Create toggle buttons.
	(update_one_menu_entry): Update toggle buttons.

	* xlwmenu.c (size_menu_item): Add parameter button_width.
	(size_menu): Compute button_width.
	(toggle_or_radio_button_width): New.
	(draw_toggle): New.
	(draw_radio): New.
	(draw_shadow_rectangle): Add parameter `down_p'.

	* xlwmenuP.h (_window_state): Add button_width.

1999-07-12  Gerd Moellmann  <gerd@gnu.org>

	* xlwmenu.c (make_shadow_gcs) ]emacs]: Use x_alloc_nearest_color.

	* lwlib.c (merge_widget_value): Handle button_type.
	(copy_widget_value_tree): Copy button_type.

	* lwlib.h (enum button_type): New.
	(_widget_value): New member button_type.

1999-07-12  Gerd Moellmann  <gerd@gnu.org>

	* lwlib-Xm.c (make_menu_in_widget): Test for menubar widgets
	using XmNrowColumnType.

1999-07-12  Gerd Moellmann  <gerd@gnu.org>

	* xlwmenu.c (abort_gracefully): New.
	(display_menu): Use it instead of abort.
	(size_menu): Ditto.

1999-07-12  Gerd Moellmann  <gerd@gnu.org>

	* xlwmenu.c (xlwMenuResources): Change previously unused
	XtNmargin to 4.
	(size_menu): Take margin into account.
	(display_menu_item): Ditto.
	(remap_menubar): Ditto.
	(draw_arrow): Draw it 3D.

1999-07-12  Richard Stallman  <rms@gnu.org>

	* Version 20.4 released.

1998-08-19  Richard Stallman  <rms@psilocin.ai.mit.edu>

	* Version 20.3 released.

1998-07-30  Paul Eggert  <eggert@twinsun.com>

	* lwlib/Makefile.in (lwlib-utils.o, lwlib.o, lwlib-Xlw.o)
	(lwlib-Xaw.o, lwlib-Xm.o, lwlib-Xol.o, lwlib-Xolmb.o):
	Add dependencies to corresponding .c files. for Solaris 2.x VPATH make.

1998-04-06  Andreas Schwab  <schwab@gnu.org>

	* lwlib.c: Always declare xmalloc.
	[USE_XAW]: Include <X11/Xaw/Paned.h>.
	(lwlib_memset, lwlib_bcopy): Explicitly declare return type.

1997-12-20  Richard Stallman  <rms@delysid.gnu.org>

	* lwlib-Xm.c (update_one_menu_entry):
	Add conditional in case XmNpositionIndex is missing.

1997-12-20  Richard Stallman  <rms@psilocin.gnu.org>

	* lwlib-Xm.c (update_one_menu_entry):
	Add conditional in case XmNpositionIndex is missing.

1997-09-19  Richard Stallman  <rms@psilocin.gnu.ai.mit.edu>

	* Version 20.2 released.

	* xlwmenu.c (motion_event_is_in_menu): Extend the left and
	top windows by the shadow width.

1997-09-15  Richard Stallman  <rms@psilocin.gnu.ai.mit.edu>

	* Version 20.1 released.

1997-07-23  Richard Stallman  <rms@psilocin.gnu.ai.mit.edu>

	* xlwmenu.c (display_menu): If an item is disabled,
	don't display its submenu (if any).

1997-05-01  Richard Stallman  <rms@psilocin.gnu.ai.mit.edu>

	* xlwmenu.c (pop_up_menu): Update the call to x_catch_errors.

1997-01-21  Richard Stallman  <rms@psilocin.gnu.ai.mit.edu>

	* xlwmenu.c (fit_to_screen): If new menu would overlap the previous
	one from the side, try moving it up or down.

1996-08-11  Richard Stallman  <rms@psilocin.gnu.ai.mit.edu>

	* Version 19.33 released.

	* lwlib-Xm.c (update_one_menu_entry): Fix previous change:
	When XmIsCascadeButton, don't call XmCreateCascadeButtonGadget,
	just modify the existing one.

1996-08-09  Marcus Daniels  <marcus@sayre.sysc.pdx.edu>

	* lwlib.c (merge_widget_value): Undo previous change.

	* lwlib-Xm.c (update_one_menu_entry): When creating a pulldown
	in an existing but empty menu item, in order to get a new functional
	pulldown, the menu item must be switched from an XmPushButtonGadget
	into a XmCascadeButtonGadget.

1996-07-31  Richard Stallman  <rms@psilocin.gnu.ai.mit.edu>

	* Version 19.32 released.

1996-07-31  Marcus Daniels  <marcus@sayre.sysc.pdx.edu>

	* lwlib-Xm.c (make_menubar): Turn off menu accelerator.

1996-07-24  Marcus Daniels  <marcus@sayre.sysc.pdx.edu>

	* lwlib.c (merge_widget_value) [USE_MOTIF]: Pass along the change
	flag from merged_contents.

1996-07-13  Karl Heuer  <kwzh@gnu.ai.mit.edu>

	* lwlib-Xm.c (xm_update_menu): Fix loop termination test.

1996-07-07  Karl Heuer  <kwzh@gnu.ai.mit.edu>

	* lwlib-Xm.h, lwlib-Xm.c, lwlib.h, lwlib.c: Undo previous change.

1996-07-03  Marcus Daniels  <marcus@sayre.sysc.pdx.edu>

	* lwlib-Xm.h: Declare lw_motif_menu_related_event_p.

	* lwlib-Xm.c (lw_motif_menu_related_event_p): A predicate to
	identify keyboard events intended only for menus.

	* lwlib.h: Declare lw_toolkit_related_event_p.

	* lwlib.c (lw_toolkit_related_event_p): A predicate to identify
	toolkit-specific events.

1996-06-07  Marcus Daniels  <marcus@sayre.sysc.pdx.edu>

	* lwlib-Xm.c (make_menu_in_widget): Set mapping delay
	for cascade buttons to zero.

1996-05-25  Karl Heuer  <kwzh@gnu.ai.mit.edu>

	* Version 19.31 released.

1996-03-31  Richard Stallman  <rms@mole.gnu.ai.mit.edu>

	* lwlib-Xm.c (destroy_all_children): When freeing a cascade button,
	free its submenu too.
	(make_menu_in_widget): Use a cascade button gadget, not a widget.
	Include Xm/CascadeBG.h.

1996-03-29  Richard Stallman  <rms@mole.gnu.ai.mit.edu>

	* Makefile.in (tags): New target.

1996-03-28  Richard Stallman  <rms@mole.gnu.ai.mit.edu>

	* Makefile.in (TAGS): Renamed from `tags' and fixed to work.

1996-03-26  Richard Stallman  <rms@mole.gnu.ai.mit.edu>

	* Makefile.in (xlwmenu.o): New explicit target.

1996-03-24  Richard Stallman  <rms@mole.gnu.ai.mit.edu>

	* lwlib.h (struct widget_value): New field this_one_change.
	* lwlib.c (merge_widget_value): Set the this_one_change field.
	* lwlib-Xm.c (destroy_all_children): New arg first_child_to_destroy.
	(make_menu_in_widget): New arg keep_first_children.
	(xm_update_menu): Preserve the first children even if later ones
	have a structural change.
	(update_one_menu_entry): Use this_one_change field.

1996-03-01  Richard Stallman  <rms@mole.gnu.ai.mit.edu>

	* xlwmenu.c (motion_event_is_in_menu): Make x and y signed.

1996-02-25  Richard Stallman  <rms@mole.gnu.ai.mit.edu>

	* lwlib.c (lw_window_is_in_menubar) [USE_MOTIF]:
	With Motif, the window WIN can be the menu bar widget itself.

1996-02-21  Richard Stallman  <rms@whiz-bang.gnu.ai.mit.edu>

	* lwlib.c (free_widget_value_tree, merge_widget_value):
	Use XtFree for the toolkit_data.

1996-02-19  Karl Heuer  <kwzh@gnu.ai.mit.edu>

	* lwlib.c (lw_internal_update_other_instances): Move static var
	outside the function, and rename it to lwlib_updating.

1996-01-04  Paul Eggert  <eggert@twinsun.com>

	* lwlib.c (instantiate_widget_instance): Renamed from
	instanciate_widget_instance (spelling correction).
	All callers changed.

1995-12-31  Richard Stallman  <rms@mole.gnu.ai.mit.edu>

	* xlwmenu.c (xlwMenuActionsList): Add "key" and "nothing".
	(xlwMenuTranslations): Add translations for Key, KeyUp,
	and for the modifier keysyms.
	(Nothing, Key): New functions.

1995-12-24  Richard Stallman  <rms@mole.gnu.ai.mit.edu>

	* xlwmenu.c (XlwMenuSetValues): Do redisplay if non-null contents
	get replaced by empty contents.

	* lwlib.c (merge_widget_value): Treat disappearance of entire contents
	as a STRUCTURAL_CHANGE.

1995-12-20  Richard Stallman  <rms@whiz-bang.gnu.ai.mit.edu>

	* lwlib-utils.c: Add #undef for index and rindex.

1995-11-24  Richard Stallman  <rms@mole.gnu.ai.mit.edu>

	* Version 19.30 released.

1995-11-13  Richard Stallman  <rms@mole.gnu.ai.mit.edu>

	* xlwmenu.c (display_menu_item): Fix previous change.

1995-11-04  Richard Stallman  <rms@whiz-bang.gnu.ai.mit.edu>

	* xlwmenu.c (display_menu_item): Don't treat buttons specially.

1995-08-14  Richard Stallman  <rms@mole.gnu.ai.mit.edu>

	* Makefile.in (RANLIB): Get this var from configure.

1995-08-02  Richard Stallman  <rms@mole.gnu.ai.mit.edu>

	* lwlib.c (lw_popup_menu): New arg `event', passed along.
	* lwlib-Xlw.c (xlw_popup_menu): New arg `event'.
	* lwlib-Xm.c (xm_popup_menu): New arg `event'.

1995-06-19  Richard Stallman  <rms@mole.gnu.ai.mit.edu>

	* Version 19.29 released.

1995-06-11  Richard Stallman  <rms@gnu.ai.mit.edu>

	* lwlib.c (lwlib_toolkit_type): New variable.

1995-05-26  Richard Stallman  <rms@gnu.ai.mit.edu>

	* xlwmenu.c (Drag): Do nothing unless menu.popped_up field is set.

1995-05-22  Karl Heuer  <kwzh@hal.gnu.ai.mit.edu>

	* xlwmenu.c (XlwMenuInitialize): Cast XCreatePixmapFromBitmapData args.

1995-05-20  Karl Heuer  <kwzh@nutrimat.gnu.ai.mit.edu>

	* lwlib.c: Don't use prototype.
	* lwlib-Xm.c (activate_button, xm_update_cascadebutton): Likewise.

1995-05-05  Richard Stallman  <rms@mole.gnu.ai.mit.edu>

	* lwlib.c (lw_refigure_widget) [USE_MOTIF]: Fix backward if.

1995-05-04  Richard Stallman  <rms@mole.gnu.ai.mit.edu>

	* Makefile.in (ALL_CFLAGS): Add -I../src.

1995-05-03  Morten Welinder  <terra+@cs.cmu.edu>

	* lwlib.c [__osf__]: Include string.h and stdlib.h.
	[__osf__] (xmalloc): Declared.

1995-04-13  Richard Stallman  <rms@mole.gnu.ai.mit.edu>

	* lwlib-Xm.c (update_one_menu_entry, make_menu_in_widget):
	Specify more useful names in XmCreatePulldownMenu calls.

	* lwlib-Xaw.c (xaw_pop_instance): Make x, y, w, h unsigned.

	* xlwmenu.c (size_menu): Make height and label_width unsigned.
	(fit_to_screen): Make screen_width and screen_height unsigned.
	(motion_event_is_in_menu): Make x, y unsigned.

1995-04-09  Richard Stallman  <rms@mole.gnu.ai.mit.edu>

	* lwlib-utils.c: If HAVE_CONFIG_H, include config.h.

	* Makefile.in (ALL_CFLAGS): Define HAVE_CONFIG_H.
	Add -I${srcdir}/../src.

1995-04-08  Paul Reilly  <pmr@geech.gnu.ai.mit.edu>

	* lwlib-Xm.c: Remove function prototypes.
	(xm_pop_down_callback): Call the deactivation callback only when
	popping	down the top level submenu.

1995-04-07  Richard Stallman  <rms@mole.gnu.ai.mit.edu>

	* Makefile.in (lwlib.o): Depend on Makefile.

	* lwlib-Xm.h: Remove function prototypes.

	* lwlib-Xm.c (remove_grabs): Use type Widget for `menu'.

1995-02-15  Paul Reilly  <pmr@geech.gnu.ai.mit.edu>

	* Makefile.in (ALL_CFLAGS): Allow include files to be found in
        `srcdir'.

1995-02-07  Richard Stallman  <rms@pogo.gnu.ai.mit.edu>

	* Makefile.in (maintainer-clean): Renamed from realclean.

1994-11-28  Richard Stallman  <rms@bethel>

	* lwlib-int.h (safe_strdup): Don't use ANSI argument prototype.

1994-11-15  Paul Reilly  <pmr@duality.gnu.ai.mit.edu>

	* lwlib.c (lw_refigure_widget): Use the macro USE_XAW rather than XAW.

1994-11-08  Paul Reilly  <pmr@duality.gnu.ai.mit.edu>

	* lwlib-Xm.c (make_menu_in_widget):  Differentiate a separator
	entry ("--") from a title.
	(xm_pop_down_callback): Filter all but the last pop down callbacks.

1994-11-07  Paul Reilly  <pmr@duality.gnu.ai.mit.edu>

	* lwlib-Xm.c (update_one_menu_entry): Use the parent of the
	cascade button as the parent of the pulldown, rather than the
	cascade button itself.  This works around a Motif SIGSEGV in the
	function `InSharedMenuHierarchy'.

1994-10-29  Richard Stallman  <rms@duality.gnu.ai.mit.edu>

	* xlwmenu.c (xlwmenu_default_font): New global variable.
	(XlwMenuInitialize): Use xlwmenu_default_font to default
	the font if necessary.  Make mw, itself, an argument.

1994-10-26  Richard Stallman  <rms@duality.gnu.ai.mit.edu>

	* xlwmenu.c (pop_up_menu): Pass a Display * to x_catch_errors, etc.

1994-10-26  Richard Stallman  <rms@mole.gnu.ai.mit.edu>

	* xlwmenu.c (xlwmenu_default_font): New global variable.
	(XlwMenuInitialize): Use xlwmenu_default_font to default
	the font if necessary.  Make mw, itself, an argument.

	* xlwmenu.c (pop_up_menu): Pass a Display * to x_catch_errors, etc.

1994-10-08  Richard Stallman  <rms@mole.gnu.ai.mit.edu>

	* xlwmenu.c (fit_to_screen): Don't put the menu off the left or top.

1994-10-02  Paul Reilly  <pmr@geech.gnu.ai.mit.edu>

	* xlwmenu.c (display_menu_item): Add support for displaying the
        title in pop up menus.

	* lwlib.c (lw_set_main_areas): Use xm_set_main_areas().
	(lw_manage_resizing): Use xm_manage_resizing() for Emacs/Motif.

1994-09-25  Paul Reilly  <pmr@geech.gnu.ai.mit.edu>

	* lwlib-Xaw.c (xaw_create_main): New function to support the
        toolkit independent creation of the main Emacs widget.  *
        lwlib-Xlw.c (xlw_create_menubar): When compiling under Emacs, set
        resizing resources to disable showGrip and to enable both
        resizeToPreferred and allowShellResize.

	* lwlib-Xm.h: Declare xm_set_main_areas, xm_manage_resizing.

	* lwlib-Xm.c: (make_menu_in_widget): Add support for displaying a
	title in pop up menus.
	(make_main, xm_set_main_areas, xm_manage_resizing): New functions to
	create and manage a Motif Main Window widget.

	* xlwmenu.c: Add #include <X11/ObjectP.h> for X11R4.

1994-09-18  Fred Pierresteguy <F.Pierresteguy@frcl.bull.fr>

	* lwlib-Xm.c (make_dialog): When there is more than two pushbuttons,
	set XmPACK_TIGHT and XmHORIZONTAL to the rowcolumn.  Also add a
	margin of 10 pixels.

1994-09-16  Paul Reilly <pmr@geech.gnu.ai.mit.edu>

	* lwlib-Xm.c (make_main): New function to support toolkit
        independent creation of the main Emacs widget.
	(make_destroyed_instance): Use safe_strdup() instead of strdup().

	* lwlib-int.h: Declare safe_strdup.

	* lwlib.c (lw_refigure_widget): New function.  Handle geometry
        management inside lwlib instead of in Emacs.
	(lw_window_is_in_menubar): New function.  Determine if the pointer
	is in a menubar.
	(lw_set_main_areas): New function.  Set the main window widgets for
	Motif.

	* lwlib.h: Declare lw_refigure_widget(), lw_window_is_in_menubar(),
	lw_set_main_areas().

	* xlwmenu.h: Define Xt{Ns,CS}howGrip, Xt{Nr,CR}esizeToPreferred, and
	Xt{Na,CA}llowResize.

	* xlwmenu.c (Start): Use pop_up_menu() to post the submenus.
	(Select): Remove the pointer grab when popping down a menubar
	submenu.
	(pop_up_menu): Handle popping up submenus from a menubar, i.e. when
	the menu widget parent is not a shell widget.

1994-08-25  Richard Stallman  <rms@mole.gnu.ai.mit.edu>

	* xlwmenu.c (pop_up_menu): Clear next_release_must_exit.
	(Start): Clear next_release_must_exit when popping up the menu.

1994-08-24  Richard Stallman  <rms@mole.gnu.ai.mit.edu>

	* xlwmenu.c (Start): Set menu_post_event or next_release_must_exit.
	(Select): Do nothing if the menu should be left posted.

1994-07-28  Richard Stallman  <rms@mole.gnu.ai.mit.edu>

	* xlwmenu.c (make_windows_if_needed, pop_up_menu):
	Enable mouse motion events even when no button down.

1994-07-11  Richard Stallman  (rms@mole.gnu.ai.mit.edu)

	* xlwmenu.c (pointer_grabbed): New variable.
	(pop_up_menu): Set the variable.
	(XlwMenuDestroy): Maybe call XtUngrabPointer.

1994-05-25  Richard Stallman  (rms@mole.gnu.ai.mit.edu)

	* lwlib.c (max): Function deleted.  Define as macro instead,
	but only if not already defined.

1994-05-20  Richard Stallman  (rms@mole.gnu.ai.mit.edu)

	* xlwmenu.c (xlwMenuResources): Use XtRDimension for shadow thickness.

1994-05-19  Richard Stallman  (rms@mole.gnu.ai.mit.edu)

	* lwlib-Xaw.c (xaw_pop_instance): Use XtSetValues, not XtMoveWidget.

1994-05-16  Richard Stallman  (rms@mole.gnu.ai.mit.edu)

	* lwlib.c (lwlib_memset: New function, used instead of memset.
	All callers changed.
	* lwlib.c (lwlib_bcopy): New function.
	* lwlib-utils.c (XtApplyToWidgets): Use lwlib_bcopy.

	* lwlib.c: Delete definitions for use of alloca.
	(name_to_widget): Use xmalloc, not alloca.

1994-05-12  Richard Stallman  (rms@mole.gnu.ai.mit.edu)

	* xlwmenu.c (XlwMenuDestroy): Set new var submenu_destroyed.
	(XlwMenuRedisplay): If it's set, truncate the old_depth to 1.

1994-05-09  Richard Stallman  (rms@mole.gnu.ai.mit.edu)

	* xrdb-cpp.c: Don't include string.h, unistd.h, stdlib.h.
	* lwlib-Xaw.c: Don't include string.h, unistd.h, stdlib.h.
	* lwlib-utils.c (XtApplyToWidgets): Use bcopy, not memcpy.
	* lwlib-utils.c: Don't include string.h, unistd.h, stdlib.h, memory.h.
	* xlwmenu.c: Don't include string.h, unistd.h, stdlib.h.
	* lwlib.c: Don't include string.h, unistd.h, stdlib.h.
	(safe_strdup): No longer static.
	* lwlib-Xm.c: Use safe_strdup, not strdup.

	* xlwmenu.c (string_width): No longer static.

1994-05-06  Richard Stallman  (rms@mole.gnu.ai.mit.edu)

	* xlwmenuP.h (struct _XlwMenu_part): Use Pixel and Cursor
	for foreground and cursor_shape fields.

	* xlwmenu.c (XlwMenuSetValues): Check for change of font.

1994-04-28  Richard Stallman  (rms@mole.gnu.ai.mit.edu)

	* Makefile.in: Delete all SRCS variables (unused).
	(lwlib.o, xrdb-cpp.o): Mention srcdir in dep.

1994-04-15  Richard Stallman  (rms@mole.gnu.ai.mit.edu)

	* Makefile.in (ALL_CFLAGS): Don't define THIS_IS_X11R4.

	* xrdb.c: Define HAVE_X11R5 as in xterm.h.
	Include X11/Xlib.h, X11/cursorfont.h and X11/Xutil.h.
	(_XtDisplayInitialize): Test HAVE_X11R5.

	* dispatch.c: Define HAVE_X11R5 as in xterm.h.
	Include X11/Xlib.h, X11/cursorfont.h and X11/Xutil.h.
	(_XtConvertTypeToMask): Conditionalize on HAVE_X11R5.
	(WouldDispatchEvent): Likewise.

1994-04-12  Richard Stallman  (rms@mole.gnu.ai.mit.edu)

	* lwlib-Xaw.c (xaw_generic_callback): Declare without arg names.

1994-04-01  Frederic Pierresteguy  (fp@hal.gnu.ai.mit.edu)

	* lwlib-Xaw.c (make_dialog): Don't allow any geometry request from the
	user.

1994-03-22  Frederic Pierresteguy  (fp@mole.gnu.ai.mit.edu)

	* xlwmenu.c (XlwMenuResize): Don't allow the popup menu to resize
	itself. Therefore reset the size to its initial value.

1994-03-19  Richard Stallman  (rms@mole.gnu.ai.mit.edu)

	* lwlib-Xaw.c (xaw_update_one_widget): Finish replacing XtVaSetValues.
	Don't test for scrollbar widget.

1994-03-14  Frederic Pierresteguy  (fp@gnu.ai.mit.edu)

	* lwlib-int.h: Declare lw_get_widget_info.

	* lwlib.c (lw_get_widget_info): Comment out arg in function decl.

	* lwlib-Xaw.h: Comment out args in function decls.
	* lwlib-Xaw.c: Convert all function definitions to non-prototype K&R.
	(xaw_update_one_widget - case dialogWidgetClass): Call XtSetValues,
	not XtVaSetValues.

1994-03-11  Frederic Pierresteguy  (F.Pierresteguy@frcl.bull.fr)

	* xlwmenu.c (display_menu_item): Modify parameters to draw_arrow to
	right justify the arrow in the pane.

	* lwlib.c: If not defined USE_MOTIF and defined USE_LUCID then
	define USE_XAW.

	* Makefile.in (LUCID_SRCS, LUCID_OBJS): Add the target lwlib-Xaw.[oc].

	* lwlib.c, lwlib-int.h: Merged from Lucid 19.9 release.
	* lwlib.c (_AIX): Replace the AIXV3 directive.
	(USE_XAW): New macro to conditionalize the use of the athena toolkit.
	(lw_get_widget_info): New function.
	(set_one_value): Handle USE_XAW.
	(instanciate_widget_instance): Likewise.
	(destroy_one_instance): Likewise.
	(lw_pop_all_widgets): Likewise.
	(lw_pop_down_all_widgets): Likewise.
	(get_one_value): Likewise.

	* lwlib-Xaw.c, lwlib-Xaw.h: New files.

1994-02-23  Richard Stallman  (rms@mole.gnu.ai.mit.edu)

	* xlwmenu.c (XlwMenuInitialize, XlwMenuDestroy): Undo previous changes.

	* lwlib-Xlw.c (xlw_create_menubar, xlw_create_popup_menu):
	Use XtCreate..., not XtVaCreate...
	No need to copy instance->info->val any more.
	(xlw_update_one_widget): Use XtSetValues, not XtVaSetValues.

1994-02-21  Richard Stallman  (rms@mole.gnu.ai.mit.edu)

	* xlwmenu.c (pop_up_menu): Call XtUngrabPointer if XtGrabPointer fails.

1994-02-19  Richard Stallman  (rms@mole.gnu.ai.mit.edu)

	* Makefile.in (xrdb-cpp.o, lwlib.o): Put ALL_CFLAGS after other flags.

	* lwlib-Xlw.c (xlw_create_menubar): Don't call free_widget_value.
	Use malloc for allocation.
	(xlw_create_popup_menu): Likewise.

1994-02-18  Frederic Pierresteguy  (fp@mole.gnu.ai.mit.edu)

	* lwlib.c (malloc_cpt): New static variable.
	(malloc_widget_value): Increment malloc_cpt when allocating a cell.
	(free_widget_value): Really free the cells when the number of
	allocated ones is bigger than 25.

	* lwlib-Xlw.c (xlw_create_menubar): Call malloc_widget_value and
	free_widget_value instead of XtMalloc and XtFree.
	(xlw_create_popup_menu): Likewise.

1994-02-17  Richard Stallman  (rms@mole.gnu.ai.mit.edu)

	* Makefile.in (ALL_CFLAGS): Specify -Demacs.

	* xlwmenu.c (pop_up_menu) [emacs]: Catch and ignore X protocol errors
	in XtGrabPointer.

1994-02-17  Frederic Pierresteguy  (fp@mole.gnu.ai.mit.edu)

	* lwlib-Xlw.c (xlw_create_popup_menu): Pass tem to
	XtVaCreateManagedWidget, not instance->info->val.
	(xlw_create_menubar): Likewise.

1994-02-15  Frederic Pierresteguy  (fp@mole.gnu.ai.mit.edu)

	* lwlib-Xlw.c (xlw_create_popup_menu): Copy instance->info->val
	before calling XtVaCreateManagedWidget and then free the copy.
	(xlw_create_menubar): Likewise.

1994-02-11  Richard Stallman  (rms@mole.gnu.ai.mit.edu)

	* xlwmenu.c (XlwMenuInitialize): Copy mw->menu.contents.
	(XlwMenuDestroy): Free mw->menu.contents.

1994-02-09  Frederic Pierresteguy  (fp@mole.gnu.ai.mit.edu)

	* xlwmenu.c (display_menu_item): Call draw_shadow_rectangle to make
	visible/invisible the selection of the menubar items.

1994-02-08  Roland McGrath  (roland@churchy.gnu.ai.mit.edu)

	* lwlib.c (strcasecmp): Renamed to my_strcasecmp.
	(find_in_table): Changed only caller.

1994-02-04  Frederic Pierresteguy  (fp@mole.gnu.ai.mit.edu)

	* xlwmenu.c (display_menu_item): When dealing with the menubar,
	always call XDrawRectangle to clear the selection after popping down
	the pulldown menu.

1994-02-01  Richard Stallman  (rms@mole.gnu.ai.mit.edu)

	* lwlib.c: Include ctype.h.

1994-01-31  Richard Stallman  (rms@mole.gnu.ai.mit.edu)

	* lwlib.c (strcasecmp): New function.

1994-01-30  Richard Stallman  (rms@mole.gnu.ai.mit.edu)

	* xlwmenu.c, lwlib.c, lwlib-Xlw.c, lwlib-utils.c:
	Convert all function definitions to non-prototype K&R.

	* lwlib-Xlw.h: Comment out args in function decls.
	* lwlib.h: Comment out args in function decls.
	* lwlib-utils.h: Comment out args in function decls.

1994-01-29  Richard Stallman  (rms@mole.gnu.ai.mit.edu)

	* lwlib.c: Include StringDefs.h after lwlib.h.

1994-01-22  Roland McGrath  (roland@churchy.gnu.ai.mit.edu)

	* Makefile (xrdb-cpp.o, lwlib.o): Use $(srcdir) and file name
	instead of $*.
	(dispatch.o, xrdb.o, lwlib-Xm.o): Rules removed; they were
	superfluous and didn't work when configured outside srcdir.  The
	implicit .c.o rule works fine.

1994-01-21  Richard Stallman  (rms@mole.gnu.ai.mit.edu)

	* xlwmenu.c (resource_widget_value): Avoid using strdup.

1994-01-18  Richard Stallman  (rms@mole.gnu.ai.mit.edu)

	* Makefile.in: New file.

	* lwlib-Xolmb.c: Renamed from lwlib-Xol-mb.c.
	* lwlib-Xolmb.h: Renamed from lwlib-Xol-mb.h.
	* lwlib-XolmbP.h: Renamed from lwlib-Xol-mbP.h.

	* lwlib-int.h: Renamed from lwlib-internal.h.



;; Local Variables:
;; coding: iso-2022-7bit-unix
;; End:
