1 2002-04-28 Jan D. <jan.h.d@swipnet.se>
3 * xlwmenu.c: Do not grab keyboard if installation-directory is
4 non-nil (not installed Emacs). To simplify debugging.
6 2002-04-28 Pavel Jan
\e,Bm
\e(Bk <Pavel@Janik.cz>
8 * Makefile.in: Remove OpenLook file dependencies.
9 (xrdb-cpp.o): Remove target.
10 Remove unused defines.
12 * xrdb.c, xrdb-cpp.c, Imakefile, dispatch.c, dispatch.h:
15 * lwlib.c (instantiate_widget_instance): Remove duplicated
18 2002-04-25 Pavel Jan
\e,Bm
\e(Bk <Pavel@Janik.cz>
20 * lwlib-Xol.c, lwlib-Xol.h, lwlib-Xolmb.c, lwlib-Xolmb.h
21 * lwlib-XolmbP.h: Remove file.
23 2002-04-22 Jan D. <jan.h.d@swipnet.se>
25 * lwlib-Xm.c: Removed compiler warning.
27 * xlwmenu.c: Add calls to GrabKeyboard to remove strange
28 interactions with window managers that steal keypresses.
29 Call ungrab_all instead of XtUngrabPointer.
30 (pop_up_menu): Add call to XtGrabKeyboard.
31 (ungrab_all): New function.
33 2002-04-20 Pavel Jan
\e,Bm
\e(Bk <Pavel@Janik.cz>
35 * xlwmenu.c (find_next_selectable): New function.
36 (Down, Up, Right): Use it.
37 (find_next_selectable): Prevent endless loops when only one item
38 is enabled in the menu.
40 2002-04-19 Pavel Jan
\e,Bm
\e(Bk <Pavel@Janik.cz>
42 These changes allow moving in menu via keyboard.
44 * xlwmenu.c (xlwMenuTranslations, xlwMenuActionsList): Add
45 translations for cursor keys and RET.
46 (find_next_selectable, find_prev_selectable): New functions used
47 for finding menu-items.
48 (Down, Up, Left, Right): New functions.
50 2002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
52 * Makefile.in (TAGS): Don't use -t, it's the default behavior for
53 etags, so it barfs if invoked with -t.
55 2002-03-17 Richard M. Stallman <rms@gnu.org>
57 * lwlib.c (P_): Definitions deleted.
59 2002-03-16 Eli Zaretskii <eliz@is.elta.co.il>
61 * lwlib.c (P_): Don't define if already defined.
63 2002-01-27 Pavel Jan
\e,Bm
\e(Bk <Pavel@Janik.cz>
65 * lwlib-Xaw.c (xaw_update_scrollbar, xaw_scrollbar_scroll)
66 (xaw_scrollbar_jump): Put whole functions in #if 0.
68 2002-01-09 Pavel Jan
\e,Bm
\e(Bk <Pavel@Janik.cz>
70 * lwlib-Xaw.c (xaw_create_dialog): Initialize icon_name to
71 suppress compiler warnings.
73 2001-12-18 Pavel Jan
\e,Bm
\e(Bk <Pavel@Janik.cz>
75 * lwlib.c (separator_names): Add missing braces around
78 2001-12-08 Pavel Jan
\e,Bm
\e(Bk <Pavel@Janik.cz>
82 2001-12-01 Richard M. Stallman <rms@gnu.org>
84 * lwlib.h (_widget_value): `help' has type Lisp_Object.
86 * xlwmenu.c, lwlib-Xaw.c, lwlib-Xlw.c: Include ../src/lisp.h.
87 * lwlib-Xm.c, lwlib-Xol.c, lwlib/lwlib-Xolmb.c: Include ../src/lisp.h.
88 * lwlib/lwlib-utils.c: Include ../src/lisp.h.
90 * lwlib.c: Include ../src/lisp.h. Don't declare xmalloc.
91 (free_widget_value_tree): Don't free `help' field.
92 (copy_widget_value_tree): Copy `help' simply, without safe_strdup.
93 (merge_widget_value): Compare and copy `help' simply.
95 2001-11-28 Richard M. Stallman <rms@gnu.org>
97 * Makefile.in (TAGS): Find the source files in $(srcdir).
99 2001-10-20 Gerd Moellmann <gerd@gnu.org>
101 * (Version 21.1 released.)
103 2001-10-09 Gerd Moellmann <gerd@gnu.org>
105 * lwlib-Xaw.c (xaw_create_scrollbar) [!0]: Return NULL.
106 From Hallvard B Furuseth <h.b.furuseth@usit.uio.no>.
108 2001-10-05 Gerd Moellmann <gerd@gnu.org>
112 2001-04-30 Gerd Moellmann <gerd@gnu.org>
114 * xlwmenu.c (xlwmenu_window_p): New function.
116 2001-03-23 Gerd Moellmann <gerd@gnu.org>
118 * lwlib-Xlw.c (x_print_complete_resource_name) [0]: New function.
120 2001-03-22 Gerd Moellmann <gerd@gnu.org>
122 * lwlib-Xm.c (x_print_complete_resource_name) [0]: New function.
124 2001-03-13 Gerd Moellmann <gerd@gnu.org>
126 * lwlib-Xm.c (make_menu_in_widget): Remove code forcing LessTif to
127 recompute centered text; it works fine without with current LessTif.
129 * lwlib-Xm.c (make_menu_in_widget): Add an XmNpopdownCallback
130 instead of an XmNunmapCallback.
131 (xm_unmap_callback): Removed.
133 * lwlib-Xm.c (make_menubar): Take out code in #if 0.
135 * lwlib-Xm.c (xm_popup_menu): Don't set XmNmenuPost unless
136 necessary. From Rick Scott <rwscott@alumni.uwaterloo.ca>.
138 2001-02-28 Gerd Moellmann <gerd@gnu.org>
140 * lwlib-Xm.c (xm_arm_callback): Don't compare widgets with `None',
143 * lwlib-Xaw.c (xaw_update_one_widget): Use XtSetSensitive instead
144 of setting the value of XtNsensitive.
146 * lwlib-Xm.c (xm_update_radiobox, update_one_menu_entry)
147 (xm_update_one_widget): Use XtSetSensitive instead of setting the
148 value of XmNsensitive. From Rick Scott
149 <rwscott@alumni.uwaterloo.ca>.
151 2000-12-14 Dave Love <fx@gnu.org>
153 * xlwmenu.c (gray_bitmap_bits): Remove `unsigned' from
156 2000-12-11 Dave Love <fx@gnu.org>
158 * xlwmenu.c (draw_separator) <SEPARATOR_SHADOW_ETCHED_IN_DASH>:
159 <SEPARATOR_SHADOW_ETCHED_OUT_DASH>: Fix call of draw_separator.
161 2000-12-07 Gerd Moellmann <gerd@gnu.org>
163 * lwlib-Xm.c (xm_arm_callback): Fix last change.
165 2000-11-30 Gerd Moellmann <gerd@gnu.org>
167 * lwlib-Xm.c (xm_arm_callback): Handle case that W is null;
168 also see comment there.
170 2000-11-21 Gerd Moellmann <gerd@gnu.org>
172 * xlwmenu.c (xlwmenu_redisplay): New function.
174 2000-09-30 Stefan Monnier <monnier@cs.yale.edu>
176 * lwlib.c (lw_separator_p): Init separator_p (bug with "-- some text").
178 2000-09-28 Sam Steingold <sds@gnu.org>
180 * xlwmenu.c: Before including <X11/Xos.h> on SUN, define SUNOS41
181 to avoid redefining struct timeval and struct timezone.
183 2000-09-04 Miles Bader <miles@gnu.org>
185 * xlwmenu.c (XlwMenuSetValues): Only frob the display if the menu
186 is actually displayed.
187 (remap_menubar): Only include the menu-margin in the initial X & Y
188 positions for horizontal menu-bars.
189 (fit_to_screen): If moving a sub-menu to the left-side, increment
190 its x-position by the shadow-thickness to make it look more
191 attached to the invoking menu-item (similarly to the way it would
192 be displayed on the right side).
194 2000-09-03 Miles Bader <miles@gnu.org>
196 * xlwmenu.c (x_alloc_lighter_color_for_widget): New extern declaration.
197 (make_shadow_gcs) [emacs]: Use x_alloc_lighter_color_for_widget to
198 do shadow calculation.
199 (make_shadow_gcs): Remove code that tests whether the top shadow
200 is dimmer than the bottom shadow--it shouldn't ever happen.
202 2000-08-30 Miles Bader <miles@gnu.org>
204 * xlwmenu.c (XlwMenuSetValues): If the background color has
205 changed, re-make the shadow-gcs too.
207 2000-08-03 Gerd Moellmann <gerd@gnu.org>
209 * lwlib.c, lwlib-Xm.c, lwlib-Xaw.c: Use NULL at the end of the
210 variable argument lists of XtVaSetValues and XtVaGetValues
211 functions because 0 is not sufficient on systems where sizeof
212 (int) < sizeof (void *).
214 2000-07-19 Gerd Moellmann <gerd@gnu.org>
216 * xlwmenu.c [emacs]: Don't include <X11/bitmaps/gray> because that
217 leads to redefinition errors when static is defined as empty in
218 config.h. Refer to the gray bitmap in xfns.c, instead.
220 2000-07-18 Dave Love <fx@gnu.org>
222 * lwlib-utils.c (XtApplyToWidgets): Cast args of lwlib_bcopy.
224 2000-06-23 Dave Love <fx@gnu.org>
226 * lwlib-Xlw.c (xlw_popup_menu): Cast arg of pop_up_menu.
228 * lwlib-utils.c: Include lwlib.h.
230 2000-06-16 Gerd Moellmann <gerd@gnu.org>
232 * xlwmenuP.h (_XlwMenu_part): Add free_top_shadow_color_p and
233 free_bottom_shadow_color_p.
235 * xlwmenu.c (make_shadow_gcs): Set free_top_shadow_color_p
236 and free_top_shadow_color_p flags in the menu widget if
237 top and bottom shadow colors must be freed.
238 (release_shadow_gcs): Free colors only if they must be freed.
240 2000-06-12 Gerd Moellmann <gerd@gnu.org>
242 * xlwmenu.c (make_shadow_gcs): Free and copy colors so that
243 color reference counts are right.
244 (release_shadow_gcs): Free colors.
246 2000-06-06 Dave Love <fx@gnu.org>
248 * xlwmenu.c (x_alloc_nearest_color_for_widget, x_catch_errors)
249 (x_uncatch_errors, x_had_errors_p, x_clear_errors): Add prototypes
250 -- should be moved into separate header.
251 (make_shadow_gcs) <x_alloc_nearest_color_for_widget>: Cast first
253 (Start) <pop_up_menu>: Cast second arg.
255 * lwlib.c (P_): Use PROTOTYPES.
256 (safe_strdup): Declare arg const.
257 (lw_modify_all_widgets) <!info>: Return 0.
259 * lwlib-Xm.c (P_): Use PROTOTYPES.
261 * xlwmenu.h, lwlib.h, lwlib-utils.h, lwlib-int.h, lwlib-Xm.h:
262 * lwlib-Xlw.h, lwlib-Xaw.h: Enable prototypes.
264 * lwlib-Xaw.c (xaw_popup_menu): Add EVENT arg.
266 * Makefile.in (lwlib.o): Depend on lwlib-Xlw.h.
267 (lwlib-Xlw.o): Depend on lwlib-Xlw.h.
268 (lwlib-Xaw.o): Depend on lwlib-Xaw.h.
269 (lwlib-Xm.o): Depend on lwlib-Xm.h.
271 2000-03-12 Gerd Moellmann <gerd@gnu.org>
273 * lwlib-Xm.c (make_menubar) [LESSTIF_VERSION]: Don't set
274 XmNresizeHeight and XmNresizeWidth.
276 2000-03-08 Dave Love <fx@gnu.org>
278 * Makefile.in (liblw.a): Don't bother testing for ranlib failing
279 since configure sets it up.
281 2000-03-06 Gerd Moellmann <gerd@gnu.org>
283 * lwlib-Xm.c (make_menubar): Set XmNresizeHeight and
284 XmNresizeWidth resources only if LESSTIF_VERSION is defined.
286 2000-03-05 Gerd Moellmann <gerd@gnu.org>
288 * lwlib-Xm.c (xm_manage_resizing): Rewritten.
290 * lwlib.c (lw_modify_all_widgets): Return non-zero if widget
292 (merge_widget_value): Add parameter CHANGE_P. Set *CHANGE_P
293 to 1 if a change occurs.
295 * lwlib.h (lw_modify_all_widgets): Change prototype.
297 2000-03-04 Gerd Moellmann <gerd@gnu.org>
299 * xlwmenu.c (make_shadow_gcs): Use the widget's colormap instead
300 of the screen's default colormap.
302 2000-02-18 Gerd Moellmann <gerd@gnu.org>
304 * lwlib.c (merge_widget_value): Fix incorrect assignment of
305 safe_strdup'd help string.
307 2000-01-25 Gerd Moellmann <gerd@gnu.org>
309 * lwlib-Xm.c (make_menu_in_widget): Don't add XmNpopdownCallback,
310 add XmNunmapCallback.
311 (xm_unmap_callback): New function.
312 (xm_pull_down_callback): Call pre-activate callback only if
313 parent is the menu bar.
315 2000-01-17 Gerd Moellmann <gerd@gnu.org>
317 * lwlib-Xm.c (xm_arm_callback): New function.
318 (make_menu_in_widget): Set xm_arm_callback as XmNarmCallback and
319 XmNdisarmCallback for buttons (not supported for other widgets).
320 (make_menubar): Set XmNresizeHeight and XmNresizeWidth to False.
322 * lwlib-Xlw.c (highlight_hook): New function.
323 (xlw_create_menubar, xlw_create_popup_menu): Add highlight_hook as
324 callback XtNhighlightCallback.
326 * lwlib.c (copy_widget_value_tree): Copy help string.
327 (free_widget_value_tree): Free help string.
328 (merge_widget_value): Handle help string.
329 (allocate_widget_info, lw_register_widget, lw_create_widget): Add
330 parameter HIGHLIGHT_CB.
331 (lw_get_widget_instance): New function.
333 * lwlib-int.h: Add prototype for lw_get_widget_instance.
335 * lwlib.h (_widget_value): Add help string.
337 * xlwmenu.c (xlwMenuResources): All XtNhighlightCallback.
338 (remap_menubar): Call highlight callback.
340 * xlwmenu.h (XtNhighlightCallback): New define.
342 * xlwmenuP.h (_XlwMenu_part): Add `highlight' callback list.
344 1999-10-19 Paul Eggert <eggert@twinsun.com>
346 Add support for large files, plus some locale improvements.
348 * dispatch.c, lwlib-Xaw.c, lwlib-Xlw.c, lwlib-Xm.c, lwlib.c, xlwmenu.c,
350 Include <config.h> before any system include files.
352 * lwlib-Xm.c, lwlib.c:
353 Do not include <stdlib.h> or <string.h>, as <config.h> does this.
355 1999-10-07 Gerd Moellmann <gerd@gnu.org>
357 * lwlib-Xm.c (make_menu_in_widget, update_one_menu_entry): Use
358 widgets instead of gadgets to be able to set colors.
360 1999-09-17 Richard Stallman <rms@gnu.org>
362 * lwlib-Xaw.c (wm_delete_window): Check all the shell's children,
363 not just the first, to find the dialog box.
365 1999-09-14 Gerd Moellmann <gerd@gnu.org>
367 * lwlib.c (lw_separator_p): Check for new-style separators
370 1999-09-10 Gerd Moellmann <gerd@gnu.org>
372 * lwlib.c (lw_separator_p): Add `--:space' with the same
373 meaning as `--:noLine'.
375 1999-09-06 Gerd Moellmann <gerd@gnu.org>
377 * lwlib.c (lw_separator_p): Add alternative separator type names.
379 1999-09-03 Gerd Moellmann <gerd@gnu.org>
381 * xlwmenu.c (make_shadow_gcs): Call
382 x_alloc_nearest_color_for_widget.
384 1999-07-12 Gerd Moellmann <gerd@gnu.org>
386 * lwlib-Xm.c: Add function prototypes.
388 * lwlib-Xm.c (xm_update_label): Use val->name to look up
389 a label string from resources.
390 (xm_update_label): Add some comments.
392 1999-07-12 Gerd Moellmann <gerd@gnu.org>
394 * xlwmenu.c (all_dashes_p): Removed.
395 (size_menu_item): Call lw_separator_p.
396 (display_menu_item): Ditto.
397 (display_menu): Ditto.
398 (draw_separator): New.
399 (display_menu_item): Call it.
400 (separator_height): New.
401 (size_menu_item): Call it.
403 * lwlib-Xm.c (all_dashes_p): Removed.
404 (make_menu_in_widget): Use lw_separator_p. Set Motif separator
407 * lwlib.c (lw_separator_p): New.
409 * lwlib.h (enum menu_separator): New.
411 1999-07-12 Gerd Moellmann <gerd@gnu.org>
413 * lwlib-Xm.c (make_menu_in_widget): Set alignment of menu
414 title after all widgets have been created.
416 1999-07-12 Gerd Moellmann <gerd@gnu.org>
418 * xlwmenu.c (toggle_button_width): Renamed from
419 toggle_or_radio_button_width.
420 (radio_button_width): New.
421 (size_menu_item): Use new functions.
422 (draw_shadow_rhombus): New.
423 (draw_radio): Use radio_button_width and draw_shadow_rhombus.
424 (draw_toggle): Use toggle_button_width.
426 1999-07-12 Gerd Moellmann <gerd@gnu.org>
428 * lwlib-Xm.c (xm_update_toggle): Add callback xm_generic_callback
429 instead of xm_internal_update_other_instances.
431 * lwlib-Xm.c (make_menu_in_widget): Do help button before managing
432 children to get it to the right place.
433 (make_menu_in_widget): Create toggle buttons.
434 (update_one_menu_entry): Update toggle buttons.
436 * xlwmenu.c (size_menu_item): Add parameter button_width.
437 (size_menu): Compute button_width.
438 (toggle_or_radio_button_width): New.
441 (draw_shadow_rectangle): Add parameter `down_p'.
443 * xlwmenuP.h (_window_state): Add button_width.
445 1999-07-12 Gerd Moellmann <gerd@gnu.org>
447 * xlwmenu.c (make_shadow_gcs) ]emacs]: Use x_alloc_nearest_color.
449 * lwlib.c (merge_widget_value): Handle button_type.
450 (copy_widget_value_tree): Copy button_type.
452 * lwlib.h (enum button_type): New.
453 (_widget_value): New member button_type.
455 1999-07-12 Gerd Moellmann <gerd@gnu.org>
457 * lwlib-Xm.c (make_menu_in_widget): Test for menubar widgets
458 using XmNrowColumnType.
460 1999-07-12 Gerd Moellmann <gerd@gnu.org>
462 * xlwmenu.c (abort_gracefully): New.
463 (display_menu): Use it instead of abort.
466 1999-07-12 Gerd Moellmann <gerd@gnu.org>
468 * xlwmenu.c (xlwMenuResources): Change previously unused
470 (size_menu): Take margin into account.
471 (display_menu_item): Ditto.
472 (remap_menubar): Ditto.
473 (draw_arrow): Draw it 3D.
475 1999-07-12 Richard Stallman <rms@gnu.org>
477 * Version 20.4 released.
479 1998-08-19 Richard Stallman <rms@psilocin.ai.mit.edu>
481 * Version 20.3 released.
483 1998-07-30 Paul Eggert <eggert@twinsun.com>
485 * lwlib/Makefile.in (lwlib-utils.o, lwlib.o, lwlib-Xlw.o)
486 (lwlib-Xaw.o, lwlib-Xm.o, lwlib-Xol.o, lwlib-Xolmb.o):
487 Add dependencies to corresponding .c files. for Solaris 2.x VPATH make.
489 1998-04-06 Andreas Schwab <schwab@gnu.org>
491 * lwlib.c: Always declare xmalloc.
492 [USE_XAW]: Include <X11/Xaw/Paned.h>.
493 (lwlib_memset, lwlib_bcopy): Explicitly declare return type.
495 1997-12-20 Richard Stallman <rms@delysid.gnu.org>
497 * lwlib-Xm.c (update_one_menu_entry):
498 Add conditional in case XmNpositionIndex is missing.
500 1997-12-20 Richard Stallman <rms@psilocin.gnu.org>
502 * lwlib-Xm.c (update_one_menu_entry):
503 Add conditional in case XmNpositionIndex is missing.
505 1997-09-19 Richard Stallman <rms@psilocin.gnu.ai.mit.edu>
507 * Version 20.2 released.
509 * xlwmenu.c (motion_event_is_in_menu): Extend the left and
510 top windows by the shadow width.
512 1997-09-15 Richard Stallman <rms@psilocin.gnu.ai.mit.edu>
514 * Version 20.1 released.
516 1997-07-23 Richard Stallman <rms@psilocin.gnu.ai.mit.edu>
518 * xlwmenu.c (display_menu): If an item is disabled,
519 don't display its submenu (if any).
521 1997-05-01 Richard Stallman <rms@psilocin.gnu.ai.mit.edu>
523 * xlwmenu.c (pop_up_menu): Update the call to x_catch_errors.
525 1997-01-21 Richard Stallman <rms@psilocin.gnu.ai.mit.edu>
527 * xlwmenu.c (fit_to_screen): If new menu would overlap the previous
528 one from the side, try moving it up or down.
530 1996-08-11 Richard Stallman <rms@psilocin.gnu.ai.mit.edu>
532 * Version 19.33 released.
534 * lwlib-Xm.c (update_one_menu_entry): Fix previous change:
535 When XmIsCascadeButton, don't call XmCreateCascadeButtonGadget,
536 just modify the existing one.
538 1996-08-09 Marcus Daniels <marcus@sayre.sysc.pdx.edu>
540 * lwlib.c (merge_widget_value): Undo previous change.
542 * lwlib-Xm.c (update_one_menu_entry): When creating a pulldown
543 in an existing but empty menu item, in order to get a new functional
544 pulldown, the menu item must be switched from an XmPushButtonGadget
545 into a XmCascadeButtonGadget.
547 1996-07-31 Richard Stallman <rms@psilocin.gnu.ai.mit.edu>
549 * Version 19.32 released.
551 1996-07-31 Marcus Daniels <marcus@sayre.sysc.pdx.edu>
553 * lwlib-Xm.c (make_menubar): Turn off menu accelerator.
555 1996-07-24 Marcus Daniels <marcus@sayre.sysc.pdx.edu>
557 * lwlib.c (merge_widget_value) [USE_MOTIF]: Pass along the change
558 flag from merged_contents.
560 1996-07-13 Karl Heuer <kwzh@gnu.ai.mit.edu>
562 * lwlib-Xm.c (xm_update_menu): Fix loop termination test.
564 1996-07-07 Karl Heuer <kwzh@gnu.ai.mit.edu>
566 * lwlib-Xm.h, lwlib-Xm.c, lwlib.h, lwlib.c: Undo previous change.
568 1996-07-03 Marcus Daniels <marcus@sayre.sysc.pdx.edu>
570 * lwlib-Xm.h: Declare lw_motif_menu_related_event_p.
572 * lwlib-Xm.c (lw_motif_menu_related_event_p): A predicate to
573 identify keyboard events intended only for menus.
575 * lwlib.h: Declare lw_toolkit_related_event_p.
577 * lwlib.c (lw_toolkit_related_event_p): A predicate to identify
578 toolkit-specific events.
580 1996-06-07 Marcus Daniels <marcus@sayre.sysc.pdx.edu>
582 * lwlib-Xm.c (make_menu_in_widget): Set mapping delay
583 for cascade buttons to zero.
585 1996-05-25 Karl Heuer <kwzh@gnu.ai.mit.edu>
587 * Version 19.31 released.
589 1996-03-31 Richard Stallman <rms@mole.gnu.ai.mit.edu>
591 * lwlib-Xm.c (destroy_all_children): When freeing a cascade button,
592 free its submenu too.
593 (make_menu_in_widget): Use a cascade button gadget, not a widget.
594 Include Xm/CascadeBG.h.
596 1996-03-29 Richard Stallman <rms@mole.gnu.ai.mit.edu>
598 * Makefile.in (tags): New target.
600 1996-03-28 Richard Stallman <rms@mole.gnu.ai.mit.edu>
602 * Makefile.in (TAGS): Renamed from `tags' and fixed to work.
604 1996-03-26 Richard Stallman <rms@mole.gnu.ai.mit.edu>
606 * Makefile.in (xlwmenu.o): New explicit target.
608 1996-03-24 Richard Stallman <rms@mole.gnu.ai.mit.edu>
610 * lwlib.h (struct widget_value): New field this_one_change.
611 * lwlib.c (merge_widget_value): Set the this_one_change field.
612 * lwlib-Xm.c (destroy_all_children): New arg first_child_to_destroy.
613 (make_menu_in_widget): New arg keep_first_children.
614 (xm_update_menu): Preserve the first children even if later ones
615 have a structural change.
616 (update_one_menu_entry): Use this_one_change field.
618 1996-03-01 Richard Stallman <rms@mole.gnu.ai.mit.edu>
620 * xlwmenu.c (motion_event_is_in_menu): Make x and y signed.
622 1996-02-25 Richard Stallman <rms@mole.gnu.ai.mit.edu>
624 * lwlib.c (lw_window_is_in_menubar) [USE_MOTIF]:
625 With Motif, the window WIN can be the menu bar widget itself.
627 1996-02-21 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
629 * lwlib.c (free_widget_value_tree, merge_widget_value):
630 Use XtFree for the toolkit_data.
632 1996-02-19 Karl Heuer <kwzh@gnu.ai.mit.edu>
634 * lwlib.c (lw_internal_update_other_instances): Move static var
635 outside the function, and rename it to lwlib_updating.
637 1996-01-04 Paul Eggert <eggert@twinsun.com>
639 * lwlib.c (instantiate_widget_instance): Renamed from
640 instanciate_widget_instance (spelling correction).
643 1995-12-31 Richard Stallman <rms@mole.gnu.ai.mit.edu>
645 * xlwmenu.c (xlwMenuActionsList): Add "key" and "nothing".
646 (xlwMenuTranslations): Add translations for Key, KeyUp,
647 and for the modifier keysyms.
648 (Nothing, Key): New functions.
650 1995-12-24 Richard Stallman <rms@mole.gnu.ai.mit.edu>
652 * xlwmenu.c (XlwMenuSetValues): Do redisplay if non-null contents
653 get replaced by empty contents.
655 * lwlib.c (merge_widget_value): Treat disappearance of entire contents
656 as a STRUCTURAL_CHANGE.
658 1995-12-20 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
660 * lwlib-utils.c: Add #undef for index and rindex.
662 1995-11-24 Richard Stallman <rms@mole.gnu.ai.mit.edu>
664 * Version 19.30 released.
666 1995-11-13 Richard Stallman <rms@mole.gnu.ai.mit.edu>
668 * xlwmenu.c (display_menu_item): Fix previous change.
670 1995-11-04 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
672 * xlwmenu.c (display_menu_item): Don't treat buttons specially.
674 1995-08-14 Richard Stallman <rms@mole.gnu.ai.mit.edu>
676 * Makefile.in (RANLIB): Get this var from configure.
678 1995-08-02 Richard Stallman <rms@mole.gnu.ai.mit.edu>
680 * lwlib.c (lw_popup_menu): New arg `event', passed along.
681 * lwlib-Xlw.c (xlw_popup_menu): New arg `event'.
682 * lwlib-Xm.c (xm_popup_menu): New arg `event'.
684 1995-06-19 Richard Stallman <rms@mole.gnu.ai.mit.edu>
686 * Version 19.29 released.
688 1995-06-11 Richard Stallman <rms@gnu.ai.mit.edu>
690 * lwlib.c (lwlib_toolkit_type): New variable.
692 1995-05-26 Richard Stallman <rms@gnu.ai.mit.edu>
694 * xlwmenu.c (Drag): Do nothing unless menu.popped_up field is set.
696 1995-05-22 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
698 * xlwmenu.c (XlwMenuInitialize): Cast XCreatePixmapFromBitmapData args.
700 1995-05-20 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
702 * lwlib.c: Don't use prototype.
703 * lwlib-Xm.c (activate_button, xm_update_cascadebutton): Likewise.
705 1995-05-05 Richard Stallman <rms@mole.gnu.ai.mit.edu>
707 * lwlib.c (lw_refigure_widget) [USE_MOTIF]: Fix backward if.
709 1995-05-04 Richard Stallman <rms@mole.gnu.ai.mit.edu>
711 * Makefile.in (ALL_CFLAGS): Add -I../src.
713 1995-05-03 Morten Welinder <terra+@cs.cmu.edu>
715 * lwlib.c [__osf__]: Include string.h and stdlib.h.
716 [__osf__] (xmalloc): Declared.
718 1995-04-13 Richard Stallman <rms@mole.gnu.ai.mit.edu>
720 * lwlib-Xm.c (update_one_menu_entry, make_menu_in_widget):
721 Specify more useful names in XmCreatePulldownMenu calls.
723 * lwlib-Xaw.c (xaw_pop_instance): Make x, y, w, h unsigned.
725 * xlwmenu.c (size_menu): Make height and label_width unsigned.
726 (fit_to_screen): Make screen_width and screen_height unsigned.
727 (motion_event_is_in_menu): Make x, y unsigned.
729 1995-04-09 Richard Stallman <rms@mole.gnu.ai.mit.edu>
731 * lwlib-utils.c: If HAVE_CONFIG_H, include config.h.
733 * Makefile.in (ALL_CFLAGS): Define HAVE_CONFIG_H.
734 Add -I${srcdir}/../src.
736 1995-04-08 Paul Reilly <pmr@geech.gnu.ai.mit.edu>
738 * lwlib-Xm.c: Remove function prototypes.
739 (xm_pop_down_callback): Call the deactivation callback only when
740 popping down the top level submenu.
742 1995-04-07 Richard Stallman <rms@mole.gnu.ai.mit.edu>
744 * Makefile.in (lwlib.o): Depend on Makefile.
746 * lwlib-Xm.h: Remove function prototypes.
748 * lwlib-Xm.c (remove_grabs): Use type Widget for `menu'.
750 1995-02-15 Paul Reilly <pmr@geech.gnu.ai.mit.edu>
752 * Makefile.in (ALL_CFLAGS): Allow include files to be found in
755 1995-02-07 Richard Stallman <rms@pogo.gnu.ai.mit.edu>
757 * Makefile.in (maintainer-clean): Renamed from realclean.
759 1994-11-28 Richard Stallman <rms@bethel>
761 * lwlib-int.h (safe_strdup): Don't use ANSI argument prototype.
763 1994-11-15 Paul Reilly <pmr@duality.gnu.ai.mit.edu>
765 * lwlib.c (lw_refigure_widget): Use the macro USE_XAW rather than XAW.
767 1994-11-08 Paul Reilly <pmr@duality.gnu.ai.mit.edu>
769 * lwlib-Xm.c (make_menu_in_widget): Differentiate a separator
770 entry ("--") from a title.
771 (xm_pop_down_callback): Filter all but the last pop down callbacks.
773 1994-11-07 Paul Reilly <pmr@duality.gnu.ai.mit.edu>
775 * lwlib-Xm.c (update_one_menu_entry): Use the parent of the
776 cascade button as the parent of the pulldown, rather than the
777 cascade button itself. This works around a Motif SIGSEGV in the
778 function `InSharedMenuHierarchy'.
780 1994-10-29 Richard Stallman <rms@duality.gnu.ai.mit.edu>
782 * xlwmenu.c (xlwmenu_default_font): New global variable.
783 (XlwMenuInitialize): Use xlwmenu_default_font to default
784 the font if necessary. Make mw, itself, an argument.
786 1994-10-26 Richard Stallman <rms@duality.gnu.ai.mit.edu>
788 * xlwmenu.c (pop_up_menu): Pass a Display * to x_catch_errors, etc.
790 1994-10-26 Richard Stallman <rms@mole.gnu.ai.mit.edu>
792 * xlwmenu.c (xlwmenu_default_font): New global variable.
793 (XlwMenuInitialize): Use xlwmenu_default_font to default
794 the font if necessary. Make mw, itself, an argument.
796 * xlwmenu.c (pop_up_menu): Pass a Display * to x_catch_errors, etc.
798 1994-10-08 Richard Stallman <rms@mole.gnu.ai.mit.edu>
800 * xlwmenu.c (fit_to_screen): Don't put the menu off the left or top.
802 1994-10-02 Paul Reilly <pmr@geech.gnu.ai.mit.edu>
804 * xlwmenu.c (display_menu_item): Add support for displaying the
805 title in pop up menus.
807 * lwlib.c (lw_set_main_areas): Use xm_set_main_areas().
808 (lw_manage_resizing): Use xm_manage_resizing() for Emacs/Motif.
810 1994-09-25 Paul Reilly <pmr@geech.gnu.ai.mit.edu>
812 * lwlib-Xaw.c (xaw_create_main): New function to support the
813 toolkit independent creation of the main Emacs widget. *
814 lwlib-Xlw.c (xlw_create_menubar): When compiling under Emacs, set
815 resizing resources to disable showGrip and to enable both
816 resizeToPreferred and allowShellResize.
818 * lwlib-Xm.h: Declare xm_set_main_areas, xm_manage_resizing.
820 * lwlib-Xm.c: (make_menu_in_widget): Add support for displaying a
821 title in pop up menus.
822 (make_main, xm_set_main_areas, xm_manage_resizing): New functions to
823 create and manage a Motif Main Window widget.
825 * xlwmenu.c: Add #include <X11/ObjectP.h> for X11R4.
827 1994-09-18 Fred Pierresteguy <F.Pierresteguy@frcl.bull.fr>
829 * lwlib-Xm.c (make_dialog): When there is more than two pushbuttons,
830 set XmPACK_TIGHT and XmHORIZONTAL to the rowcolumn. Also add a
833 1994-09-16 Paul Reilly <pmr@geech.gnu.ai.mit.edu>
835 * lwlib-Xm.c (make_main): New function to support toolkit
836 independent creation of the main Emacs widget.
837 (make_destroyed_instance): Use safe_strdup() instead of strdup().
839 * lwlib-int.h: Declare safe_strdup.
841 * lwlib.c (lw_refigure_widget): New function. Handle geometry
842 management inside lwlib instead of in Emacs.
843 (lw_window_is_in_menubar): New function. Determine if the pointer
845 (lw_set_main_areas): New function. Set the main window widgets for
848 * lwlib.h: Declare lw_refigure_widget(), lw_window_is_in_menubar(),
851 * xlwmenu.h: Define Xt{Ns,CS}howGrip, Xt{Nr,CR}esizeToPreferred, and
854 * xlwmenu.c (Start): Use pop_up_menu() to post the submenus.
855 (Select): Remove the pointer grab when popping down a menubar
857 (pop_up_menu): Handle popping up submenus from a menubar, i.e. when
858 the menu widget parent is not a shell widget.
860 1994-08-25 Richard Stallman <rms@mole.gnu.ai.mit.edu>
862 * xlwmenu.c (pop_up_menu): Clear next_release_must_exit.
863 (Start): Clear next_release_must_exit when popping up the menu.
865 1994-08-24 Richard Stallman <rms@mole.gnu.ai.mit.edu>
867 * xlwmenu.c (Start): Set menu_post_event or next_release_must_exit.
868 (Select): Do nothing if the menu should be left posted.
870 1994-07-28 Richard Stallman <rms@mole.gnu.ai.mit.edu>
872 * xlwmenu.c (make_windows_if_needed, pop_up_menu):
873 Enable mouse motion events even when no button down.
875 1994-07-11 Richard Stallman (rms@mole.gnu.ai.mit.edu)
877 * xlwmenu.c (pointer_grabbed): New variable.
878 (pop_up_menu): Set the variable.
879 (XlwMenuDestroy): Maybe call XtUngrabPointer.
881 1994-05-25 Richard Stallman (rms@mole.gnu.ai.mit.edu)
883 * lwlib.c (max): Function deleted. Define as macro instead,
884 but only if not already defined.
886 1994-05-20 Richard Stallman (rms@mole.gnu.ai.mit.edu)
888 * xlwmenu.c (xlwMenuResources): Use XtRDimension for shadow thickness.
890 1994-05-19 Richard Stallman (rms@mole.gnu.ai.mit.edu)
892 * lwlib-Xaw.c (xaw_pop_instance): Use XtSetValues, not XtMoveWidget.
894 1994-05-16 Richard Stallman (rms@mole.gnu.ai.mit.edu)
896 * lwlib.c (lwlib_memset: New function, used instead of memset.
898 * lwlib.c (lwlib_bcopy): New function.
899 * lwlib-utils.c (XtApplyToWidgets): Use lwlib_bcopy.
901 * lwlib.c: Delete definitions for use of alloca.
902 (name_to_widget): Use xmalloc, not alloca.
904 1994-05-12 Richard Stallman (rms@mole.gnu.ai.mit.edu)
906 * xlwmenu.c (XlwMenuDestroy): Set new var submenu_destroyed.
907 (XlwMenuRedisplay): If it's set, truncate the old_depth to 1.
909 1994-05-09 Richard Stallman (rms@mole.gnu.ai.mit.edu)
911 * xrdb-cpp.c: Don't include string.h, unistd.h, stdlib.h.
912 * lwlib-Xaw.c: Don't include string.h, unistd.h, stdlib.h.
913 * lwlib-utils.c (XtApplyToWidgets): Use bcopy, not memcpy.
914 * lwlib-utils.c: Don't include string.h, unistd.h, stdlib.h, memory.h.
915 * xlwmenu.c: Don't include string.h, unistd.h, stdlib.h.
916 * lwlib.c: Don't include string.h, unistd.h, stdlib.h.
917 (safe_strdup): No longer static.
918 * lwlib-Xm.c: Use safe_strdup, not strdup.
920 * xlwmenu.c (string_width): No longer static.
922 1994-05-06 Richard Stallman (rms@mole.gnu.ai.mit.edu)
924 * xlwmenuP.h (struct _XlwMenu_part): Use Pixel and Cursor
925 for foreground and cursor_shape fields.
927 * xlwmenu.c (XlwMenuSetValues): Check for change of font.
929 1994-04-28 Richard Stallman (rms@mole.gnu.ai.mit.edu)
931 * Makefile.in: Delete all SRCS variables (unused).
932 (lwlib.o, xrdb-cpp.o): Mention srcdir in dep.
934 1994-04-15 Richard Stallman (rms@mole.gnu.ai.mit.edu)
936 * Makefile.in (ALL_CFLAGS): Don't define THIS_IS_X11R4.
938 * xrdb.c: Define HAVE_X11R5 as in xterm.h.
939 Include X11/Xlib.h, X11/cursorfont.h and X11/Xutil.h.
940 (_XtDisplayInitialize): Test HAVE_X11R5.
942 * dispatch.c: Define HAVE_X11R5 as in xterm.h.
943 Include X11/Xlib.h, X11/cursorfont.h and X11/Xutil.h.
944 (_XtConvertTypeToMask): Conditionalize on HAVE_X11R5.
945 (WouldDispatchEvent): Likewise.
947 1994-04-12 Richard Stallman (rms@mole.gnu.ai.mit.edu)
949 * lwlib-Xaw.c (xaw_generic_callback): Declare without arg names.
951 1994-04-01 Frederic Pierresteguy (fp@hal.gnu.ai.mit.edu)
953 * lwlib-Xaw.c (make_dialog): Don't allow any geometry request from the
956 1994-03-22 Frederic Pierresteguy (fp@mole.gnu.ai.mit.edu)
958 * xlwmenu.c (XlwMenuResize): Don't allow the popup menu to resize
959 itself. Therefore reset the size to its initial value.
961 1994-03-19 Richard Stallman (rms@mole.gnu.ai.mit.edu)
963 * lwlib-Xaw.c (xaw_update_one_widget): Finish replacing XtVaSetValues.
964 Don't test for scrollbar widget.
966 1994-03-14 Frederic Pierresteguy (fp@gnu.ai.mit.edu)
968 * lwlib-int.h: Declare lw_get_widget_info.
970 * lwlib.c (lw_get_widget_info): Comment out arg in function decl.
972 * lwlib-Xaw.h: Comment out args in function decls.
973 * lwlib-Xaw.c: Convert all function definitions to non-prototype K&R.
974 (xaw_update_one_widget - case dialogWidgetClass): Call XtSetValues,
977 1994-03-11 Frederic Pierresteguy (F.Pierresteguy@frcl.bull.fr)
979 * xlwmenu.c (display_menu_item): Modify parameters to draw_arrow to
980 right justify the arrow in the pane.
982 * lwlib.c: If not defined USE_MOTIF and defined USE_LUCID then
985 * Makefile.in (LUCID_SRCS, LUCID_OBJS): Add the target lwlib-Xaw.[oc].
987 * lwlib.c, lwlib-int.h: Merged from Lucid 19.9 release.
988 * lwlib.c (_AIX): Replace the AIXV3 directive.
989 (USE_XAW): New macro to conditionalize the use of the athena toolkit.
990 (lw_get_widget_info): New function.
991 (set_one_value): Handle USE_XAW.
992 (instanciate_widget_instance): Likewise.
993 (destroy_one_instance): Likewise.
994 (lw_pop_all_widgets): Likewise.
995 (lw_pop_down_all_widgets): Likewise.
996 (get_one_value): Likewise.
998 * lwlib-Xaw.c, lwlib-Xaw.h: New files.
1000 1994-02-23 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1002 * xlwmenu.c (XlwMenuInitialize, XlwMenuDestroy): Undo previous changes.
1004 * lwlib-Xlw.c (xlw_create_menubar, xlw_create_popup_menu):
1005 Use XtCreate..., not XtVaCreate...
1006 No need to copy instance->info->val any more.
1007 (xlw_update_one_widget): Use XtSetValues, not XtVaSetValues.
1009 1994-02-21 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1011 * xlwmenu.c (pop_up_menu): Call XtUngrabPointer if XtGrabPointer fails.
1013 1994-02-19 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1015 * Makefile.in (xrdb-cpp.o, lwlib.o): Put ALL_CFLAGS after other flags.
1017 * lwlib-Xlw.c (xlw_create_menubar): Don't call free_widget_value.
1018 Use malloc for allocation.
1019 (xlw_create_popup_menu): Likewise.
1021 1994-02-18 Frederic Pierresteguy (fp@mole.gnu.ai.mit.edu)
1023 * lwlib.c (malloc_cpt): New static variable.
1024 (malloc_widget_value): Increment malloc_cpt when allocating a cell.
1025 (free_widget_value): Really free the cells when the number of
1026 allocated ones is bigger than 25.
1028 * lwlib-Xlw.c (xlw_create_menubar): Call malloc_widget_value and
1029 free_widget_value instead of XtMalloc and XtFree.
1030 (xlw_create_popup_menu): Likewise.
1032 1994-02-17 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1034 * Makefile.in (ALL_CFLAGS): Specify -Demacs.
1036 * xlwmenu.c (pop_up_menu) [emacs]: Catch and ignore X protocol errors
1039 1994-02-17 Frederic Pierresteguy (fp@mole.gnu.ai.mit.edu)
1041 * lwlib-Xlw.c (xlw_create_popup_menu): Pass tem to
1042 XtVaCreateManagedWidget, not instance->info->val.
1043 (xlw_create_menubar): Likewise.
1045 1994-02-15 Frederic Pierresteguy (fp@mole.gnu.ai.mit.edu)
1047 * lwlib-Xlw.c (xlw_create_popup_menu): Copy instance->info->val
1048 before calling XtVaCreateManagedWidget and then free the copy.
1049 (xlw_create_menubar): Likewise.
1051 1994-02-11 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1053 * xlwmenu.c (XlwMenuInitialize): Copy mw->menu.contents.
1054 (XlwMenuDestroy): Free mw->menu.contents.
1056 1994-02-09 Frederic Pierresteguy (fp@mole.gnu.ai.mit.edu)
1058 * xlwmenu.c (display_menu_item): Call draw_shadow_rectangle to make
1059 visible/invisible the selection of the menubar items.
1061 1994-02-08 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
1063 * lwlib.c (strcasecmp): Renamed to my_strcasecmp.
1064 (find_in_table): Changed only caller.
1066 1994-02-04 Frederic Pierresteguy (fp@mole.gnu.ai.mit.edu)
1068 * xlwmenu.c (display_menu_item): When dealing with the menubar,
1069 always call XDrawRectangle to clear the selection after popping down
1072 1994-02-01 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1074 * lwlib.c: Include ctype.h.
1076 1994-01-31 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1078 * lwlib.c (strcasecmp): New function.
1080 1994-01-30 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1082 * xlwmenu.c, lwlib.c, lwlib-Xlw.c, lwlib-utils.c:
1083 Convert all function definitions to non-prototype K&R.
1085 * lwlib-Xlw.h: Comment out args in function decls.
1086 * lwlib.h: Comment out args in function decls.
1087 * lwlib-utils.h: Comment out args in function decls.
1089 1994-01-29 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1091 * lwlib.c: Include StringDefs.h after lwlib.h.
1093 1994-01-22 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
1095 * Makefile (xrdb-cpp.o, lwlib.o): Use $(srcdir) and file name
1097 (dispatch.o, xrdb.o, lwlib-Xm.o): Rules removed; they were
1098 superfluous and didn't work when configured outside srcdir. The
1099 implicit .c.o rule works fine.
1101 1994-01-21 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1103 * xlwmenu.c (resource_widget_value): Avoid using strdup.
1105 1994-01-18 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1107 * Makefile.in: New file.
1109 * lwlib-Xolmb.c: Renamed from lwlib-Xol-mb.c.
1110 * lwlib-Xolmb.h: Renamed from lwlib-Xol-mb.h.
1111 * lwlib-XolmbP.h: Renamed from lwlib-Xol-mbP.h.
1113 * lwlib-int.h: Renamed from lwlib-internal.h.
1118 ;; coding: iso-2022-7bit-unix
1121 Copyright (C) 1995, 1996, 1997, 1998, 1999, 2001, 2002
1122 Free Software Foundation, Inc.
1123 Copying and distribution of this file, with or without modification,
1124 are permitted provided the copyright notice and this notice are preserved.