Fix display of R2L lines and cursor motion in bidi buffers.
[bpt/emacs.git] / lwlib / ChangeLog
1 2010-04-27 Dan Nicolaescu <dann@ics.uci.edu>
2
3 * Makefile.in (C_SWITCH_X_SYSTEM): Define using autoconf.
4
5 2010-04-21 Jan Djärv <jan.h.d@swipnet.se>
6
7 * xlwmenu.c (expose_cb):
8 * lwlib-Xaw.c (fill_xft_data): Declarations before code.
9
10 2010-04-17 Jan Djärv <jan.h.d@swipnet.se>
11
12 * xlwmenu.c: Include Shell.h, remove duplicate declaration of
13 XlwMenuRedisplay.
14 (display_menu_item): Replace ws->window with ws->pixmap, remove
15 call to XftDrawRect.
16 (display_menu): Remove this and that argument. Remove
17 just_compute_this_one_p. Fill pixmap at start and copy it to window
18 at end.
19 (expose_cb): New function.
20 (make_windows_if_needed): Replace XCreateWindow with XtCreatePopup.
21 Add eventhandler for expose to expose_cb. Remove creation of
22 xft_draw.
23 (create_pixmap_for_menu): New function.
24 (remap_menubar): Pop down menus that aren't the same as in old_stack.
25 Set width, heigh, x, y on widget with XtVaSetValues. Call
26 create_pixmap_for_menu.
27 Replace XUnmapWindow with XtPopdown.
28 Remowe two last parameters to display_menu.
29 (map_event_to_widget_value, XlwMenuRedisplay, Key, Select)
30 (pop_up_menu): Remowe two last parameters to display_menu.
31 (XlwMenuRealize): Call create_pixmap_for_menu, set w and pixmap.
32 Remove call to XftDrawCreate.
33 (XlwMenuDestroy): Free pixmap. Call XtDestroyWidget instead of
34 XDestroyWindow.
35 (handle_motion_event): Only call handle_single_motion_event once.
36 (set_window_type): New function.
37 (make_windows_if_needed, XlwMenuRealize): Call set_window_type.
38
39 * xlwmenuP.h (window_state): Add pixmap and w.
40
41 2010-04-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
42
43 * xlwmenu.c (facename_changed): Put function in #ifdef HAVE_XFT.
44
45 2010-04-11 Dan Nicolaescu <dann@ics.uci.edu>
46
47 * Makefile.in (C_SWITCH_SYSTEM, C_SWITCH_MACHINE)
48 (C_SWITCH_X_SITE): Define using autoconf.
49
50 2010-04-11 Jan Djärv <jan.h.d@swipnet.se>
51
52 * lwlib-Xaw.c (widget_xft_data): New for Xft data.
53 (fill_xft_data, openFont, get_text_width_and_height)
54 (draw_text, set_text, find_xft_data, command_press)
55 (command_reset): New functions.
56 (xaw_update_one_widget): Call set_text for dialog and buttons
57 if HAVE_XFT. Also set internalHeight for buttons.
58 (xaw_destroy_instance): Free all Xft related data.
59 (button_actions, buttonTrans): New structures.
60 (make_dialog): Call XtAppAddActions for button_actions.
61 Find xft font to use and call fill_xft_data for widgets.
62 (xaw_create_dialog): Pass instance parameter to make_dialog.
63
64 * lwlib-int.h (_widget_instance): Add Xft data if HAVE_XFT.
65 Override translations for buttons. If depth is 16 or more, tell
66 Xaw3d to not be nice to colormap.
67 Remove separator widget, use XtNhorizDistance on first right button
68 instead.
69
70 2010-04-08 Jan Djärv <jan.h.d@swipnet.se>
71
72 * xlwmenu.c (xlwmenu_default_font): Make static.
73 (xlwMenuResources): Add XtNfaceName and XtNdefaultFace.
74 (string_width): Use XftTextExtentsUtf8 if HAVE_XFT.
75 (MENU_FONT_HEIGHT, MENU_FONT_ASCENT): Add versions for
76 HAVE_XFT.
77 (size_menu): Set max_rest_width in window_state structure.
78 (display_menu_item): If HAVE_XFT and xft_draw is set, use
79 XftDrawRect and XftDrawStringUtf8 to draw text.
80 (make_windows_if_needed): Set max_rest_width and xft_draw
81 in windows[i].
82 (openXftFont): New.
83 (XlwMenuInitialize): Call openXftFont if HAVE_XFT. If mw->menu.font
84 is not set, load font fixed and save it in xlwmenu_default_font.
85 (XlwMenuInitialize): Set max_rest_width and xft_draw in windows[0].
86 (XlwMenuClassInitialize): Initialize xlwmenu_default_font.
87 (XlwMenuRealize): Set xft_fg, xft_bg, xft_disabled_fg and
88 windows[0].xft_draw if xft_font is set.
89 (XlwMenuDestroy): Destroy all xft_draw and close xft_font.
90 (facename_changed): New.
91 (XlwMenuSetValues): Call facename_changed. If face name did change,
92 close old fonts and destroy xft_draw:s. Then create new ones.
93
94 * xlwmenu.h (XtNfaceName, XtCFaceName, XtNdefaultFace,
95 XtCDefaultFace): New.
96
97 * xlwmenuP.h (_window_state): Add max_rest_width and xft_draw.
98 (_XlwMenu_part): Add faceName,xft_fg, xft_bg, xft_disabled_fg and
99 xft_font.
100
101 2010-03-10 Chong Yidong <cyd@stupidchicken.com>
102
103 * Branch for 23.2.
104
105 2009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
106
107 * xlwmenu.c:
108 * lwlib.c:
109 * lwlib-utils.c:
110 * lwlib-Xm.c:
111 * lwlib-Xlw.c:
112 * lwlib-Xaw.c: Include setjmp.h.
113
114 2009-06-21 Chong Yidong <cyd@stupidchicken.com>
115
116 * Branch for 23.1.
117
118 2008-07-23 Dan Nicolaescu <dann@ics.uci.edu>
119
120 * Makefile.in (ALL_CFLAGS): Remove reference to C_SWITCH_SITE.
121
122 2008-06-26 Dan Nicolaescu <dann@ics.uci.edu>
123
124 * lwlib.c: Remove references to obsolete variables.
125
126 2008-06-02 Jim Meyering <meyering@redhat.com>
127
128 Remove useless if-before-free tests.
129 * lwlib-Xm.c (xm_update_one_value): Likewise.
130 * lwlib.c (safe_free_str, free_widget_value_tree): Likewise.
131
132 2008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
133
134 * Makefile.in (TOOLKIT_DEFINES): Remove.
135
136 2007-08-29 Károly Lőrentey <lorentey@elte.hu>
137
138 * xlwmenu.c (XlwMenuRealize): Ignore X errors while setting up
139 cursor shape.
140
141 2007-07-25 Glenn Morris <rgm@gnu.org>
142
143 * Relicense all FSF files to GPLv3 or later.
144
145 * COPYING: Switch to GPLv3.
146
147 2007-06-13 Chong Yidong <cyd@stupidchicken.com>
148
149 * lwlib-Xaw.c, lwlib.c: Link to xaw3d if available.
150
151 2007-06-02 Chong Yidong <cyd@stupidchicken.com>
152
153 * Version 22.1 released.
154
155 2007-02-28 Glenn Morris <rgm@gnu.org>
156
157 * Makefile.in (distclean): Delete Makefile.
158 (maintainer-clean): Delete TAGS.
159
160 2007-01-01 Jan Djärv <jan.h.d@swipnet.se>
161
162 * xlwmenu.c (xlwMenuResources): Add XtNleaveCallback, XtNenterCallback.
163 (display_menu, map_event_to_widget_value): Generate enter and
164 leave callbacks.
165 (pop_up_menu): Initialize mw->menu.inside_entry.
166
167 * xlwmenu.h (XtNleaveCallback, XtNenterCallback): New strings.
168
169 * xlwmenuP.h (_XlwMenu_part): Add enter/leave callbacks and
170 inside_entry.
171
172 * lwlib-Xlw.c (enter_hook, leave_hook): New functions.
173 (xlw_create_menubar, xlw_create_popup_menu): Connect XtNenter/leave
174 to enter/leave_hook.
175
176 2006-10-30 Chong Yidong <cyd@stupidchicken.com>
177
178 * Makefile.in (lwlib-utils.o): Use CPPFLAGS.
179
180 2006-09-15 Jay Belanger <belanger@truman.edu>
181
182 * COPYING: Replace "Library Public License" by "Lesser Public
183 License" throughout.
184
185 2006-05-23 Jan Djärv <jan.h.d@swipnet.se>
186
187 * xlwmenu.c: Include xterm.h if emacs instead of declaring functions
188 used.
189 (string_width): Declare as static.
190 (Start, pop_up_menu): Set is_hint to 0 before calling
191 handle_motion_event.
192 (pop_up_menu): Return value and parameters for x_catch_errors and
193 x_uncatch_errors changed.
194
195 2005-09-27 Dan Nicolaescu <dann@ics.uci.edu>
196
197 * xlwmenu.c (find_next_selectable, find_prev_selectable):
198 Add missing parameter declarations.
199
200 2005-09-24 Dan Nicolaescu <dann@ics.uci.edu>
201
202 * xlwmenu.c: Fix the return type for x_clear_errors and
203 x_uncatch_errors.
204
205 2005-07-19 Jan Djärv <jan.h.d@swipnet.se>
206
207 * lwlib-Xm.c (make_menu_in_widget): Disable drag and drop for
208 labels in menu bar.
209
210 2005-07-04 Lute Kamstra <lute@gnu.org>
211
212 Update FSF's address in GPL notices.
213
214 2005-04-01 Jan Djärv <jan.h.d@swipnet.se>
215
216 Reenable support for I18N to Lucid menus.
217
218 * xlwmenuP.h (_XlwMenu_part): Add fontSet resource.
219
220 * xlwmenu.c (string_width):
221 (MENU_FONT_HEIGHT, MENU_FONT_ASCENT): Ditto.
222 (display_menu_item, make_drawing_gcs, XlwMenuInitialize)
223 (XlwMenuSetValues): Use font if fontSet is NULL, use only
224 font for !HAVE_X_I18N.
225 (xlwMenuResources): Add fontSet resource.
226
227 2005-03-22 Jan Djärv <jan.h.d@swipnet.se>
228
229 * xlwmenuP.h: Temporary #undef HAVE_X_I18N until FontSet for UTF-8
230 on XFree86 is investigated.
231
232 * xlwmenu.c: Ditto.
233
234 2005-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
235
236 Add support for I18N to Lucid menus.
237
238 * xlwmenuP.h (struct _XlwMenu_part) [HAVE_X_I18N]: Change `font' to be
239 a fontset. Add a `font_extents' element.
240
241 * xlwmenu.c (xlwMenuResources) [HAVE_X_I18N]: Use a fontset for the
242 `font' resource.
243 (string_width) [HAVE_X_I18N]: Use XmbTextExtents;
244 (MENU_FONT_HEIGHT, MENU_FONT_ASCENT): New macros.
245 (arrow_width, toggle_button_width, size_menu_item, draw_arrow)
246 (draw_toggle, draw_radio, display_menu_item): Use them.
247 (display_menu_item) [HAVE_X_I18N]: Use XmbDrawString.
248 (make_drawing_gcs) [HAVE_X_I18N]: Don't mess with fonts.
249 (XlwMenuInitialize) [HAVE_X_I18N]: Initialize font_extents.
250 (XlwMenuSetValues) [HAVE_X_I18N]: Refresh font_extents if font changes.
251
252 * lwlib-Xm.c (xm_update_label, xm_update_list): Use the recommended
253 XmStringCreateLocalized function. Add missing copyright.
254
255 * lwlib-Xm.h: Add missing copyright and license notice.
256
257 2005-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
258
259 * xlwmenuP.h:
260 * xlwmenu.h: Add missing copyright and license notice.
261
262 2004-12-27 Jan Djärv <jan.h.d@swipnet.se>
263
264 * xlwmenu.c (xlwMenuActionsList): Install MenuGadgetEscape as an
265 action procedure for compatibility with Lesstif/Motif.
266
267 * Makefile.in (mostlyclean): Don't remove *~ on clean.
268
269 2004-12-26 Jan Djärv <jan.h.d@swipnet.se>
270
271 * lwlib-Xaw.c: Put <KeyPress>Escape in dialogOverride so dialogs only
272 pops down on Escape, not any keypress.
273
274 2004-11-01 Jan Djärv <jan.h.d@swipnet.se>
275
276 * xlwmenu.c (find_first_selectable, find_next_selectable)
277 (find_prev_selectable): Rename parameter skip_no_call_data to
278 skip_titles. Recognize titles as having no call_data and no contents.
279 (Down, Up): Comment update.
280
281 2004-08-30 Jan Djärv <jan.h.d@swipnet.se>
282
283 * lwlib.h (_widget_value): Add lname and lkey.
284
285 2004-01-12 Jan Djärv <jan.h.d@swipnet.se>
286
287 * xlwmenuP.h (_XlwMenu_part): Add top_depth.
288
289 * xlwmenu.h: Removed declaration of pop_up_menu
290
291 * xlwmenu.c (Start): Get correct time if time in event is CurrentTime.
292 (find_first_selectable, find_next_selectable)
293 (find_prev_selectable): Add parameter skip_no_call_data to skip
294 over items with no call data (popup menu titles).
295 (Down, Up): Compare old_depth to top_depth instead of 2.
296 Pass True to find_*_selectable:s new parameter if this is a popup menu.
297 (Left, Right): Compare old_depth to top_depth instead of 2.
298 Pass 0 to find_*_selectable:s new parameter.
299 (pop_up_menu): Set top_depth to 1 for pop up menus and 2 for
300 menu bar menus, to enable keyboard traversal of popups.
301
302 * lwlib-Xm.c (dialog_key_cb): New function.
303 (make_dialog): Add event handlers to dialog_key_cb for key press
304 so we can pop down on ESC.
305
306 * lwlib-Xlw.c (xlw_popup_menu): Replace call to pop_up_menu with
307 XtCallActionProc ("start"). Use a full XEvent since "start" copies it.
308
309 * lwlib-Xaw.c (make_dialog): Add override so dialog pops down on ESC.
310 (wm_delete_window): If widget isn't a shell, use the parent.
311
312 2003-05-22 Dave Love <fx@gnu.org>
313
314 * xlwmenu.c: Include lisp.h, not ../src/lisp.h.
315 (make_drawing_gcs): Remove unused `xswa', `mask'.
316
317 * lwlib-Xlw.c: Include lisp.h, not ../src/lisp.h.
318 (lw_lucid_widget_p): Remove unused `mw'.
319 (xlw_update_one_widget, xlw_pop_instance) [PROTOTYPES]:
320 Provide ISO C arglists.
321
322 2003-04-30 Lute Kamstra <lute@gnu.org>
323
324 * Makefile.in: Make things function properly in case both LessTif
325 and Open Motif are installed.
326
327 2003-01-26 Jan Djärv <jan.h.d@swipnet.se>
328
329 * lwlib-Xm.c (update_one_menu_entry): Deallocate widget_list.
330 (destroy_all_children): Call it self to destroy sub menu children.
331
332 2002-12-22 Richard M. Stallman <rms@gnu.org>
333
334 * xlwmenu.c (pop_new_stack_if_no_contents): Do nothing if
335 new_depth is 1.
336 (remap_menubar): Don't look in new_stack[0].
337 (Left): At level 1, do the same thing Right does.
338
339 2002-11-21 Dave Love <fx@gnu.org>
340
341 * lwlib-Xaw.c [PROTOTYPES]: Provide ISO C arglists for functions
342 with Boolean args.
343
344 2002-11-20 Dave Love <fx@gnu.org>
345
346 * lwlib.c: Remove obsolete USE_OLIT code.
347 [PROTOTYPES]: Provide ISO C arglists for functions with Boolean args.
348 (lwlib_memset): Declare length arg as size_t.
349 (malloc_widget_value): Cast arg of lwlib_memset.
350
351 * xlwmenu.c (separator_height): Prototype.
352
353 2002-05-07 Miles Bader <miles@gnu.org>
354
355 * xlwmenu.c (make_drawing_gcs): The scaling factor passed to
356 `x_alloc_lighter_color_for_widget' is a float, not an int, and
357 it's a multiplicative factor, so the name `delta' is inaccurate.
358 Always base disabled foreground on the normal foreground.
359 Don't use the temporary variable `temp'.
360
361 2002-05-06 Pavel Janík <Pavel@Janik.cz>
362
363 * xlwmenu.c (xlwMenuResources): New resource.
364 (find_next_selectable): Return current item when the menu is not
365 popped up.
366 Rename `inactive_gc' to `disabled_gc'.
367 Use lighter/darker color for disabled menu items instead of using
368 stipple. Use stipple only when better color can not be
369 determined automatically.
370
371 * xlwmenu.h (XtNdisabledForeground, XtCDisabledForeground):
372 New resource names.
373
374 * xlwmenuP.h (_XlwMenu_part): Add new member `disabled_foreground'.
375 Rename `inactive_gc' to `disabled_gc'.
376
377 2002-04-29 Pavel Janík <Pavel@Janik.cz>
378
379 * xlwmenu.c <XtNmargin, XtNverticalSpacing, XmNshadowThickness>:
380 Change default values.
381
382 2002-04-28 Jan Djärv <jan.h.d@swipnet.se>
383
384 * xlwmenu.c: Do not grab keyboard if installation-directory is
385 non-nil (not installed Emacs). To simplify debugging.
386
387 2002-04-28 Pavel Janík <Pavel@Janik.cz>
388
389 * Makefile.in: Remove OpenLook file dependencies.
390 (xrdb-cpp.o): Remove target.
391 Remove unused defines.
392
393 * xrdb.c, xrdb-cpp.c, Imakefile, dispatch.c, dispatch.h:
394 Remove unused file.
395
396 * lwlib.c (instantiate_widget_instance): Remove duplicated prototype.
397
398 2002-04-25 Pavel Janík <Pavel@Janik.cz>
399
400 * lwlib-Xol.c, lwlib-Xol.h, lwlib-Xolmb.c, lwlib-Xolmb.h
401 * lwlib-XolmbP.h: Remove file.
402
403 2002-04-22 Jan Djärv <jan.h.d@swipnet.se>
404
405 * lwlib-Xm.c: Removed compiler warning.
406
407 * xlwmenu.c: Add calls to GrabKeyboard to remove strange
408 interactions with window managers that steal keypresses.
409 Call ungrab_all instead of XtUngrabPointer.
410 (pop_up_menu): Add call to XtGrabKeyboard.
411 (ungrab_all): New function.
412
413 2002-04-20 Pavel Janík <Pavel@Janik.cz>
414
415 * xlwmenu.c (find_next_selectable): New function.
416 (Down, Up, Right): Use it.
417 (find_next_selectable): Prevent endless loops when only one item
418 is enabled in the menu.
419
420 2002-04-19 Pavel Janík <Pavel@Janik.cz>
421
422 These changes allow moving in menu via keyboard.
423
424 * xlwmenu.c (xlwMenuTranslations, xlwMenuActionsList):
425 Add translations for cursor keys and RET.
426 (find_next_selectable, find_prev_selectable): New functions used
427 for finding menu-items.
428 (Down, Up, Left, Right): New functions.
429
430 2002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
431
432 * Makefile.in (TAGS): Don't use -t, it's the default behavior for
433 etags, so it barfs if invoked with -t.
434
435 2002-03-17 Richard M. Stallman <rms@gnu.org>
436
437 * lwlib.c (P_): Definitions deleted.
438
439 2002-03-16 Eli Zaretskii <eliz@is.elta.co.il>
440
441 * lwlib.c (P_): Don't define if already defined.
442
443 2002-01-27 Pavel Janík <Pavel@Janik.cz>
444
445 * lwlib-Xaw.c (xaw_update_scrollbar, xaw_scrollbar_scroll)
446 (xaw_scrollbar_jump): Put whole functions in #if 0.
447
448 2002-01-09 Pavel Janík <Pavel@Janik.cz>
449
450 * lwlib-Xaw.c (xaw_create_dialog): Initialize icon_name to
451 suppress compiler warnings.
452
453 2001-12-18 Pavel Janík <Pavel@Janik.cz>
454
455 * lwlib.c (separator_names): Add missing braces around initializers.
456
457 2001-12-08 Pavel Janík <Pavel@Janik.cz>
458
459 * COPYING: New file.
460
461 2001-12-01 Richard M. Stallman <rms@gnu.org>
462
463 * lwlib.h (_widget_value): `help' has type Lisp_Object.
464
465 * xlwmenu.c, lwlib-Xaw.c, lwlib-Xlw.c: Include ../src/lisp.h.
466 * lwlib-Xm.c, lwlib-Xol.c, lwlib/lwlib-Xolmb.c: Include ../src/lisp.h.
467 * lwlib/lwlib-utils.c: Include ../src/lisp.h.
468
469 * lwlib.c: Include ../src/lisp.h. Don't declare xmalloc.
470 (free_widget_value_tree): Don't free `help' field.
471 (copy_widget_value_tree): Copy `help' simply, without safe_strdup.
472 (merge_widget_value): Compare and copy `help' simply.
473
474 2001-11-28 Richard M. Stallman <rms@gnu.org>
475
476 * Makefile.in (TAGS): Find the source files in $(srcdir).
477
478 2001-10-20 Gerd Moellmann <gerd@gnu.org>
479
480 * (Version 21.1 released.)
481
482 2001-10-09 Gerd Moellmann <gerd@gnu.org>
483
484 * lwlib-Xaw.c (xaw_create_scrollbar) [!0]: Return NULL.
485 From Hallvard B Furuseth <h.b.furuseth@usit.uio.no>.
486
487 2001-10-05 Gerd Moellmann <gerd@gnu.org>
488
489 * Branch for 21.1.
490
491 2001-04-30 Gerd Moellmann <gerd@gnu.org>
492
493 * xlwmenu.c (xlwmenu_window_p): New function.
494
495 2001-03-23 Gerd Moellmann <gerd@gnu.org>
496
497 * lwlib-Xlw.c (x_print_complete_resource_name) [0]: New function.
498
499 2001-03-22 Gerd Moellmann <gerd@gnu.org>
500
501 * lwlib-Xm.c (x_print_complete_resource_name) [0]: New function.
502
503 2001-03-13 Gerd Moellmann <gerd@gnu.org>
504
505 * lwlib-Xm.c (make_menu_in_widget): Remove code forcing LessTif to
506 recompute centered text; it works fine without with current LessTif.
507
508 * lwlib-Xm.c (make_menu_in_widget): Add an XmNpopdownCallback
509 instead of an XmNunmapCallback.
510 (xm_unmap_callback): Remove.
511
512 * lwlib-Xm.c (make_menubar): Take out code in #if 0.
513
514 * lwlib-Xm.c (xm_popup_menu): Don't set XmNmenuPost unless
515 necessary. From Rick Scott <rwscott@alumni.uwaterloo.ca>.
516
517 2001-02-28 Gerd Moellmann <gerd@gnu.org>
518
519 * lwlib-Xm.c (xm_arm_callback): Don't compare widgets with `None',
520 use NULL instead.
521
522 * lwlib-Xaw.c (xaw_update_one_widget): Use XtSetSensitive instead
523 of setting the value of XtNsensitive.
524
525 * lwlib-Xm.c (xm_update_radiobox, update_one_menu_entry)
526 (xm_update_one_widget): Use XtSetSensitive instead of setting the
527 value of XmNsensitive. From Rick Scott <rwscott@alumni.uwaterloo.ca>.
528
529 2000-12-14 Dave Love <fx@gnu.org>
530
531 * xlwmenu.c (gray_bitmap_bits): Remove `unsigned' from declaration.
532
533 2000-12-11 Dave Love <fx@gnu.org>
534
535 * xlwmenu.c (draw_separator) <SEPARATOR_SHADOW_ETCHED_IN_DASH>:
536 <SEPARATOR_SHADOW_ETCHED_OUT_DASH>: Fix call of draw_separator.
537
538 2000-12-07 Gerd Moellmann <gerd@gnu.org>
539
540 * lwlib-Xm.c (xm_arm_callback): Fix last change.
541
542 2000-11-30 Gerd Moellmann <gerd@gnu.org>
543
544 * lwlib-Xm.c (xm_arm_callback): Handle case that W is null;
545 also see comment there.
546
547 2000-11-21 Gerd Moellmann <gerd@gnu.org>
548
549 * xlwmenu.c (xlwmenu_redisplay): New function.
550
551 2000-09-30 Stefan Monnier <monnier@cs.yale.edu>
552
553 * lwlib.c (lw_separator_p): Init separator_p (bug with "-- some text").
554
555 2000-09-28 Sam Steingold <sds@gnu.org>
556
557 * xlwmenu.c: Before including <X11/Xos.h> on SUN, define SUNOS41
558 to avoid redefining struct timeval and struct timezone.
559
560 2000-09-04 Miles Bader <miles@gnu.org>
561
562 * xlwmenu.c (XlwMenuSetValues): Only frob the display if the menu
563 is actually displayed.
564 (remap_menubar): Only include the menu-margin in the initial X & Y
565 positions for horizontal menu-bars.
566 (fit_to_screen): If moving a sub-menu to the left-side, increment
567 its x-position by the shadow-thickness to make it look more
568 attached to the invoking menu-item (similarly to the way it would
569 be displayed on the right side).
570
571 2000-09-03 Miles Bader <miles@gnu.org>
572
573 * xlwmenu.c (x_alloc_lighter_color_for_widget): New extern declaration.
574 (make_shadow_gcs) [emacs]: Use x_alloc_lighter_color_for_widget to
575 do shadow calculation.
576 (make_shadow_gcs): Remove code that tests whether the top shadow
577 is dimmer than the bottom shadow--it shouldn't ever happen.
578
579 2000-08-30 Miles Bader <miles@gnu.org>
580
581 * xlwmenu.c (XlwMenuSetValues): If the background color has
582 changed, re-make the shadow-gcs too.
583
584 2000-08-03 Gerd Moellmann <gerd@gnu.org>
585
586 * lwlib.c, lwlib-Xm.c, lwlib-Xaw.c: Use NULL at the end of the
587 variable argument lists of XtVaSetValues and XtVaGetValues
588 functions because 0 is not sufficient on systems where sizeof
589 (int) < sizeof (void *).
590
591 2000-07-19 Gerd Moellmann <gerd@gnu.org>
592
593 * xlwmenu.c [emacs]: Don't include <X11/bitmaps/gray> because that
594 leads to redefinition errors when static is defined as empty in
595 config.h. Refer to the gray bitmap in xfns.c, instead.
596
597 2000-07-18 Dave Love <fx@gnu.org>
598
599 * lwlib-utils.c (XtApplyToWidgets): Cast args of lwlib_bcopy.
600
601 2000-06-23 Dave Love <fx@gnu.org>
602
603 * lwlib-Xlw.c (xlw_popup_menu): Cast arg of pop_up_menu.
604
605 * lwlib-utils.c: Include lwlib.h.
606
607 2000-06-16 Gerd Moellmann <gerd@gnu.org>
608
609 * xlwmenuP.h (_XlwMenu_part): Add free_top_shadow_color_p and
610 free_bottom_shadow_color_p.
611
612 * xlwmenu.c (make_shadow_gcs): Set free_top_shadow_color_p
613 and free_top_shadow_color_p flags in the menu widget if
614 top and bottom shadow colors must be freed.
615 (release_shadow_gcs): Free colors only if they must be freed.
616
617 2000-06-12 Gerd Moellmann <gerd@gnu.org>
618
619 * xlwmenu.c (make_shadow_gcs): Free and copy colors so that
620 color reference counts are right.
621 (release_shadow_gcs): Free colors.
622
623 2000-06-06 Dave Love <fx@gnu.org>
624
625 * xlwmenu.c (x_alloc_nearest_color_for_widget, x_catch_errors)
626 (x_uncatch_errors, x_had_errors_p, x_clear_errors): Add prototypes
627 -- should be moved into separate header.
628 (make_shadow_gcs) <x_alloc_nearest_color_for_widget>: Cast first arg.
629 (Start) <pop_up_menu>: Cast second arg.
630
631 * lwlib.c (P_): Use PROTOTYPES.
632 (safe_strdup): Declare arg const.
633 (lw_modify_all_widgets) <!info>: Return 0.
634
635 * lwlib-Xm.c (P_): Use PROTOTYPES.
636
637 * xlwmenu.h, lwlib.h, lwlib-utils.h, lwlib-int.h, lwlib-Xm.h:
638 * lwlib-Xlw.h, lwlib-Xaw.h: Enable prototypes.
639
640 * lwlib-Xaw.c (xaw_popup_menu): Add EVENT arg.
641
642 * Makefile.in (lwlib.o): Depend on lwlib-Xlw.h.
643 (lwlib-Xlw.o): Depend on lwlib-Xlw.h.
644 (lwlib-Xaw.o): Depend on lwlib-Xaw.h.
645 (lwlib-Xm.o): Depend on lwlib-Xm.h.
646
647 2000-03-12 Gerd Moellmann <gerd@gnu.org>
648
649 * lwlib-Xm.c (make_menubar) [LESSTIF_VERSION]: Don't set
650 XmNresizeHeight and XmNresizeWidth.
651
652 2000-03-08 Dave Love <fx@gnu.org>
653
654 * Makefile.in (liblw.a): Don't bother testing for ranlib failing
655 since configure sets it up.
656
657 2000-03-06 Gerd Moellmann <gerd@gnu.org>
658
659 * lwlib-Xm.c (make_menubar): Set XmNresizeHeight and
660 XmNresizeWidth resources only if LESSTIF_VERSION is defined.
661
662 2000-03-05 Gerd Moellmann <gerd@gnu.org>
663
664 * lwlib-Xm.c (xm_manage_resizing): Rewritten.
665
666 * lwlib.c (lw_modify_all_widgets): Return non-zero if widget
667 tree was changed.
668 (merge_widget_value): Add parameter CHANGE_P. Set *CHANGE_P
669 to 1 if a change occurs.
670
671 * lwlib.h (lw_modify_all_widgets): Change prototype.
672
673 2000-03-04 Gerd Moellmann <gerd@gnu.org>
674
675 * xlwmenu.c (make_shadow_gcs): Use the widget's colormap instead
676 of the screen's default colormap.
677
678 2000-02-18 Gerd Moellmann <gerd@gnu.org>
679
680 * lwlib.c (merge_widget_value): Fix incorrect assignment of
681 safe_strdup'd help string.
682
683 2000-01-25 Gerd Moellmann <gerd@gnu.org>
684
685 * lwlib-Xm.c (make_menu_in_widget): Don't add XmNpopdownCallback,
686 add XmNunmapCallback.
687 (xm_unmap_callback): New function.
688 (xm_pull_down_callback): Call pre-activate callback only if
689 parent is the menu bar.
690
691 2000-01-17 Gerd Moellmann <gerd@gnu.org>
692
693 * lwlib-Xm.c (xm_arm_callback): New function.
694 (make_menu_in_widget): Set xm_arm_callback as XmNarmCallback and
695 XmNdisarmCallback for buttons (not supported for other widgets).
696 (make_menubar): Set XmNresizeHeight and XmNresizeWidth to False.
697
698 * lwlib-Xlw.c (highlight_hook): New function.
699 (xlw_create_menubar, xlw_create_popup_menu): Add highlight_hook as
700 callback XtNhighlightCallback.
701
702 * lwlib.c (copy_widget_value_tree): Copy help string.
703 (free_widget_value_tree): Free help string.
704 (merge_widget_value): Handle help string.
705 (allocate_widget_info, lw_register_widget, lw_create_widget):
706 Add parameter HIGHLIGHT_CB.
707 (lw_get_widget_instance): New function.
708
709 * lwlib-int.h: Add prototype for lw_get_widget_instance.
710
711 * lwlib.h (_widget_value): Add help string.
712
713 * xlwmenu.c (xlwMenuResources): All XtNhighlightCallback.
714 (remap_menubar): Call highlight callback.
715
716 * xlwmenu.h (XtNhighlightCallback): New define.
717
718 * xlwmenuP.h (_XlwMenu_part): Add `highlight' callback list.
719
720 1999-10-19 Paul Eggert <eggert@twinsun.com>
721
722 Add support for large files, plus some locale improvements.
723
724 * dispatch.c, lwlib-Xaw.c, lwlib-Xlw.c, lwlib-Xm.c, lwlib.c, xlwmenu.c,
725 * xrdb-cpp.c, xrdb.c:
726 Include <config.h> before any system include files.
727
728 * lwlib-Xm.c, lwlib.c:
729 Do not include <stdlib.h> or <string.h>, as <config.h> does this.
730
731 1999-10-07 Gerd Moellmann <gerd@gnu.org>
732
733 * lwlib-Xm.c (make_menu_in_widget, update_one_menu_entry):
734 Use widgets instead of gadgets to be able to set colors.
735
736 1999-09-17 Richard Stallman <rms@gnu.org>
737
738 * lwlib-Xaw.c (wm_delete_window): Check all the shell's children,
739 not just the first, to find the dialog box.
740
741 1999-09-14 Gerd Moellmann <gerd@gnu.org>
742
743 * lwlib.c (lw_separator_p): Check for new-style separators differently.
744
745 1999-09-10 Gerd Moellmann <gerd@gnu.org>
746
747 * lwlib.c (lw_separator_p): Add `--:space' with the same
748 meaning as `--:noLine'.
749
750 1999-09-06 Gerd Moellmann <gerd@gnu.org>
751
752 * lwlib.c (lw_separator_p): Add alternative separator type names.
753
754 1999-09-03 Gerd Moellmann <gerd@gnu.org>
755
756 * xlwmenu.c (make_shadow_gcs): Call x_alloc_nearest_color_for_widget.
757
758 1999-07-12 Gerd Moellmann <gerd@gnu.org>
759
760 * lwlib-Xm.c: Add function prototypes.
761
762 * lwlib-Xm.c (xm_update_label): Use val->name to look up
763 a label string from resources.
764 (xm_update_label): Add some comments.
765
766 1999-07-12 Gerd Moellmann <gerd@gnu.org>
767
768 * xlwmenu.c (all_dashes_p): Removed.
769 (size_menu_item): Call lw_separator_p.
770 (display_menu_item): Ditto.
771 (display_menu): Ditto.
772 (draw_separator): New.
773 (display_menu_item): Call it.
774 (separator_height): New.
775 (size_menu_item): Call it.
776
777 * lwlib-Xm.c (all_dashes_p): Removed.
778 (make_menu_in_widget): Use lw_separator_p. Set Motif separator type.
779
780 * lwlib.c (lw_separator_p): New.
781
782 * lwlib.h (enum menu_separator): New.
783
784 1999-07-12 Gerd Moellmann <gerd@gnu.org>
785
786 * lwlib-Xm.c (make_menu_in_widget): Set alignment of menu
787 title after all widgets have been created.
788
789 1999-07-12 Gerd Moellmann <gerd@gnu.org>
790
791 * xlwmenu.c (toggle_button_width): Renamed from
792 toggle_or_radio_button_width.
793 (radio_button_width): New.
794 (size_menu_item): Use new functions.
795 (draw_shadow_rhombus): New.
796 (draw_radio): Use radio_button_width and draw_shadow_rhombus.
797 (draw_toggle): Use toggle_button_width.
798
799 1999-07-12 Gerd Moellmann <gerd@gnu.org>
800
801 * lwlib-Xm.c (xm_update_toggle): Add callback xm_generic_callback
802 instead of xm_internal_update_other_instances.
803
804 * lwlib-Xm.c (make_menu_in_widget): Do help button before managing
805 children to get it to the right place.
806 (make_menu_in_widget): Create toggle buttons.
807 (update_one_menu_entry): Update toggle buttons.
808
809 * xlwmenu.c (size_menu_item): Add parameter button_width.
810 (size_menu): Compute button_width.
811 (toggle_or_radio_button_width): New.
812 (draw_toggle): New.
813 (draw_radio): New.
814 (draw_shadow_rectangle): Add parameter `down_p'.
815
816 * xlwmenuP.h (_window_state): Add button_width.
817
818 1999-07-12 Gerd Moellmann <gerd@gnu.org>
819
820 * xlwmenu.c (make_shadow_gcs) [emacs]: Use x_alloc_nearest_color.
821
822 * lwlib.c (merge_widget_value): Handle button_type.
823 (copy_widget_value_tree): Copy button_type.
824
825 * lwlib.h (enum button_type): New.
826 (_widget_value): New member button_type.
827
828 1999-07-12 Gerd Moellmann <gerd@gnu.org>
829
830 * lwlib-Xm.c (make_menu_in_widget): Test for menubar widgets
831 using XmNrowColumnType.
832
833 1999-07-12 Gerd Moellmann <gerd@gnu.org>
834
835 * xlwmenu.c (abort_gracefully): New.
836 (display_menu): Use it instead of abort.
837 (size_menu): Ditto.
838
839 1999-07-12 Gerd Moellmann <gerd@gnu.org>
840
841 * xlwmenu.c (xlwMenuResources): Change previously unused
842 XtNmargin to 4.
843 (size_menu): Take margin into account.
844 (display_menu_item): Ditto.
845 (remap_menubar): Ditto.
846 (draw_arrow): Draw it 3D.
847
848 1999-07-12 Richard Stallman <rms@gnu.org>
849
850 * Version 20.4 released.
851
852 1998-08-19 Richard Stallman <rms@psilocin.ai.mit.edu>
853
854 * Version 20.3 released.
855
856 1998-07-30 Paul Eggert <eggert@twinsun.com>
857
858 * lwlib/Makefile.in (lwlib-utils.o, lwlib.o, lwlib-Xlw.o)
859 (lwlib-Xaw.o, lwlib-Xm.o, lwlib-Xol.o, lwlib-Xolmb.o):
860 Add dependencies to corresponding .c files for Solaris 2.x VPATH make.
861
862 1998-04-06 Andreas Schwab <schwab@gnu.org>
863
864 * lwlib.c: Always declare xmalloc.
865 [USE_XAW]: Include <X11/Xaw/Paned.h>.
866 (lwlib_memset, lwlib_bcopy): Explicitly declare return type.
867
868 1997-12-20 Richard Stallman <rms@delysid.gnu.org>
869
870 * lwlib-Xm.c (update_one_menu_entry):
871 Add conditional in case XmNpositionIndex is missing.
872
873 1997-12-20 Richard Stallman <rms@psilocin.gnu.org>
874
875 * lwlib-Xm.c (update_one_menu_entry):
876 Add conditional in case XmNpositionIndex is missing.
877
878 1997-09-19 Richard Stallman <rms@psilocin.gnu.ai.mit.edu>
879
880 * Version 20.2 released.
881
882 * xlwmenu.c (motion_event_is_in_menu): Extend the left and
883 top windows by the shadow width.
884
885 1997-09-15 Richard Stallman <rms@psilocin.gnu.ai.mit.edu>
886
887 * Version 20.1 released.
888
889 1997-07-23 Richard Stallman <rms@psilocin.gnu.ai.mit.edu>
890
891 * xlwmenu.c (display_menu): If an item is disabled,
892 don't display its submenu (if any).
893
894 1997-05-01 Richard Stallman <rms@psilocin.gnu.ai.mit.edu>
895
896 * xlwmenu.c (pop_up_menu): Update the call to x_catch_errors.
897
898 1997-01-21 Richard Stallman <rms@psilocin.gnu.ai.mit.edu>
899
900 * xlwmenu.c (fit_to_screen): If new menu would overlap the previous
901 one from the side, try moving it up or down.
902
903 1996-08-11 Richard Stallman <rms@psilocin.gnu.ai.mit.edu>
904
905 * Version 19.33 released.
906
907 * lwlib-Xm.c (update_one_menu_entry): Fix previous change:
908 When XmIsCascadeButton, don't call XmCreateCascadeButtonGadget,
909 just modify the existing one.
910
911 1996-08-09 Marcus G. Daniels <marcus@sayre.sysc.pdx.edu>
912
913 * lwlib.c (merge_widget_value): Undo previous change.
914
915 * lwlib-Xm.c (update_one_menu_entry): When creating a pulldown
916 in an existing but empty menu item, in order to get a new functional
917 pulldown, the menu item must be switched from an XmPushButtonGadget
918 into a XmCascadeButtonGadget.
919
920 1996-07-31 Richard Stallman <rms@psilocin.gnu.ai.mit.edu>
921
922 * Version 19.32 released.
923
924 1996-07-31 Marcus G. Daniels <marcus@sayre.sysc.pdx.edu>
925
926 * lwlib-Xm.c (make_menubar): Turn off menu accelerator.
927
928 1996-07-24 Marcus G. Daniels <marcus@sayre.sysc.pdx.edu>
929
930 * lwlib.c (merge_widget_value) [USE_MOTIF]: Pass along the change
931 flag from merged_contents.
932
933 1996-07-13 Karl Heuer <kwzh@gnu.ai.mit.edu>
934
935 * lwlib-Xm.c (xm_update_menu): Fix loop termination test.
936
937 1996-07-07 Karl Heuer <kwzh@gnu.ai.mit.edu>
938
939 * lwlib-Xm.h, lwlib-Xm.c, lwlib.h, lwlib.c: Undo previous change.
940
941 1996-07-03 Marcus G. Daniels <marcus@sayre.sysc.pdx.edu>
942
943 * lwlib-Xm.h: Declare lw_motif_menu_related_event_p.
944
945 * lwlib-Xm.c (lw_motif_menu_related_event_p): A predicate to
946 identify keyboard events intended only for menus.
947
948 * lwlib.h: Declare lw_toolkit_related_event_p.
949
950 * lwlib.c (lw_toolkit_related_event_p): A predicate to identify
951 toolkit-specific events.
952
953 1996-06-07 Marcus G. Daniels <marcus@sayre.sysc.pdx.edu>
954
955 * lwlib-Xm.c (make_menu_in_widget): Set mapping delay
956 for cascade buttons to zero.
957
958 1996-05-25 Karl Heuer <kwzh@gnu.ai.mit.edu>
959
960 * Version 19.31 released.
961
962 1996-03-31 Richard Stallman <rms@mole.gnu.ai.mit.edu>
963
964 * lwlib-Xm.c (destroy_all_children): When freeing a cascade button,
965 free its submenu too.
966 (make_menu_in_widget): Use a cascade button gadget, not a widget.
967 Include Xm/CascadeBG.h.
968
969 1996-03-29 Richard Stallman <rms@mole.gnu.ai.mit.edu>
970
971 * Makefile.in (tags): New target.
972
973 1996-03-28 Richard Stallman <rms@mole.gnu.ai.mit.edu>
974
975 * Makefile.in (TAGS): Renamed from `tags' and fixed to work.
976
977 1996-03-26 Richard Stallman <rms@mole.gnu.ai.mit.edu>
978
979 * Makefile.in (xlwmenu.o): New explicit target.
980
981 1996-03-24 Richard Stallman <rms@mole.gnu.ai.mit.edu>
982
983 * lwlib.h (struct widget_value): New field this_one_change.
984 * lwlib.c (merge_widget_value): Set the this_one_change field.
985 * lwlib-Xm.c (destroy_all_children): New arg first_child_to_destroy.
986 (make_menu_in_widget): New arg keep_first_children.
987 (xm_update_menu): Preserve the first children even if later ones
988 have a structural change.
989 (update_one_menu_entry): Use this_one_change field.
990
991 1996-03-01 Richard Stallman <rms@mole.gnu.ai.mit.edu>
992
993 * xlwmenu.c (motion_event_is_in_menu): Make x and y signed.
994
995 1996-02-25 Richard Stallman <rms@mole.gnu.ai.mit.edu>
996
997 * lwlib.c (lw_window_is_in_menubar) [USE_MOTIF]:
998 With Motif, the window WIN can be the menu bar widget itself.
999
1000 1996-02-21 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
1001
1002 * lwlib.c (free_widget_value_tree, merge_widget_value):
1003 Use XtFree for the toolkit_data.
1004
1005 1996-02-19 Karl Heuer <kwzh@gnu.ai.mit.edu>
1006
1007 * lwlib.c (lw_internal_update_other_instances): Move static var
1008 outside the function, and rename it to lwlib_updating.
1009
1010 1996-01-04 Paul Eggert <eggert@twinsun.com>
1011
1012 * lwlib.c (instantiate_widget_instance): Renamed from
1013 instanciate_widget_instance (spelling correction).
1014 All callers changed.
1015
1016 1995-12-31 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1017
1018 * xlwmenu.c (xlwMenuActionsList): Add "key" and "nothing".
1019 (xlwMenuTranslations): Add translations for Key, KeyUp,
1020 and for the modifier keysyms.
1021 (Nothing, Key): New functions.
1022
1023 1995-12-24 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1024
1025 * xlwmenu.c (XlwMenuSetValues): Do redisplay if non-null contents
1026 get replaced by empty contents.
1027
1028 * lwlib.c (merge_widget_value): Treat disappearance of entire contents
1029 as a STRUCTURAL_CHANGE.
1030
1031 1995-12-20 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
1032
1033 * lwlib-utils.c: Add #undef for index and rindex.
1034
1035 1995-11-24 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1036
1037 * Version 19.30 released.
1038
1039 1995-11-13 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1040
1041 * xlwmenu.c (display_menu_item): Fix previous change.
1042
1043 1995-11-04 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
1044
1045 * xlwmenu.c (display_menu_item): Don't treat buttons specially.
1046
1047 1995-08-14 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1048
1049 * Makefile.in (RANLIB): Get this var from configure.
1050
1051 1995-08-02 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1052
1053 * lwlib.c (lw_popup_menu): New arg `event', passed along.
1054 * lwlib-Xlw.c (xlw_popup_menu): New arg `event'.
1055 * lwlib-Xm.c (xm_popup_menu): New arg `event'.
1056
1057 1995-06-19 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1058
1059 * Version 19.29 released.
1060
1061 1995-06-11 Richard Stallman <rms@gnu.ai.mit.edu>
1062
1063 * lwlib.c (lwlib_toolkit_type): New variable.
1064
1065 1995-05-26 Richard Stallman <rms@gnu.ai.mit.edu>
1066
1067 * xlwmenu.c (Drag): Do nothing unless menu.popped_up field is set.
1068
1069 1995-05-22 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
1070
1071 * xlwmenu.c (XlwMenuInitialize): Cast XCreatePixmapFromBitmapData args.
1072
1073 1995-05-20 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
1074
1075 * lwlib.c: Don't use prototype.
1076 * lwlib-Xm.c (activate_button, xm_update_cascadebutton): Likewise.
1077
1078 1995-05-05 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1079
1080 * lwlib.c (lw_refigure_widget) [USE_MOTIF]: Fix backward if.
1081
1082 1995-05-04 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1083
1084 * Makefile.in (ALL_CFLAGS): Add -I../src.
1085
1086 1995-05-03 Morten Welinder <terra+@cs.cmu.edu>
1087
1088 * lwlib.c [__osf__]: Include string.h and stdlib.h.
1089 [__osf__] (xmalloc): Declared.
1090
1091 1995-04-13 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1092
1093 * lwlib-Xm.c (update_one_menu_entry, make_menu_in_widget):
1094 Specify more useful names in XmCreatePulldownMenu calls.
1095
1096 * lwlib-Xaw.c (xaw_pop_instance): Make x, y, w, h unsigned.
1097
1098 * xlwmenu.c (size_menu): Make height and label_width unsigned.
1099 (fit_to_screen): Make screen_width and screen_height unsigned.
1100 (motion_event_is_in_menu): Make x, y unsigned.
1101
1102 1995-04-09 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1103
1104 * lwlib-utils.c: If HAVE_CONFIG_H, include config.h.
1105
1106 * Makefile.in (ALL_CFLAGS): Define HAVE_CONFIG_H.
1107 Add -I${srcdir}/../src.
1108
1109 1995-04-08 Paul Reilly <pmr@geech.gnu.ai.mit.edu>
1110
1111 * lwlib-Xm.c: Remove function prototypes.
1112 (xm_pop_down_callback): Call the deactivation callback only when
1113 popping down the top level submenu.
1114
1115 1995-04-07 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1116
1117 * Makefile.in (lwlib.o): Depend on Makefile.
1118
1119 * lwlib-Xm.h: Remove function prototypes.
1120
1121 * lwlib-Xm.c (remove_grabs): Use type Widget for `menu'.
1122
1123 1995-02-15 Paul Reilly <pmr@geech.gnu.ai.mit.edu>
1124
1125 * Makefile.in (ALL_CFLAGS): Allow include files to be found in
1126 `srcdir'.
1127
1128 1995-02-07 Richard Stallman <rms@pogo.gnu.ai.mit.edu>
1129
1130 * Makefile.in (maintainer-clean): Renamed from realclean.
1131
1132 1994-11-28 Richard Stallman <rms@bethel>
1133
1134 * lwlib-int.h (safe_strdup): Don't use ANSI argument prototype.
1135
1136 1994-11-15 Paul Reilly <pmr@duality.gnu.ai.mit.edu>
1137
1138 * lwlib.c (lw_refigure_widget): Use the macro USE_XAW rather than XAW.
1139
1140 1994-11-08 Paul Reilly <pmr@duality.gnu.ai.mit.edu>
1141
1142 * lwlib-Xm.c (make_menu_in_widget): Differentiate a separator
1143 entry ("--") from a title.
1144 (xm_pop_down_callback): Filter all but the last pop down callbacks.
1145
1146 1994-11-07 Paul Reilly <pmr@duality.gnu.ai.mit.edu>
1147
1148 * lwlib-Xm.c (update_one_menu_entry): Use the parent of the
1149 cascade button as the parent of the pulldown, rather than the
1150 cascade button itself. This works around a Motif SIGSEGV in the
1151 function `InSharedMenuHierarchy'.
1152
1153 1994-10-29 Richard Stallman <rms@duality.gnu.ai.mit.edu>
1154
1155 * xlwmenu.c (xlwmenu_default_font): New global variable.
1156 (XlwMenuInitialize): Use xlwmenu_default_font to default
1157 the font if necessary. Make mw, itself, an argument.
1158
1159 1994-10-26 Richard Stallman <rms@duality.gnu.ai.mit.edu>
1160
1161 * xlwmenu.c (pop_up_menu): Pass a Display * to x_catch_errors, etc.
1162
1163 1994-10-26 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1164
1165 * xlwmenu.c (xlwmenu_default_font): New global variable.
1166 (XlwMenuInitialize): Use xlwmenu_default_font to default
1167 the font if necessary. Make mw, itself, an argument.
1168
1169 * xlwmenu.c (pop_up_menu): Pass a Display * to x_catch_errors, etc.
1170
1171 1994-10-08 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1172
1173 * xlwmenu.c (fit_to_screen): Don't put the menu off the left or top.
1174
1175 1994-10-02 Paul Reilly <pmr@geech.gnu.ai.mit.edu>
1176
1177 * xlwmenu.c (display_menu_item): Add support for displaying the
1178 title in pop up menus.
1179
1180 * lwlib.c (lw_set_main_areas): Use xm_set_main_areas().
1181 (lw_manage_resizing): Use xm_manage_resizing() for Emacs/Motif.
1182
1183 1994-09-25 Paul Reilly <pmr@geech.gnu.ai.mit.edu>
1184
1185 * lwlib-Xaw.c (xaw_create_main): New function to support the
1186 toolkit independent creation of the main Emacs widget. *
1187 lwlib-Xlw.c (xlw_create_menubar): When compiling under Emacs, set
1188 resizing resources to disable showGrip and to enable both
1189 resizeToPreferred and allowShellResize.
1190
1191 * lwlib-Xm.h: Declare xm_set_main_areas, xm_manage_resizing.
1192
1193 * lwlib-Xm.c (make_menu_in_widget): Add support for displaying a
1194 title in pop up menus.
1195 (make_main, xm_set_main_areas, xm_manage_resizing): New functions to
1196 create and manage a Motif Main Window widget.
1197
1198 * xlwmenu.c: Add #include <X11/ObjectP.h> for X11R4.
1199
1200 1994-09-18 Frederic Pierresteguy <F.Pierresteguy@frcl.bull.fr>
1201
1202 * lwlib-Xm.c (make_dialog): When there is more than two pushbuttons,
1203 set XmPACK_TIGHT and XmHORIZONTAL to the rowcolumn. Also add a
1204 margin of 10 pixels.
1205
1206 1994-09-16 Paul Reilly <pmr@geech.gnu.ai.mit.edu>
1207
1208 * lwlib-Xm.c (make_main): New function to support toolkit
1209 independent creation of the main Emacs widget.
1210 (make_destroyed_instance): Use safe_strdup() instead of strdup().
1211
1212 * lwlib-int.h: Declare safe_strdup.
1213
1214 * lwlib.c (lw_refigure_widget): New function. Handle geometry
1215 management inside lwlib instead of in Emacs.
1216 (lw_window_is_in_menubar): New function. Determine if the pointer
1217 is in a menubar.
1218 (lw_set_main_areas): New function. Set the main window widgets for
1219 Motif.
1220
1221 * lwlib.h: Declare lw_refigure_widget(), lw_window_is_in_menubar(),
1222 lw_set_main_areas().
1223
1224 * xlwmenu.h: Define Xt{Ns,CS}howGrip, Xt{Nr,CR}esizeToPreferred, and
1225 Xt{Na,CA}llowResize.
1226
1227 * xlwmenu.c (Start): Use pop_up_menu() to post the submenus.
1228 (Select): Remove the pointer grab when popping down a menubar submenu.
1229 (pop_up_menu): Handle popping up submenus from a menubar, i.e. when
1230 the menu widget parent is not a shell widget.
1231
1232 1994-08-25 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1233
1234 * xlwmenu.c (pop_up_menu): Clear next_release_must_exit.
1235 (Start): Clear next_release_must_exit when popping up the menu.
1236
1237 1994-08-24 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1238
1239 * xlwmenu.c (Start): Set menu_post_event or next_release_must_exit.
1240 (Select): Do nothing if the menu should be left posted.
1241
1242 1994-07-28 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1243
1244 * xlwmenu.c (make_windows_if_needed, pop_up_menu):
1245 Enable mouse motion events even when no button down.
1246
1247 1994-07-11 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1248
1249 * xlwmenu.c (pointer_grabbed): New variable.
1250 (pop_up_menu): Set the variable.
1251 (XlwMenuDestroy): Maybe call XtUngrabPointer.
1252
1253 1994-05-25 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1254
1255 * lwlib.c (max): Function deleted. Define as macro instead,
1256 but only if not already defined.
1257
1258 1994-05-20 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1259
1260 * xlwmenu.c (xlwMenuResources): Use XtRDimension for shadow thickness.
1261
1262 1994-05-19 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1263
1264 * lwlib-Xaw.c (xaw_pop_instance): Use XtSetValues, not XtMoveWidget.
1265
1266 1994-05-16 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1267
1268 * lwlib.c (lwlib_memset: New function, used instead of memset.
1269 All callers changed.
1270 * lwlib.c (lwlib_bcopy): New function.
1271 * lwlib-utils.c (XtApplyToWidgets): Use lwlib_bcopy.
1272
1273 * lwlib.c: Delete definitions for use of alloca.
1274 (name_to_widget): Use xmalloc, not alloca.
1275
1276 1994-05-12 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1277
1278 * xlwmenu.c (XlwMenuDestroy): Set new var submenu_destroyed.
1279 (XlwMenuRedisplay): If it's set, truncate the old_depth to 1.
1280
1281 1994-05-09 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1282
1283 * xrdb-cpp.c: Don't include string.h, unistd.h, stdlib.h.
1284 * lwlib-Xaw.c: Don't include string.h, unistd.h, stdlib.h.
1285 * lwlib-utils.c (XtApplyToWidgets): Use bcopy, not memcpy.
1286 * lwlib-utils.c: Don't include string.h, unistd.h, stdlib.h, memory.h.
1287 * xlwmenu.c: Don't include string.h, unistd.h, stdlib.h.
1288 * lwlib.c: Don't include string.h, unistd.h, stdlib.h.
1289 (safe_strdup): No longer static.
1290 * lwlib-Xm.c: Use safe_strdup, not strdup.
1291
1292 * xlwmenu.c (string_width): No longer static.
1293
1294 1994-05-06 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1295
1296 * xlwmenuP.h (struct _XlwMenu_part): Use Pixel and Cursor
1297 for foreground and cursor_shape fields.
1298
1299 * xlwmenu.c (XlwMenuSetValues): Check for change of font.
1300
1301 1994-04-28 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1302
1303 * Makefile.in: Delete all SRCS variables (unused).
1304 (lwlib.o, xrdb-cpp.o): Mention srcdir in dep.
1305
1306 1994-04-15 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1307
1308 * Makefile.in (ALL_CFLAGS): Don't define THIS_IS_X11R4.
1309
1310 * xrdb.c: Define HAVE_X11R5 as in xterm.h.
1311 Include X11/Xlib.h, X11/cursorfont.h and X11/Xutil.h.
1312 (_XtDisplayInitialize): Test HAVE_X11R5.
1313
1314 * dispatch.c: Define HAVE_X11R5 as in xterm.h.
1315 Include X11/Xlib.h, X11/cursorfont.h and X11/Xutil.h.
1316 (_XtConvertTypeToMask): Conditionalize on HAVE_X11R5.
1317 (WouldDispatchEvent): Likewise.
1318
1319 1994-04-12 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1320
1321 * lwlib-Xaw.c (xaw_generic_callback): Declare without arg names.
1322
1323 1994-04-01 Frederic Pierresteguy (fp@hal.gnu.ai.mit.edu)
1324
1325 * lwlib-Xaw.c (make_dialog): Don't allow any geometry request from the
1326 user.
1327
1328 1994-03-22 Frederic Pierresteguy (fp@mole.gnu.ai.mit.edu)
1329
1330 * xlwmenu.c (XlwMenuResize): Don't allow the popup menu to resize
1331 itself. Therefore reset the size to its initial value.
1332
1333 1994-03-19 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1334
1335 * lwlib-Xaw.c (xaw_update_one_widget): Finish replacing XtVaSetValues.
1336 Don't test for scrollbar widget.
1337
1338 1994-03-14 Frederic Pierresteguy (fp@gnu.ai.mit.edu)
1339
1340 * lwlib-int.h: Declare lw_get_widget_info.
1341
1342 * lwlib.c (lw_get_widget_info): Comment out arg in function decl.
1343
1344 * lwlib-Xaw.h: Comment out args in function decls.
1345 * lwlib-Xaw.c: Convert all function definitions to non-prototype K&R.
1346 (xaw_update_one_widget - case dialogWidgetClass): Call XtSetValues,
1347 not XtVaSetValues.
1348
1349 1994-03-11 Frederic Pierresteguy (F.Pierresteguy@frcl.bull.fr)
1350
1351 * xlwmenu.c (display_menu_item): Modify parameters to draw_arrow to
1352 right justify the arrow in the pane.
1353
1354 * lwlib.c: If not defined USE_MOTIF and defined USE_LUCID then
1355 define USE_XAW.
1356
1357 * Makefile.in (LUCID_SRCS, LUCID_OBJS): Add the target lwlib-Xaw.[oc].
1358
1359 * lwlib.c, lwlib-int.h: Merged from Lucid 19.9 release.
1360 * lwlib.c (_AIX): Replace the AIXV3 directive.
1361 (USE_XAW): New macro to conditionalize the use of the athena toolkit.
1362 (lw_get_widget_info): New function.
1363 (set_one_value): Handle USE_XAW.
1364 (instanciate_widget_instance): Likewise.
1365 (destroy_one_instance): Likewise.
1366 (lw_pop_all_widgets): Likewise.
1367 (lw_pop_down_all_widgets): Likewise.
1368 (get_one_value): Likewise.
1369
1370 * lwlib-Xaw.c, lwlib-Xaw.h: New files.
1371
1372 1994-02-23 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1373
1374 * xlwmenu.c (XlwMenuInitialize, XlwMenuDestroy): Undo previous changes.
1375
1376 * lwlib-Xlw.c (xlw_create_menubar, xlw_create_popup_menu):
1377 Use XtCreate..., not XtVaCreate...
1378 No need to copy instance->info->val any more.
1379 (xlw_update_one_widget): Use XtSetValues, not XtVaSetValues.
1380
1381 1994-02-21 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1382
1383 * xlwmenu.c (pop_up_menu): Call XtUngrabPointer if XtGrabPointer fails.
1384
1385 1994-02-19 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1386
1387 * Makefile.in (xrdb-cpp.o, lwlib.o): Put ALL_CFLAGS after other flags.
1388
1389 * lwlib-Xlw.c (xlw_create_menubar): Don't call free_widget_value.
1390 Use malloc for allocation.
1391 (xlw_create_popup_menu): Likewise.
1392
1393 1994-02-18 Frederic Pierresteguy (fp@mole.gnu.ai.mit.edu)
1394
1395 * lwlib.c (malloc_cpt): New static variable.
1396 (malloc_widget_value): Increment malloc_cpt when allocating a cell.
1397 (free_widget_value): Really free the cells when the number of
1398 allocated ones is bigger than 25.
1399
1400 * lwlib-Xlw.c (xlw_create_menubar): Call malloc_widget_value and
1401 free_widget_value instead of XtMalloc and XtFree.
1402 (xlw_create_popup_menu): Likewise.
1403
1404 1994-02-17 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1405
1406 * Makefile.in (ALL_CFLAGS): Specify -Demacs.
1407
1408 * xlwmenu.c (pop_up_menu) [emacs]: Catch and ignore X protocol errors
1409 in XtGrabPointer.
1410
1411 1994-02-17 Frederic Pierresteguy (fp@mole.gnu.ai.mit.edu)
1412
1413 * lwlib-Xlw.c (xlw_create_popup_menu): Pass tem to
1414 XtVaCreateManagedWidget, not instance->info->val.
1415 (xlw_create_menubar): Likewise.
1416
1417 1994-02-15 Frederic Pierresteguy (fp@mole.gnu.ai.mit.edu)
1418
1419 * lwlib-Xlw.c (xlw_create_popup_menu): Copy instance->info->val
1420 before calling XtVaCreateManagedWidget and then free the copy.
1421 (xlw_create_menubar): Likewise.
1422
1423 1994-02-11 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1424
1425 * xlwmenu.c (XlwMenuInitialize): Copy mw->menu.contents.
1426 (XlwMenuDestroy): Free mw->menu.contents.
1427
1428 1994-02-09 Frederic Pierresteguy (fp@mole.gnu.ai.mit.edu)
1429
1430 * xlwmenu.c (display_menu_item): Call draw_shadow_rectangle to make
1431 visible/invisible the selection of the menubar items.
1432
1433 1994-02-08 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
1434
1435 * lwlib.c (strcasecmp): Renamed to my_strcasecmp.
1436 (find_in_table): Changed only caller.
1437
1438 1994-02-04 Frederic Pierresteguy (fp@mole.gnu.ai.mit.edu)
1439
1440 * xlwmenu.c (display_menu_item): When dealing with the menubar,
1441 always call XDrawRectangle to clear the selection after popping down
1442 the pulldown menu.
1443
1444 1994-02-01 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1445
1446 * lwlib.c: Include ctype.h.
1447
1448 1994-01-31 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1449
1450 * lwlib.c (strcasecmp): New function.
1451
1452 1994-01-30 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1453
1454 * xlwmenu.c, lwlib.c, lwlib-Xlw.c, lwlib-utils.c:
1455 Convert all function definitions to non-prototype K&R.
1456
1457 * lwlib-Xlw.h: Comment out args in function decls.
1458 * lwlib.h: Comment out args in function decls.
1459 * lwlib-utils.h: Comment out args in function decls.
1460
1461 1994-01-29 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1462
1463 * lwlib.c: Include StringDefs.h after lwlib.h.
1464
1465 1994-01-22 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
1466
1467 * Makefile (xrdb-cpp.o, lwlib.o): Use $(srcdir) and file name
1468 instead of $*.
1469 (dispatch.o, xrdb.o, lwlib-Xm.o): Rules removed; they were
1470 superfluous and didn't work when configured outside srcdir.
1471 The implicit .c.o rule works fine.
1472
1473 1994-01-21 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1474
1475 * xlwmenu.c (resource_widget_value): Avoid using strdup.
1476
1477 1994-01-18 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1478
1479 * Makefile.in: New file.
1480
1481 * lwlib-Xolmb.c: Renamed from lwlib-Xol-mb.c.
1482 * lwlib-Xolmb.h: Renamed from lwlib-Xol-mb.h.
1483 * lwlib-XolmbP.h: Renamed from lwlib-Xol-mbP.h.
1484
1485 * lwlib-int.h: Renamed from lwlib-internal.h.
1486
1487
1488
1489 ;; Local Variables:
1490 ;; coding: utf-8
1491 ;; add-log-time-zone-rule: t
1492 ;; End:
1493
1494 Copyright (C) 1995, 1996, 1997, 1998, 1999, 2001, 2002, 2003, 2004,
1495 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
1496
1497 This file is part of GNU Emacs.
1498
1499 GNU Emacs is free software: you can redistribute it and/or modify
1500 it under the terms of the GNU General Public License as published by
1501 the Free Software Foundation, either version 3 of the License, or
1502 (at your option) any later version.
1503
1504 GNU Emacs is distributed in the hope that it will be useful,
1505 but WITHOUT ANY WARRANTY; without even the implied warranty of
1506 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1507 GNU General Public License for more details.
1508
1509 You should have received a copy of the GNU General Public License
1510 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
1511
1512 ;;; arch-tag: 0cd8ab87-d764-40d9-b86d-d00c71887a9e