]> code.delx.au - gnu-emacs/blob - lwlib/ChangeLog
* xlwmenu.c (remap_menubar): Re-realize menu to force move under Gnome 3.
[gnu-emacs] / lwlib / ChangeLog
1 2015-02-28 Jan Djärv <jan.h.d@swipnet.se>
2
3 * xlwmenu.c (remap_menubar): Re-realize menu to force move under
4 Gnome 3.
5
6 2015-01-04 Paul Eggert <eggert@cs.ucla.edu>
7
8 Less 'make' chatter for lwlib
9 * Makefile.in (AM_V_GEN, am__v_GEN_, am__v_GEN_0, am__v_GEN_1)
10 (AM_V_at, am__v_at_, am__v_at_0, am__v_at_1): New macros.
11 (liblw.a): Use them.
12
13 2014-12-25 Paul Eggert <eggert@cs.ucla.edu>
14
15 * xlwmenu.c (resource_widget_value):
16 Rewrite to avoid the need for strcat, typically by using stpcpy
17 and/or lispstpcpy. strcat tends to be part of O(N**2) algorithms.
18
19 2014-10-20 Glenn Morris <rgm@gnu.org>
20
21 * Merge in all changes up to 24.4 release.
22
23 2014-09-01 Paul Eggert <eggert@cs.ucla.edu>
24
25 --enable-silent-rules now suppresses more chatter.
26 * Makefile.in (AM_DEFAULT_VERBOSITY, AM_V_CC, am__v_CC_)
27 (am__v_CC_0, am__v_CC_1): New macros, taken from Automake.
28 (.c.o): Use them.
29
30 2014-07-15 Dmitry Antipov <dmantipov@yandex.ru>
31
32 * lwlib.h (toplevel): Use unsigned int for LWLIB_ID.
33
34 2014-06-28 Glenn Morris <rgm@gnu.org>
35
36 * Makefile.in: Use gcc auto-dependency information.
37 Move old dependency information to new file deps.mk.
38 (MKDIR_P, DEPFLAGS, MKDEPDIR, lwlib_deps_frag):
39 New, set by configure.
40 (DEPDIR): New variable.
41 (ALL_CFLAGS): Add DEPFLAGS.
42 (.c.o): Add MKDEPDIR.
43 (clean, mostlyclean): Delete DEPDIR.
44 * deps.mk, autodeps.mk: New files.
45
46 2014-06-17 Paul Eggert <eggert@cs.ucla.edu>
47
48 Omit redundant extern decls.
49 From Dmitry Antipov.
50 * lwlib-Xm.c (lw_motif_widget_p, xm_update_one_value)
51 (xm_create_dialog, xm_destroy_instance, xm_popup_menu)
52 (xm_set_keyboard_focus, xm_set_main_areas): Remove decls.
53
54 2014-06-15 Glenn Morris <rgm@gnu.org>
55
56 * Makefile.in ($(globals_h)): Use `make -C' rather than `cd && make'.
57
58 * Makefile.in (mostlyclean, clean, distclean, maintainer-clean):
59 Declare as PHONY.
60 (bootstrap-clean): New.
61
62 2014-06-13 Glenn Morris <rgm@gnu.org>
63
64 * Makefile.in ($(globals_h)):
65 GNU make automatically passes command-line arguments to sub-makes.
66
67 2014-06-04 Dmitry Antipov <dmantipov@yandex.ru>
68
69 * lwlib-widget.h (widget_value) [USE_X_TOOLKIT]: Use X toolkit
70 fields conditionally.
71
72 2014-06-03 Paul Eggert <eggert@cs.ucla.edu>
73
74 Do not require libXt-devel when building with gtk.
75 * lwlib-widget.h: New file, with contents taken from lwlib.h.
76 (widget_value) [HAVE_NTGUI]: New member 'title'.
77 * lwlib.h: Include lwlib-widget.h.
78 (change_type, enum button_type, widget_value):
79 Move to lwlib-widget.h.
80
81 2014-06-03 Dmitry Antipov <dmantipov@yandex.ru>
82
83 * xlwmenu.c (openXftFont): Do not load regular X font here.
84 (XlwMenuInitialize): Remove ancient #if 0 code.
85 (XlwMenuDestroy): Likewise. Free regular X font here.
86
87 2014-06-02 Dmitry Antipov <dmantipov@yandex.ru>
88
89 Use common memory management functions for widgets.
90 * lwlib.h (widget_value): Do not maintain a free list any more.
91 (malloc_widget_value, free_widget_value): Remove prototypes.
92 * lwlib.c (malloc_widget_value, free_widget_value):
93 (widget_value_free_list, malloc_cpt): Remove.
94 (free_widget_value_tree, copy_widget_value_tree): Adjust users.
95
96 2014-05-30 Dmitry Antipov <dmantipov@yandex.ru>
97
98 Use common string allocation and freeing functions where applicable.
99 * lwlib.h (safe_strdup): Remove prototype.
100 * lwlib.c (safe_strdup, safe_free_str): Remove.
101 (copy_widget_value_tree, allocate_widget_info, free_widget_info):
102 (merge_widget_value): Prefer xstrdup, xfree and dupstring.
103 * lwlib-Xm.c (make_destroyed_instance, xm_update_one_value): Ditto.
104
105 2013-12-14 Paul Eggert <eggert@cs.ucla.edu>
106
107 Use bool for boolean, focusing on headers.
108 * xlwmenuP.h (XlwMenu_part): Use bool_bf for boolean bit-fields.
109
110 2013-11-14 Paul Eggert <eggert@cs.ucla.edu>
111
112 * lwlib.c (safe_strdup): Prefer tail calls.
113
114 2013-11-02 Glenn Morris <rgm@gnu.org>
115
116 Use relative filenames in TAGS files.
117 * Makefile.in (abs_srcdir): Remove it again.
118 (ctagsfiles, TAGS): Use relative filenames.
119
120 * Makefile.in (abs_srcdir): New, set by configure.
121 (ETAGS, ctagsfiles): New variables.
122 (TAGS): Use ETAGS, ctagsfiles. Use absolute filenames again.
123
124 2013-10-24 Glenn Morris <rgm@gnu.org>
125
126 * Makefile.in (abs_top_srcdir): New, set by configure.
127
128 2013-09-04 Paul Eggert <eggert@cs.ucla.edu>
129
130 Makefile improvements.
131 * Makefile.in (all): Put this first. Don't use double-colon
132 rules, as they are not portable according to POSIX. Mark as phony.
133
134 2013-06-30 Paul Eggert <eggert@cs.ucla.edu>
135
136 Fix minor problems found by static checking.
137 * lwlib-Xaw.h (xaw_update_one_value, xaw_popup_menu):
138 * lwlib-Xlw.h (xlw_update_one_value, xlw_pop_instance):
139 * lwlib.h (lw_allow_resizing, lw_set_main_areas) [!USE_MOTIF]:
140 Now const.
141
142 2012-10-06 Ulrich Müller <ulm@gentoo.org>
143
144 * Makefile.in (AR, ARFLAGS): Get values from configure.
145
146 2012-08-16 Paul Eggert <eggert@cs.ucla.edu>
147
148 Use ASCII tests for character types.
149 * lwlib-Xaw.c, lwlib.c, xlwmenu.c:
150 Don't include <ctype.h>; no longer needed.
151 * lwlib-Xaw.c (openFont):
152 * xlwmenu.c (openXftFont): Test just for ASCII digits.
153
154 2012-08-01 Glenn Morris <rgm@gnu.org>
155
156 * Makefile.in (config_h): Add conf_post.h.
157
158 2012-07-31 Dmitry Antipov <dmantipov@yandex.ru>
159
160 Avoid unused variable warning if --with-x-toolkit=motif.
161 * lwlib-Xm.c (make_menu_in_widget): Remove unused variable.
162
163 2012-07-06 Paul Eggert <eggert@cs.ucla.edu>
164
165 Use c_strcasecmp for ASCII case-insensitive comparison (Bug#11786).
166 * lwlib.c: Include c-strcase.h.
167 (lwlib_strcasecmp): Remove. All uses replaced with c_strcasecmp.
168
169 2012-06-26 Paul Eggert <eggert@cs.ucla.edu>
170
171 Clean out last vestiges of the old HAVE_CONFIG_H stuff.
172 * Makefile.in (ALL_CFLAGS): Remove -DHAVE_CONFIG_H.
173 * lwlib-Xaw.c, lwlib-Xlw.c, lwlib-Xm.c, lwlib-utils.c, lwlib.c:
174 * xlwmenu.c: Include <config.h> unconditionally.
175
176 2012-06-25 Dmitry Antipov <dmantipov@yandex.ru>
177
178 * lwlib.c (my_strcasecmp): Rename to lwlib_strcasecmp, which
179 may be defined to library function strcasecmp if available.
180
181 2012-06-24 Paul Eggert <eggert@cs.ucla.edu>
182
183 Switch from NO_RETURN to C11's _Noreturn (Bug#11750).
184 * xlwmenu.c (abort_gracefully):
185 Use _Noreturn rather than NO_RETURN.
186 No need for separate decl merely because of _Noreturn.
187
188 2012-05-31 Paul Eggert <eggert@cs.ucla.edu>
189
190 Remove obsolete '#define static' cruft.
191 * xlwmenu.c [emacs]: Include "bitmaps/gray.xbm".
192 (gray_bitmap_width, gray_bitmap_height, gray_bitmap_bits) [!emacs]:
193 Remove; all uses replaced with definiens.
194
195 2012-04-18 Paul Eggert <eggert@cs.ucla.edu>
196
197 configure: new option --enable-gcc-warnings (Bug#11207)
198 * Makefile.in (C_WARNINGS_SWITCH): Remove.
199 (WARN_CFLAGS, WERROR_CFLAGS): New macros.
200 (ALL_CFLAGS): Use new macros rather than old.
201
202 2012-04-11 Glenn Morris <rgm@gnu.org>
203
204 * Makefile.in (C_SWITCH_X_SYSTEM): Remove.
205 (ALL_CFLAGS): Remove C_SWITCH_X_SYSTEM.
206
207 2011-10-13 Dmitry Antipov <dmantipov@yandex.ru>
208
209 * lwlib-Xaw.c (openFont, xaw_destroy_instance): Replace free with
210 xfree to avoid crash when xmalloc overrun checking is enabled.
211 * lwlib-Xm.c (free_destroyed_instance, xm_update_one_value): Ditto.
212 * lwlib-utils.c (XtApplyToWidgets): Ditto.
213 * lwlib.c (safe_free_str, free_widget_value, free_widget_value_tree)
214 (free_widget_info, free_widget_instance, name_to_widget): Ditto.
215 * xlwmenu.c (openXftFont): Ditto.
216
217 2011-06-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
218
219 * Makefile.in (ALL_CFLAGS): Add -I../lib for generated header files
220 in out-of-tree build.
221
222 2011-06-06 Paul Eggert <eggert@cs.ucla.edu>
223
224 * Makefile.in (ALL_CFLAGS): Add -I$(srcdir)/../lib.
225 This is needed because lisp.h includes intprops.h now (Bug#8794).
226
227 2011-04-16 Paul Eggert <eggert@cs.ucla.edu>
228
229 Static checks with GCC 4.6.0 and non-default toolkits.
230
231 * lwlib-Xm.c (make_dialog): Rename local to avoid shadowing.
232 (make_menu_in_widget): Add cast to avoid warning.
233 * lwlib-utils.c (XtCompositeChildren): Likewise.
234
235 * lwlib.c (EXPLAIN, destroy_one_instance): Avoid "else;".
236 (first_child) [USE_MOTIF]: Protoize.
237
238 * lwlib-utils.h, lwlib-utils.c (XtSafelyDestroyWidget): Remove; unused.
239
240 * xlwmenu.c (XlwMenuSetValues): Rename/ move locals to avoid shadowing.
241 (MINL): Define only if not emacs.
242
243 2011-03-07 Chong Yidong <cyd@stupidchicken.com>
244
245 * Version 23.3 released.
246
247 2011-02-14 Jan Djärv <jan.h.d@swipnet.se>
248
249 * xlwmenu.h: Remove Xt[CN]faceName and Xt[NC]defaultFace.
250
251 * xlwmenuP.h (_XlwMenu_part): Remove faceName. Add fontName.
252
253 * xlwmenu.c (xlwmenu_default_font): Remove, does not work for
254 multi-display.
255 (xlwMenuResources): Remove XtNfaceName and XtNdefaultFace.
256 Make XtNFont a String resource.
257 (make_windows_if_needed): Call XFlush so later changes are seen by the
258 X server.
259 (remap_menubar): Use XtMoveWidget and then
260 XtResizeWidget/XtResizeWindow after XtPopup. Works better with
261 Compiz.
262 (make_drawing_gcs): Check if mw->menu.font is set.
263 (getDefaultXftFont): New function.
264 (openXftFont): faceName is now fontName. Try XLoadQueryFont first
265 and then XftFontOpenName.
266 (XlwMenuInitialize): Initialize mw->menu.font with XLoadQueryFont.
267 (XlwMenuClassInitialize): Remove initialization of
268 xlwmenu_default_font.
269 (fontname_changed): Renamed from facename_changed.
270 (XlwMenuSetValues): Use facename_changed.
271
272 * lwlib-Xaw.c (make_dialog): Use *font even for Xft fonts. Try
273 XLoadQueryFont first and then Xft fonts.
274
275 2011-02-13 Glenn Morris <rgm@gnu.org>
276
277 * lwlib-utils.c (index, rindex): Don't undef (neither used in lwlib/,
278 nor set in config.h).
279
280 2011-02-11 Glenn Morris <rgm@gnu.org>
281
282 * Makefile.in (USE_X_TOOLKIT, RM, TOOLKIT_DEFINES): Remove.
283 (ALL_CFLAGS): Remove -I.
284 (config_h, lisp_h, src_h): New variables.
285 (globals_h): Rename from $globals.
286 ($(globals_h)): Check cd exit status.
287 (lwlib.o): Remove special rule.
288 (lwlib-utils.o, lwlib.o, lwlib-Xlw.o, lwlib-Xaw.o, lwlib-Xm.o)
289 (xlwmenu.o): Add lisp.h and config.h to prereqs.
290 (lwlib-utils.o): Add lwlib.h to prereqs.
291 (lwlib.o): Add lwlib-utils.h and lwlib-Xm.h to prereqs.
292 (lwlib-Xlw.o): Add xlwmenu.h to prereqs.
293 (xlwmenu.o): Add ../src/xterm.h to prereqs.
294 (mostlyclean): Forget about "core" files.
295
296 2011-02-10 Glenn Morris <rgm@gnu.org>
297
298 * lwlib-Xaw.c, lwlib-Xlw.c, lwlib-Xm.c, lwlib-utils.c, lwlib.c:
299 * xlwmenu.c: Standardize on <> for includes from the ../src directory.
300
301 2011-02-09 Glenn Morris <rgm@gnu.org>
302
303 * Makefile.in (@SET_MAKE@): New, set by configure.
304 (globals): New variable and rule.
305 (lwlib-utils.o, lwlib.o, lwlib-Xlw.o, lwlib-Xaw.o, lwlib-Xm.o)
306 (xlwmenu.o): Add dependency on src/globals.h.
307
308 2011-01-31 Jan Djärv <jan.h.d@swipnet.se>
309
310 * lwlib-Xm.c (make_destroyed_instance):
311 * lwlib-utils.c (XtApplyToWidgets):
312 * lwlib.c (safe_strdup, malloc_widget_value)
313 (allocate_widget_info, allocate_widget_instance): Use xmalloc
314 instead of malloc.
315
316 2011-01-25 Werner Meisner <weme24@gmx.net>
317
318 * lwlib-Xm.c (xm_update_menu): Avoid a NULL pointer dereference
319 (Bug#7690).
320
321 2010-09-26 Dan Nicolaescu <dann@ics.uci.edu>
322
323 Use const for some pointer arguments.
324 * lwlib.h (my_strcasecmp, safe_strcmp, name_to_widget)
325 (find_in_table, dialog_spec_p, lw_separator_p):
326 * lwlib.c (my_strcasecmp, safe_strcmp, name_to_widget)
327 (find_in_table, dialog_spec_p, lw_separator_p): Use const.
328
329 2010-09-20 Dan Nicolaescu <dann@ics.uci.edu>
330
331 * lwlib.h (lw_register_widget, lw_create_widget):
332 * lwlib.c (allocate_widget_info, lw_register_widget)
333 (lw_create_widget, separator_table): Use const.
334
335 2010-07-29 Dan Nicolaescu <dann@ics.uci.edu>
336
337 * xlwmenu.c (abort_gracefully): Mark as NO_RETURN.
338
339 2010-07-26 Dan Nicolaescu <dann@ics.uci.edu>
340
341 * xlwmenu.h (xlwmenu_window_p, xlwmenu_redisplay): Add declarations.
342
343 2010-07-12 Andreas Schwab <schwab@linux-m68k.org>
344
345 * Makefile.in (C_WARNINGS_SWITCH, PROFILING_CFLAGS): Set from
346 substitution.
347 (ALL_CFLAGS): Add ${C_WARNINGS_SWITCH} and ${PROFILING_CFLAGS}.
348
349 2010-07-08 Jan Djärv <jan.h.d@swipnet.se>
350
351 * xlwmenu.c (size_menu_item): Change from K&R to prototype.
352 Change label_width and height to int.
353 (draw_arrow, draw_shadow_rectangle, draw_shadow_rhombus)
354 (draw_separator, display_menu, fit_to_screen, motion_event_is_in_menu)
355 (map_event_to_widget_value): Reformat.
356 (display_menu_item): Change from K&R to prototype.
357
358 * lwlib.c (allocate_widget_info, lw_register_widget): Change from K&R
359 to prototype.
360 (lw_internal_update_other_instances, merge_widget_value): Reformat.
361
362 * lwlib-int.h (widget_creation_function): Fix prototype.
363
364 * lwlib-Xm.c (x_print_complete_resource_name)
365 (make_destroyed_instance, free_destroyed_instance, first_child)
366 (lw_motif_widget_p, resource_motif_string, destroy_all_children)
367 (xm_arm_callback, xm_update_label, xm_update_list)
368 (xm_update_pushbutton, xm_update_cascadebutton)
369 (xm_update_toggle, xm_update_radiobox, make_menu_in_widget)
370 (update_one_menu_entry, xm_update_menu, xm_update_text)
371 (xm_update_text_field, xm_update_one_widget)
372 (xm_update_one_value, activate_button, dialog_key_cb)
373 (make_dialog, mark_dead_instance_destroyed)
374 (find_matching_instance, recenter_widget, recycle_instance)
375 (xm_create_dialog, make_menubar, remove_grabs, make_popup_menu)
376 (make_main, xm_destroy_instance, xm_popup_menu)
377 (set_min_dialog_size, xm_pop_instance, do_call)
378 (xm_internal_update_other_instances, xm_generic_callback)
379 (xm_nosel_callback, xm_pull_down_callback, xm_pop_down_callback)
380 (xm_set_keyboard_focus, xm_set_main_areas, xm_manage_resizing): Change
381 from K&R to prototype.
382
383 * lwlib-Xlw.c (x_print_complete_resource_name): Change from K&R to
384 prototype.
385 (xlw_update_one_value): Reformat.
386
387 * lwlib-Xaw.c (xaw_generic_callback, command_reset)
388 (xaw_update_one_value): Reformat.
389 (xaw_update_one_widget): Reformat and remove dead code.
390 (xaw_scrollbar_scroll, xaw_scrollbar_jump, xaw_create_scrollbar)
391 (xaw_update_scrollbar): Remove (not used).
392 (make_dialog): Change from K&R to prototype. Remove dead code.
393 (xaw_creation_table): Remove scrollbar entry.
394
395 2010-07-08 Dan Nicolaescu <dann@ics.uci.edu>
396
397 * lwlib.c (allocate_widget_instance, get_widget_info)
398 (get_widget_instance, find_instance, set_one_value)
399 (update_one_widget_instance, update_all_widget_values)
400 (lw_modify_all_widgets, lw_get_widget, lw_make_widget)
401 (lw_create_widget, lw_pop_all_widgets, lw_show_busy)
402 (lw_refigure_widget, lw_allow_resizing): Remove alternative K&R
403 declarations.
404 * lwlib-Xlw.c (xlw_update_one_widget, xlw_pop_instance): Likewise.
405 * lwlib-Xaw.c (xaw_update_one_widget, xaw_pop_instance):
406 Likewise.
407 * lwlib-Xm.c (P_): Remove.
408
409 2010-07-07 Andreas Schwab <schwab@linux-m68k.org>
410
411 * lwlib.c (lwlib_memset, lwlib_bcopy): Remove.
412 (malloc_widget_value, free_widget_info, allocate_widget_instance)
413 (lw_separator_p): Replace lwlib_memset, lwlib_bcopy, bzero, bcmp by
414 memset, memcpy, memcmp.
415 * lwlib-utils.c (XtApplyToWidgets): Likewise.
416 * xlwmenu.c (XlwMenuInitialize): Likewise.
417 * lwlib.h (lwlib_bcopy): Remove declaration.
418
419 2010-07-05 Jan Djärv <jan.h.d@swipnet.se>
420
421 * xlwmenu.c (XlwMenuSetValues, XlwMenuInitialize): Correct prototype.
422 (display_menu_item): Remove unused variable gi.
423 (make_windows_if_needed): Remove unused variable screen.
424 (XlwMenuRedisplay): Remove unused variable i.
425
426 * lwlib-Xaw.c: Include <ctype.h> for isdigit.
427 (fill_xft_data, set_text): Remove unused variable screen.
428 (draw_text): Cast bp to FcChar8*.
429 (find_xft_data): Return 0 if inst or xft_data is not set.
430 (wm_delete_window): Correct prototype. Initialize widget to 0
431 and return if widget is still 0 after loop.
432
433 2010-07-04 Dan Nicolaescu <dann@ics.uci.edu>
434
435 * lwlib-Xaw.c: Convert function definitions to standard C.
436 * lwlib-Xlw.c:
437 * lwlib-utils.c:
438 * lwlib.c:
439 * lwlib.h:
440 * xlwmenu.c: Likewise.
441
442 2010-07-02 Jan Djärv <jan.h.d@swipnet.se>
443
444 * lwlib-Xm.c: Remove __P and P_ from .c and .m files.
445 * lwlib-Xm.c:
446 * lwlib.c:
447 * xlwmenu.c: Likewise.
448
449 Remove P_ and __P macros.
450 * lwlib-Xaw.h: Remove P_ and __P macros.
451 * lwlib-Xlw.h:
452 * lwlib-Xm.h:
453 * lwlib-int.h:
454 * lwlib-utils.h:
455 * lwlib.h: Likewise.
456
457 2010-05-15 Glenn Morris <rgm@gnu.org>
458
459 * Makefile.in (mostlyclean): Remove references to non-existent files.
460
461 2010-05-13 Jan Djärv <jan.h.d@swipnet.se>
462
463 * lwlib-Xaw.c (make_dialog): Remove extra arg to XtVaGetSubresources.
464
465 2010-05-08 Jan Djärv <jan.h.d@swipnet.se>
466
467 * xlwmenu.c (XlwMenuDestroy): Remove XtDestroyWidget on subwidgets
468 (Bug #6127).
469
470 2010-05-07 Chong Yidong <cyd@stupidchicken.com>
471
472 * Version 23.2 released.
473
474 2010-05-06 Glenn Morris <rgm@gnu.org>
475
476 * Makefile.in (CPP, LN_S, TOP, LN): Remove unused variables.
477
478 2010-05-04 Glenn Morris <rgm@gnu.org>
479
480 * Makefile.in (C_SWITCH_SYSTEM, C_SWITCH_MACHINE):
481 Use @C_SWITCH_SYSTEM@, @C_SWITCH_MACHINE@ instead of
482 @c_switch_system@, @c_switch_machine@.
483
484 2010-04-27 Dan Nicolaescu <dann@ics.uci.edu>
485
486 * Makefile.in (C_SWITCH_X_SYSTEM): Define using autoconf.
487
488 2010-04-21 Jan Djärv <jan.h.d@swipnet.se>
489
490 * xlwmenu.c (expose_cb):
491 * lwlib-Xaw.c (fill_xft_data): Declarations before code.
492
493 2010-04-17 Jan Djärv <jan.h.d@swipnet.se>
494
495 * xlwmenu.c: Include Shell.h, remove duplicate declaration of
496 XlwMenuRedisplay.
497 (display_menu_item): Replace ws->window with ws->pixmap, remove
498 call to XftDrawRect.
499 (display_menu): Remove this and that argument.
500 Remove just_compute_this_one_p. Fill pixmap at start and copy it to
501 window at end.
502 (expose_cb): New function.
503 (make_windows_if_needed): Replace XCreateWindow with XtCreatePopup.
504 Add eventhandler for expose to expose_cb. Remove creation of xft_draw.
505 (create_pixmap_for_menu): New function.
506 (remap_menubar): Pop down menus that aren't the same as in old_stack.
507 Set width, height, x, y on widget with XtVaSetValues.
508 Call create_pixmap_for_menu.
509 Replace XUnmapWindow with XtPopdown.
510 Remowe two last parameters to display_menu.
511 (map_event_to_widget_value, XlwMenuRedisplay, Key, Select)
512 (pop_up_menu): Remowe two last parameters to display_menu.
513 (XlwMenuRealize): Call create_pixmap_for_menu, set w and pixmap.
514 Remove call to XftDrawCreate.
515 (XlwMenuDestroy): Free pixmap. Call XtDestroyWidget instead of
516 XDestroyWindow.
517 (handle_motion_event): Only call handle_single_motion_event once.
518 (set_window_type): New function.
519 (make_windows_if_needed, XlwMenuRealize): Call set_window_type.
520
521 * xlwmenuP.h (window_state): Add pixmap and w.
522
523 2010-04-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
524
525 * xlwmenu.c (facename_changed): Put function in #ifdef HAVE_XFT.
526
527 2010-04-11 Dan Nicolaescu <dann@ics.uci.edu>
528
529 * Makefile.in (C_SWITCH_SYSTEM, C_SWITCH_MACHINE)
530 (C_SWITCH_X_SITE): Define using autoconf.
531
532 2010-04-11 Jan Djärv <jan.h.d@swipnet.se>
533
534 * lwlib-Xaw.c (widget_xft_data): New for Xft data.
535 (fill_xft_data, openFont, get_text_width_and_height)
536 (draw_text, set_text, find_xft_data, command_press)
537 (command_reset): New functions.
538 (xaw_update_one_widget): Call set_text for dialog and buttons
539 if HAVE_XFT. Also set internalHeight for buttons.
540 (xaw_destroy_instance): Free all Xft related data.
541 (button_actions, buttonTrans): New structures.
542 (make_dialog): Call XtAppAddActions for button_actions.
543 Find xft font to use and call fill_xft_data for widgets.
544 (xaw_create_dialog): Pass instance parameter to make_dialog.
545
546 * lwlib-int.h (_widget_instance): Add Xft data if HAVE_XFT.
547 Override translations for buttons. If depth is 16 or more, tell
548 Xaw3d to not be nice to colormap.
549 Remove separator widget, use XtNhorizDistance on first right button
550 instead.
551
552 2010-04-08 Jan Djärv <jan.h.d@swipnet.se>
553
554 * xlwmenu.c (xlwmenu_default_font): Make static.
555 (xlwMenuResources): Add XtNfaceName and XtNdefaultFace.
556 (string_width): Use XftTextExtentsUtf8 if HAVE_XFT.
557 (MENU_FONT_HEIGHT, MENU_FONT_ASCENT): Add versions for
558 HAVE_XFT.
559 (size_menu): Set max_rest_width in window_state structure.
560 (display_menu_item): If HAVE_XFT and xft_draw is set, use
561 XftDrawRect and XftDrawStringUtf8 to draw text.
562 (make_windows_if_needed): Set max_rest_width and xft_draw
563 in windows[i].
564 (openXftFont): New.
565 (XlwMenuInitialize): Call openXftFont if HAVE_XFT. If mw->menu.font
566 is not set, load font fixed and save it in xlwmenu_default_font.
567 (XlwMenuInitialize): Set max_rest_width and xft_draw in windows[0].
568 (XlwMenuClassInitialize): Initialize xlwmenu_default_font.
569 (XlwMenuRealize): Set xft_fg, xft_bg, xft_disabled_fg and
570 windows[0].xft_draw if xft_font is set.
571 (XlwMenuDestroy): Destroy all xft_draw and close xft_font.
572 (facename_changed): New.
573 (XlwMenuSetValues): Call facename_changed. If face name did change,
574 close old fonts and destroy xft_draw:s. Then create new ones.
575
576 * xlwmenu.h (XtNfaceName, XtCFaceName, XtNdefaultFace,
577 XtCDefaultFace): New.
578
579 * xlwmenuP.h (_window_state): Add max_rest_width and xft_draw.
580 (_XlwMenu_part): Add faceName, xft_fg, xft_bg, xft_disabled_fg and
581 xft_font.
582
583 2010-03-10 Chong Yidong <cyd@stupidchicken.com>
584
585 * Branch for 23.2.
586
587 2009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
588
589 * xlwmenu.c:
590 * lwlib.c:
591 * lwlib-utils.c:
592 * lwlib-Xm.c:
593 * lwlib-Xlw.c:
594 * lwlib-Xaw.c: Include setjmp.h.
595
596 2009-06-21 Chong Yidong <cyd@stupidchicken.com>
597
598 * Branch for 23.1.
599
600 2008-07-23 Dan Nicolaescu <dann@ics.uci.edu>
601
602 * Makefile.in (ALL_CFLAGS): Remove reference to C_SWITCH_SITE.
603
604 2008-06-26 Dan Nicolaescu <dann@ics.uci.edu>
605
606 * lwlib.c: Remove references to obsolete variables.
607
608 2008-06-02 Jim Meyering <meyering@redhat.com>
609
610 Remove useless if-before-free tests.
611 * lwlib-Xm.c (xm_update_one_value): Likewise.
612 * lwlib.c (safe_free_str, free_widget_value_tree): Likewise.
613
614 2008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
615
616 * Makefile.in (TOOLKIT_DEFINES): Remove.
617
618 2007-08-29 Károly Lőrentey <lorentey@elte.hu>
619
620 * xlwmenu.c (XlwMenuRealize): Ignore X errors while setting up
621 cursor shape.
622
623 2007-07-25 Glenn Morris <rgm@gnu.org>
624
625 * Relicense all FSF files to GPLv3 or later.
626
627 * COPYING: Switch to GPLv3.
628
629 2007-06-13 Chong Yidong <cyd@stupidchicken.com>
630
631 * lwlib-Xaw.c, lwlib.c: Link to xaw3d if available.
632
633 2007-06-02 Chong Yidong <cyd@stupidchicken.com>
634
635 * Version 22.1 released.
636
637 2007-02-28 Glenn Morris <rgm@gnu.org>
638
639 * Makefile.in (distclean): Delete Makefile.
640 (maintainer-clean): Delete TAGS.
641
642 2007-01-01 Jan Djärv <jan.h.d@swipnet.se>
643
644 * xlwmenu.c (xlwMenuResources): Add XtNleaveCallback, XtNenterCallback.
645 (display_menu, map_event_to_widget_value): Generate enter and
646 leave callbacks.
647 (pop_up_menu): Initialize mw->menu.inside_entry.
648
649 * xlwmenu.h (XtNleaveCallback, XtNenterCallback): New strings.
650
651 * xlwmenuP.h (_XlwMenu_part): Add enter/leave callbacks and
652 inside_entry.
653
654 * lwlib-Xlw.c (enter_hook, leave_hook): New functions.
655 (xlw_create_menubar, xlw_create_popup_menu): Connect XtNenter/leave
656 to enter/leave_hook.
657
658 2006-10-30 Chong Yidong <cyd@stupidchicken.com>
659
660 * Makefile.in (lwlib-utils.o): Use CPPFLAGS.
661
662 2006-09-15 Jay Belanger <belanger@truman.edu>
663
664 * COPYING: Replace "Library Public License" by "Lesser Public
665 License" throughout.
666
667 2006-05-23 Jan Djärv <jan.h.d@swipnet.se>
668
669 * xlwmenu.c: Include xterm.h if emacs instead of declaring functions
670 used.
671 (string_width): Declare as static.
672 (Start, pop_up_menu): Set is_hint to 0 before calling
673 handle_motion_event.
674 (pop_up_menu): Return value and parameters for x_catch_errors and
675 x_uncatch_errors changed.
676
677 2005-09-27 Dan Nicolaescu <dann@ics.uci.edu>
678
679 * xlwmenu.c (find_next_selectable, find_prev_selectable):
680 Add missing parameter declarations.
681
682 2005-09-24 Dan Nicolaescu <dann@ics.uci.edu>
683
684 * xlwmenu.c: Fix the return type for x_clear_errors and
685 x_uncatch_errors.
686
687 2005-07-19 Jan Djärv <jan.h.d@swipnet.se>
688
689 * lwlib-Xm.c (make_menu_in_widget): Disable drag and drop for
690 labels in menu bar.
691
692 2005-07-04 Lute Kamstra <lute@gnu.org>
693
694 Update FSF's address in GPL notices.
695
696 2005-04-01 Jan Djärv <jan.h.d@swipnet.se>
697
698 Reenable support for I18N to Lucid menus.
699
700 * xlwmenuP.h (_XlwMenu_part): Add fontSet resource.
701
702 * xlwmenu.c (string_width, MENU_FONT_HEIGHT, MENU_FONT_ASCENT): Ditto.
703 (display_menu_item, make_drawing_gcs, XlwMenuInitialize)
704 (XlwMenuSetValues): Use font if fontSet is NULL, use only
705 font for !HAVE_X_I18N.
706 (xlwMenuResources): Add fontSet resource.
707
708 2005-03-22 Jan Djärv <jan.h.d@swipnet.se>
709
710 * xlwmenuP.h: Temporary #undef HAVE_X_I18N until FontSet for UTF-8
711 on XFree86 is investigated.
712
713 * xlwmenu.c: Ditto.
714
715 2005-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
716
717 Add support for I18N to Lucid menus.
718
719 * xlwmenuP.h (struct _XlwMenu_part) [HAVE_X_I18N]: Change `font' to be
720 a fontset. Add a `font_extents' element.
721
722 * xlwmenu.c (xlwMenuResources) [HAVE_X_I18N]: Use a fontset for the
723 `font' resource.
724 (string_width) [HAVE_X_I18N]: Use XmbTextExtents.
725 (MENU_FONT_HEIGHT, MENU_FONT_ASCENT): New macros.
726 (arrow_width, toggle_button_width, size_menu_item, draw_arrow)
727 (draw_toggle, draw_radio, display_menu_item): Use them.
728 (display_menu_item) [HAVE_X_I18N]: Use XmbDrawString.
729 (make_drawing_gcs) [HAVE_X_I18N]: Don't mess with fonts.
730 (XlwMenuInitialize) [HAVE_X_I18N]: Initialize font_extents.
731 (XlwMenuSetValues) [HAVE_X_I18N]: Refresh font_extents if font changes.
732
733 * lwlib-Xm.c (xm_update_label, xm_update_list): Use the recommended
734 XmStringCreateLocalized function. Add missing copyright.
735
736 * lwlib-Xm.h: Add missing copyright and license notice.
737
738 2005-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
739
740 * xlwmenuP.h:
741 * xlwmenu.h: Add missing copyright and license notice.
742
743 2004-12-27 Jan Djärv <jan.h.d@swipnet.se>
744
745 * xlwmenu.c (xlwMenuActionsList): Install MenuGadgetEscape as an
746 action procedure for compatibility with Lesstif/Motif.
747
748 * Makefile.in (mostlyclean): Don't remove *~ on clean.
749
750 2004-12-26 Jan Djärv <jan.h.d@swipnet.se>
751
752 * lwlib-Xaw.c: Put <KeyPress>Escape in dialogOverride so dialogs only
753 pops down on Escape, not any keypress.
754
755 2004-11-01 Jan Djärv <jan.h.d@swipnet.se>
756
757 * xlwmenu.c (find_first_selectable, find_next_selectable)
758 (find_prev_selectable): Rename parameter skip_no_call_data to
759 skip_titles. Recognize titles as having no call_data and no contents.
760 (Down, Up): Comment update.
761
762 2004-08-30 Jan Djärv <jan.h.d@swipnet.se>
763
764 * lwlib.h (_widget_value): Add lname and lkey.
765
766 2004-01-12 Jan Djärv <jan.h.d@swipnet.se>
767
768 * xlwmenuP.h (_XlwMenu_part): Add top_depth.
769
770 * xlwmenu.h: Removed declaration of pop_up_menu.
771
772 * xlwmenu.c (Start): Get correct time if time in event is CurrentTime.
773 (find_first_selectable, find_next_selectable)
774 (find_prev_selectable): Add parameter skip_no_call_data to skip
775 over items with no call data (popup menu titles).
776 (Down, Up): Compare old_depth to top_depth instead of 2.
777 Pass True to find_*_selectable:s new parameter if this is a popup menu.
778 (Left, Right): Compare old_depth to top_depth instead of 2.
779 Pass 0 to find_*_selectable:s new parameter.
780 (pop_up_menu): Set top_depth to 1 for pop up menus and 2 for
781 menu bar menus, to enable keyboard traversal of popups.
782
783 * lwlib-Xm.c (dialog_key_cb): New function.
784 (make_dialog): Add event handlers to dialog_key_cb for key press
785 so we can pop down on ESC.
786
787 * lwlib-Xlw.c (xlw_popup_menu): Replace call to pop_up_menu with
788 XtCallActionProc ("start"). Use a full XEvent since "start" copies it.
789
790 * lwlib-Xaw.c (make_dialog): Add override so dialog pops down on ESC.
791 (wm_delete_window): If widget isn't a shell, use the parent.
792
793 2003-05-22 Dave Love <fx@gnu.org>
794
795 * xlwmenu.c: Include lisp.h, not ../src/lisp.h.
796 (make_drawing_gcs): Remove unused `xswa', `mask'.
797
798 * lwlib-Xlw.c: Include lisp.h, not ../src/lisp.h.
799 (lw_lucid_widget_p): Remove unused `mw'.
800 (xlw_update_one_widget, xlw_pop_instance) [PROTOTYPES]:
801 Provide ISO C arglists.
802
803 2003-04-30 Lute Kamstra <lute@gnu.org>
804
805 * Makefile.in: Make things function properly in case both LessTif
806 and Open Motif are installed.
807
808 2003-01-26 Jan Djärv <jan.h.d@swipnet.se>
809
810 * lwlib-Xm.c (update_one_menu_entry): Deallocate widget_list.
811 (destroy_all_children): Call it self to destroy sub menu children.
812
813 2002-12-22 Richard M. Stallman <rms@gnu.org>
814
815 * xlwmenu.c (pop_new_stack_if_no_contents): Do nothing if
816 new_depth is 1.
817 (remap_menubar): Don't look in new_stack[0].
818 (Left): At level 1, do the same thing Right does.
819
820 2002-11-21 Dave Love <fx@gnu.org>
821
822 * lwlib-Xaw.c [PROTOTYPES]: Provide ISO C arglists for functions
823 with Boolean args.
824
825 2002-11-20 Dave Love <fx@gnu.org>
826
827 * lwlib.c: Remove obsolete USE_OLIT code.
828 [PROTOTYPES]: Provide ISO C arglists for functions with Boolean args.
829 (lwlib_memset): Declare length arg as size_t.
830 (malloc_widget_value): Cast arg of lwlib_memset.
831
832 * xlwmenu.c (separator_height): Prototype.
833
834 2002-05-07 Miles Bader <miles@gnu.org>
835
836 * xlwmenu.c (make_drawing_gcs): The scaling factor passed to
837 `x_alloc_lighter_color_for_widget' is a float, not an int, and
838 it's a multiplicative factor, so the name `delta' is inaccurate.
839 Always base disabled foreground on the normal foreground.
840 Don't use the temporary variable `temp'.
841
842 2002-05-06 Pavel Janík <Pavel@Janik.cz>
843
844 * xlwmenu.c (xlwMenuResources): New resource.
845 (find_next_selectable): Return current item when the menu is not
846 popped up.
847 Rename `inactive_gc' to `disabled_gc'.
848 Use lighter/darker color for disabled menu items instead of using
849 stipple. Use stipple only when better color can not be
850 determined automatically.
851
852 * xlwmenu.h (XtNdisabledForeground, XtCDisabledForeground):
853 New resource names.
854
855 * xlwmenuP.h (_XlwMenu_part): Add new member `disabled_foreground'.
856 Rename `inactive_gc' to `disabled_gc'.
857
858 2002-04-29 Pavel Janík <Pavel@Janik.cz>
859
860 * xlwmenu.c <XtNmargin, XtNverticalSpacing, XmNshadowThickness>:
861 Change default values.
862
863 2002-04-28 Jan Djärv <jan.h.d@swipnet.se>
864
865 * xlwmenu.c: Do not grab keyboard if installation-directory is
866 non-nil (not installed Emacs). To simplify debugging.
867
868 2002-04-28 Pavel Janík <Pavel@Janik.cz>
869
870 * Makefile.in: Remove OpenLook file dependencies.
871 (xrdb-cpp.o): Remove target.
872 Remove unused defines.
873
874 * xrdb.c, xrdb-cpp.c, Imakefile, dispatch.c, dispatch.h:
875 Remove unused file.
876
877 * lwlib.c (instantiate_widget_instance): Remove duplicated prototype.
878
879 2002-04-25 Pavel Janík <Pavel@Janik.cz>
880
881 * lwlib-Xol.c, lwlib-Xol.h, lwlib-Xolmb.c, lwlib-Xolmb.h
882 * lwlib-XolmbP.h: Remove file.
883
884 2002-04-22 Jan Djärv <jan.h.d@swipnet.se>
885
886 * lwlib-Xm.c: Removed compiler warning.
887
888 * xlwmenu.c: Add calls to GrabKeyboard to remove strange
889 interactions with window managers that steal keypresses.
890 Call ungrab_all instead of XtUngrabPointer.
891 (pop_up_menu): Add call to XtGrabKeyboard.
892 (ungrab_all): New function.
893
894 2002-04-20 Pavel Janík <Pavel@Janik.cz>
895
896 * xlwmenu.c (find_next_selectable): New function.
897 (Down, Up, Right): Use it.
898 (find_next_selectable): Prevent endless loops when only one item
899 is enabled in the menu.
900
901 2002-04-19 Pavel Janík <Pavel@Janik.cz>
902
903 These changes allow moving in menu via keyboard.
904
905 * xlwmenu.c (xlwMenuTranslations, xlwMenuActionsList):
906 Add translations for cursor keys and RET.
907 (find_next_selectable, find_prev_selectable): New functions used
908 for finding menu-items.
909 (Down, Up, Left, Right): New functions.
910
911 2002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
912
913 * Makefile.in (TAGS): Don't use -t, it's the default behavior for
914 etags, so it barfs if invoked with -t.
915
916 2002-03-17 Richard M. Stallman <rms@gnu.org>
917
918 * lwlib.c (P_): Definitions deleted.
919
920 2002-03-16 Eli Zaretskii <eliz@is.elta.co.il>
921
922 * lwlib.c (P_): Don't define if already defined.
923
924 2002-01-27 Pavel Janík <Pavel@Janik.cz>
925
926 * lwlib-Xaw.c (xaw_update_scrollbar, xaw_scrollbar_scroll)
927 (xaw_scrollbar_jump): Put whole functions in #if 0.
928
929 2002-01-09 Pavel Janík <Pavel@Janik.cz>
930
931 * lwlib-Xaw.c (xaw_create_dialog): Initialize icon_name to
932 suppress compiler warnings.
933
934 2001-12-18 Pavel Janík <Pavel@Janik.cz>
935
936 * lwlib.c (separator_names): Add missing braces around initializers.
937
938 2001-12-08 Pavel Janík <Pavel@Janik.cz>
939
940 * COPYING: New file.
941
942 2001-12-01 Richard M. Stallman <rms@gnu.org>
943
944 * lwlib.h (_widget_value): `help' has type Lisp_Object.
945
946 * xlwmenu.c, lwlib-Xaw.c, lwlib-Xlw.c: Include ../src/lisp.h.
947 * lwlib-Xm.c, lwlib-Xol.c, lwlib-Xolmb.c: Include ../src/lisp.h.
948 * lwlib-utils.c: Include ../src/lisp.h.
949
950 * lwlib.c: Include ../src/lisp.h. Don't declare xmalloc.
951 (free_widget_value_tree): Don't free `help' field.
952 (copy_widget_value_tree): Copy `help' simply, without safe_strdup.
953 (merge_widget_value): Compare and copy `help' simply.
954
955 2001-11-28 Richard M. Stallman <rms@gnu.org>
956
957 * Makefile.in (TAGS): Find the source files in $(srcdir).
958
959 2001-10-20 Gerd Moellmann <gerd@gnu.org>
960
961 * (Version 21.1 released.)
962
963 2001-10-09 Gerd Moellmann <gerd@gnu.org>
964
965 * lwlib-Xaw.c (xaw_create_scrollbar) [!0]: Return NULL.
966 From Hallvard B Furuseth <h.b.furuseth@usit.uio.no>.
967
968 2001-10-05 Gerd Moellmann <gerd@gnu.org>
969
970 * Branch for 21.1.
971
972 2001-04-30 Gerd Moellmann <gerd@gnu.org>
973
974 * xlwmenu.c (xlwmenu_window_p): New function.
975
976 2001-03-23 Gerd Moellmann <gerd@gnu.org>
977
978 * lwlib-Xlw.c (x_print_complete_resource_name) [0]: New function.
979
980 2001-03-22 Gerd Moellmann <gerd@gnu.org>
981
982 * lwlib-Xm.c (x_print_complete_resource_name) [0]: New function.
983
984 2001-03-13 Gerd Moellmann <gerd@gnu.org>
985
986 * lwlib-Xm.c (make_menu_in_widget): Remove code forcing LessTif to
987 recompute centered text; it works fine without with current LessTif.
988
989 * lwlib-Xm.c (make_menu_in_widget): Add an XmNpopdownCallback
990 instead of an XmNunmapCallback.
991 (xm_unmap_callback): Remove.
992
993 * lwlib-Xm.c (make_menubar): Take out code in #if 0.
994
995 * lwlib-Xm.c (xm_popup_menu): Don't set XmNmenuPost unless
996 necessary. From Rick Scott <rwscott@alumni.uwaterloo.ca>.
997
998 2001-02-28 Gerd Moellmann <gerd@gnu.org>
999
1000 * lwlib-Xm.c (xm_arm_callback): Don't compare widgets with `None',
1001 use NULL instead.
1002
1003 * lwlib-Xaw.c (xaw_update_one_widget): Use XtSetSensitive instead
1004 of setting the value of XtNsensitive.
1005
1006 * lwlib-Xm.c (xm_update_radiobox, update_one_menu_entry)
1007 (xm_update_one_widget): Use XtSetSensitive instead of setting the
1008 value of XmNsensitive. From Rick Scott <rwscott@alumni.uwaterloo.ca>.
1009
1010 2000-12-14 Dave Love <fx@gnu.org>
1011
1012 * xlwmenu.c (gray_bitmap_bits): Remove `unsigned' from declaration.
1013
1014 2000-12-11 Dave Love <fx@gnu.org>
1015
1016 * xlwmenu.c (draw_separator) <SEPARATOR_SHADOW_ETCHED_IN_DASH>:
1017 <SEPARATOR_SHADOW_ETCHED_OUT_DASH>: Fix call of draw_separator.
1018
1019 2000-12-07 Gerd Moellmann <gerd@gnu.org>
1020
1021 * lwlib-Xm.c (xm_arm_callback): Fix last change.
1022
1023 2000-11-30 Gerd Moellmann <gerd@gnu.org>
1024
1025 * lwlib-Xm.c (xm_arm_callback): Handle case that W is null;
1026 also see comment there.
1027
1028 2000-11-21 Gerd Moellmann <gerd@gnu.org>
1029
1030 * xlwmenu.c (xlwmenu_redisplay): New function.
1031
1032 2000-09-30 Stefan Monnier <monnier@cs.yale.edu>
1033
1034 * lwlib.c (lw_separator_p): Init separator_p (bug with "-- some text").
1035
1036 2000-09-28 Sam Steingold <sds@gnu.org>
1037
1038 * xlwmenu.c: Before including <X11/Xos.h> on SUN, define SUNOS41
1039 to avoid redefining struct timeval and struct timezone.
1040
1041 2000-09-04 Miles Bader <miles@gnu.org>
1042
1043 * xlwmenu.c (XlwMenuSetValues): Only frob the display if the menu
1044 is actually displayed.
1045 (remap_menubar): Only include the menu-margin in the initial X & Y
1046 positions for horizontal menu-bars.
1047 (fit_to_screen): If moving a sub-menu to the left-side, increment
1048 its x-position by the shadow-thickness to make it look more
1049 attached to the invoking menu-item (similarly to the way it would
1050 be displayed on the right side).
1051
1052 2000-09-03 Miles Bader <miles@gnu.org>
1053
1054 * xlwmenu.c (x_alloc_lighter_color_for_widget): New extern declaration.
1055 (make_shadow_gcs) [emacs]: Use x_alloc_lighter_color_for_widget to
1056 do shadow calculation.
1057 (make_shadow_gcs): Remove code that tests whether the top shadow
1058 is dimmer than the bottom shadow--it shouldn't ever happen.
1059
1060 2000-08-30 Miles Bader <miles@gnu.org>
1061
1062 * xlwmenu.c (XlwMenuSetValues): If the background color has
1063 changed, re-make the shadow-gcs too.
1064
1065 2000-08-03 Gerd Moellmann <gerd@gnu.org>
1066
1067 * lwlib.c, lwlib-Xm.c, lwlib-Xaw.c: Use NULL at the end of the
1068 variable argument lists of XtVaSetValues and XtVaGetValues
1069 functions because 0 is not sufficient on systems where sizeof
1070 (int) < sizeof (void *).
1071
1072 2000-07-19 Gerd Moellmann <gerd@gnu.org>
1073
1074 * xlwmenu.c [emacs]: Don't include <X11/bitmaps/gray> because that
1075 leads to redefinition errors when static is defined as empty in
1076 config.h. Refer to the gray bitmap in xfns.c, instead.
1077
1078 2000-07-18 Dave Love <fx@gnu.org>
1079
1080 * lwlib-utils.c (XtApplyToWidgets): Cast args of lwlib_bcopy.
1081
1082 2000-06-23 Dave Love <fx@gnu.org>
1083
1084 * lwlib-Xlw.c (xlw_popup_menu): Cast arg of pop_up_menu.
1085
1086 * lwlib-utils.c: Include lwlib.h.
1087
1088 2000-06-16 Gerd Moellmann <gerd@gnu.org>
1089
1090 * xlwmenuP.h (_XlwMenu_part): Add free_top_shadow_color_p and
1091 free_bottom_shadow_color_p.
1092
1093 * xlwmenu.c (make_shadow_gcs): Set free_top_shadow_color_p
1094 and free_top_shadow_color_p flags in the menu widget if
1095 top and bottom shadow colors must be freed.
1096 (release_shadow_gcs): Free colors only if they must be freed.
1097
1098 2000-06-12 Gerd Moellmann <gerd@gnu.org>
1099
1100 * xlwmenu.c (make_shadow_gcs): Free and copy colors so that
1101 color reference counts are right.
1102 (release_shadow_gcs): Free colors.
1103
1104 2000-06-06 Dave Love <fx@gnu.org>
1105
1106 * xlwmenu.c (x_alloc_nearest_color_for_widget, x_catch_errors)
1107 (x_uncatch_errors, x_had_errors_p, x_clear_errors): Add prototypes
1108 -- should be moved into separate header.
1109 (make_shadow_gcs) <x_alloc_nearest_color_for_widget>: Cast first arg.
1110 (Start) <pop_up_menu>: Cast second arg.
1111
1112 * lwlib.c (P_): Use PROTOTYPES.
1113 (safe_strdup): Declare arg const.
1114 (lw_modify_all_widgets) <!info>: Return 0.
1115
1116 * lwlib-Xm.c (P_): Use PROTOTYPES.
1117
1118 * xlwmenu.h, lwlib.h, lwlib-utils.h, lwlib-int.h, lwlib-Xm.h:
1119 * lwlib-Xlw.h, lwlib-Xaw.h: Enable prototypes.
1120
1121 * lwlib-Xaw.c (xaw_popup_menu): Add EVENT arg.
1122
1123 * Makefile.in (lwlib.o): Depend on lwlib-Xlw.h.
1124 (lwlib-Xlw.o): Depend on lwlib-Xlw.h.
1125 (lwlib-Xaw.o): Depend on lwlib-Xaw.h.
1126 (lwlib-Xm.o): Depend on lwlib-Xm.h.
1127
1128 2000-03-12 Gerd Moellmann <gerd@gnu.org>
1129
1130 * lwlib-Xm.c (make_menubar) [LESSTIF_VERSION]: Don't set
1131 XmNresizeHeight and XmNresizeWidth.
1132
1133 2000-03-08 Dave Love <fx@gnu.org>
1134
1135 * Makefile.in (liblw.a): Don't bother testing for ranlib failing
1136 since configure sets it up.
1137
1138 2000-03-06 Gerd Moellmann <gerd@gnu.org>
1139
1140 * lwlib-Xm.c (make_menubar): Set XmNresizeHeight and
1141 XmNresizeWidth resources only if LESSTIF_VERSION is defined.
1142
1143 2000-03-05 Gerd Moellmann <gerd@gnu.org>
1144
1145 * lwlib-Xm.c (xm_manage_resizing): Rewritten.
1146
1147 * lwlib.c (lw_modify_all_widgets): Return non-zero if widget
1148 tree was changed.
1149 (merge_widget_value): Add parameter CHANGE_P. Set *CHANGE_P
1150 to 1 if a change occurs.
1151
1152 * lwlib.h (lw_modify_all_widgets): Change prototype.
1153
1154 2000-03-04 Gerd Moellmann <gerd@gnu.org>
1155
1156 * xlwmenu.c (make_shadow_gcs): Use the widget's colormap instead
1157 of the screen's default colormap.
1158
1159 2000-02-18 Gerd Moellmann <gerd@gnu.org>
1160
1161 * lwlib.c (merge_widget_value): Fix incorrect assignment of
1162 safe_strdup'd help string.
1163
1164 2000-01-25 Gerd Moellmann <gerd@gnu.org>
1165
1166 * lwlib-Xm.c (make_menu_in_widget): Don't add XmNpopdownCallback,
1167 add XmNunmapCallback.
1168 (xm_unmap_callback): New function.
1169 (xm_pull_down_callback): Call pre-activate callback only if
1170 parent is the menu bar.
1171
1172 2000-01-17 Gerd Moellmann <gerd@gnu.org>
1173
1174 * lwlib-Xm.c (xm_arm_callback): New function.
1175 (make_menu_in_widget): Set xm_arm_callback as XmNarmCallback and
1176 XmNdisarmCallback for buttons (not supported for other widgets).
1177 (make_menubar): Set XmNresizeHeight and XmNresizeWidth to False.
1178
1179 * lwlib-Xlw.c (highlight_hook): New function.
1180 (xlw_create_menubar, xlw_create_popup_menu): Add highlight_hook as
1181 callback XtNhighlightCallback.
1182
1183 * lwlib.c (copy_widget_value_tree): Copy help string.
1184 (free_widget_value_tree): Free help string.
1185 (merge_widget_value): Handle help string.
1186 (allocate_widget_info, lw_register_widget, lw_create_widget):
1187 Add parameter HIGHLIGHT_CB.
1188 (lw_get_widget_instance): New function.
1189
1190 * lwlib-int.h: Add prototype for lw_get_widget_instance.
1191
1192 * lwlib.h (_widget_value): Add help string.
1193
1194 * xlwmenu.c (xlwMenuResources): All XtNhighlightCallback.
1195 (remap_menubar): Call highlight callback.
1196
1197 * xlwmenu.h (XtNhighlightCallback): New define.
1198
1199 * xlwmenuP.h (_XlwMenu_part): Add `highlight' callback list.
1200
1201 1999-10-19 Paul Eggert <eggert@twinsun.com>
1202
1203 Add support for large files, plus some locale improvements.
1204
1205 * dispatch.c, lwlib-Xaw.c, lwlib-Xlw.c, lwlib-Xm.c, lwlib.c, xlwmenu.c,
1206 * xrdb-cpp.c, xrdb.c:
1207 Include <config.h> before any system include files.
1208
1209 * lwlib-Xm.c, lwlib.c:
1210 Do not include <stdlib.h> or <string.h>, as <config.h> does this.
1211
1212 1999-10-07 Gerd Moellmann <gerd@gnu.org>
1213
1214 * lwlib-Xm.c (make_menu_in_widget, update_one_menu_entry):
1215 Use widgets instead of gadgets to be able to set colors.
1216
1217 1999-09-17 Richard Stallman <rms@gnu.org>
1218
1219 * lwlib-Xaw.c (wm_delete_window): Check all the shell's children,
1220 not just the first, to find the dialog box.
1221
1222 1999-09-14 Gerd Moellmann <gerd@gnu.org>
1223
1224 * lwlib.c (lw_separator_p): Check for new-style separators differently.
1225
1226 1999-09-10 Gerd Moellmann <gerd@gnu.org>
1227
1228 * lwlib.c (lw_separator_p): Add `--:space' with the same
1229 meaning as `--:noLine'.
1230
1231 1999-09-06 Gerd Moellmann <gerd@gnu.org>
1232
1233 * lwlib.c (lw_separator_p): Add alternative separator type names.
1234
1235 1999-09-03 Gerd Moellmann <gerd@gnu.org>
1236
1237 * xlwmenu.c (make_shadow_gcs): Call x_alloc_nearest_color_for_widget.
1238
1239 1999-07-12 Gerd Moellmann <gerd@gnu.org>
1240
1241 * lwlib-Xm.c: Add function prototypes.
1242
1243 * lwlib-Xm.c (xm_update_label): Use val->name to look up
1244 a label string from resources.
1245 (xm_update_label): Add some comments.
1246
1247 1999-07-12 Gerd Moellmann <gerd@gnu.org>
1248
1249 * xlwmenu.c (all_dashes_p): Removed.
1250 (size_menu_item): Call lw_separator_p.
1251 (display_menu_item): Ditto.
1252 (display_menu): Ditto.
1253 (draw_separator): New.
1254 (display_menu_item): Call it.
1255 (separator_height): New.
1256 (size_menu_item): Call it.
1257
1258 * lwlib-Xm.c (all_dashes_p): Removed.
1259 (make_menu_in_widget): Use lw_separator_p. Set Motif separator type.
1260
1261 * lwlib.c (lw_separator_p): New.
1262
1263 * lwlib.h (enum menu_separator): New.
1264
1265 1999-07-12 Gerd Moellmann <gerd@gnu.org>
1266
1267 * lwlib-Xm.c (make_menu_in_widget): Set alignment of menu
1268 title after all widgets have been created.
1269
1270 1999-07-12 Gerd Moellmann <gerd@gnu.org>
1271
1272 * xlwmenu.c (toggle_button_width): Renamed from
1273 toggle_or_radio_button_width.
1274 (radio_button_width): New.
1275 (size_menu_item): Use new functions.
1276 (draw_shadow_rhombus): New.
1277 (draw_radio): Use radio_button_width and draw_shadow_rhombus.
1278 (draw_toggle): Use toggle_button_width.
1279
1280 1999-07-12 Gerd Moellmann <gerd@gnu.org>
1281
1282 * lwlib-Xm.c (xm_update_toggle): Add callback xm_generic_callback
1283 instead of xm_internal_update_other_instances.
1284
1285 * lwlib-Xm.c (make_menu_in_widget): Do help button before managing
1286 children to get it to the right place.
1287 (make_menu_in_widget): Create toggle buttons.
1288 (update_one_menu_entry): Update toggle buttons.
1289
1290 * xlwmenu.c (size_menu_item): Add parameter button_width.
1291 (size_menu): Compute button_width.
1292 (toggle_or_radio_button_width): New.
1293 (draw_toggle): New.
1294 (draw_radio): New.
1295 (draw_shadow_rectangle): Add parameter `down_p'.
1296
1297 * xlwmenuP.h (_window_state): Add button_width.
1298
1299 1999-07-12 Gerd Moellmann <gerd@gnu.org>
1300
1301 * xlwmenu.c (make_shadow_gcs) [emacs]: Use x_alloc_nearest_color.
1302
1303 * lwlib.c (merge_widget_value): Handle button_type.
1304 (copy_widget_value_tree): Copy button_type.
1305
1306 * lwlib.h (enum button_type): New.
1307 (_widget_value): New member button_type.
1308
1309 1999-07-12 Gerd Moellmann <gerd@gnu.org>
1310
1311 * lwlib-Xm.c (make_menu_in_widget): Test for menubar widgets
1312 using XmNrowColumnType.
1313
1314 1999-07-12 Gerd Moellmann <gerd@gnu.org>
1315
1316 * xlwmenu.c (abort_gracefully): New.
1317 (display_menu): Use it instead of abort.
1318 (size_menu): Ditto.
1319
1320 1999-07-12 Gerd Moellmann <gerd@gnu.org>
1321
1322 * xlwmenu.c (xlwMenuResources): Change previously unused
1323 XtNmargin to 4.
1324 (size_menu): Take margin into account.
1325 (display_menu_item): Ditto.
1326 (remap_menubar): Ditto.
1327 (draw_arrow): Draw it 3D.
1328
1329 1999-07-12 Richard Stallman <rms@gnu.org>
1330
1331 * Version 20.4 released.
1332
1333 1998-08-19 Richard Stallman <rms@psilocin.ai.mit.edu>
1334
1335 * Version 20.3 released.
1336
1337 1998-07-30 Paul Eggert <eggert@twinsun.com>
1338
1339 * Makefile.in (lwlib-utils.o, lwlib.o, lwlib-Xlw.o)
1340 (lwlib-Xaw.o, lwlib-Xm.o, lwlib-Xol.o, lwlib-Xolmb.o):
1341 Add dependencies to corresponding .c files for Solaris 2.x VPATH make.
1342
1343 1998-04-06 Andreas Schwab <schwab@gnu.org>
1344
1345 * lwlib.c: Always declare xmalloc.
1346 [USE_XAW]: Include <X11/Xaw/Paned.h>.
1347 (lwlib_memset, lwlib_bcopy): Explicitly declare return type.
1348
1349 1997-12-20 Richard Stallman <rms@psilocin.gnu.org>
1350
1351 * lwlib-Xm.c (update_one_menu_entry):
1352 Add conditional in case XmNpositionIndex is missing.
1353
1354 1997-09-19 Richard Stallman <rms@psilocin.gnu.ai.mit.edu>
1355
1356 * Version 20.2 released.
1357
1358 * xlwmenu.c (motion_event_is_in_menu): Extend the left and
1359 top windows by the shadow width.
1360
1361 1997-09-15 Richard Stallman <rms@psilocin.gnu.ai.mit.edu>
1362
1363 * Version 20.1 released.
1364
1365 1997-07-23 Richard Stallman <rms@psilocin.gnu.ai.mit.edu>
1366
1367 * xlwmenu.c (display_menu): If an item is disabled,
1368 don't display its submenu (if any).
1369
1370 1997-05-01 Richard Stallman <rms@psilocin.gnu.ai.mit.edu>
1371
1372 * xlwmenu.c (pop_up_menu): Update the call to x_catch_errors.
1373
1374 1997-01-21 Richard Stallman <rms@psilocin.gnu.ai.mit.edu>
1375
1376 * xlwmenu.c (fit_to_screen): If new menu would overlap the previous
1377 one from the side, try moving it up or down.
1378
1379 1996-08-11 Richard Stallman <rms@psilocin.gnu.ai.mit.edu>
1380
1381 * Version 19.33 released.
1382
1383 * lwlib-Xm.c (update_one_menu_entry): Fix previous change:
1384 When XmIsCascadeButton, don't call XmCreateCascadeButtonGadget,
1385 just modify the existing one.
1386
1387 1996-08-09 Marcus G. Daniels <marcus@sayre.sysc.pdx.edu>
1388
1389 * lwlib.c (merge_widget_value): Undo previous change.
1390
1391 * lwlib-Xm.c (update_one_menu_entry): When creating a pulldown
1392 in an existing but empty menu item, in order to get a new functional
1393 pulldown, the menu item must be switched from an XmPushButtonGadget
1394 into a XmCascadeButtonGadget.
1395
1396 1996-07-31 Richard Stallman <rms@psilocin.gnu.ai.mit.edu>
1397
1398 * Version 19.32 released.
1399
1400 1996-07-31 Marcus G. Daniels <marcus@sayre.sysc.pdx.edu>
1401
1402 * lwlib-Xm.c (make_menubar): Turn off menu accelerator.
1403
1404 1996-07-24 Marcus G. Daniels <marcus@sayre.sysc.pdx.edu>
1405
1406 * lwlib.c (merge_widget_value) [USE_MOTIF]: Pass along the change
1407 flag from merged_contents.
1408
1409 1996-07-13 Karl Heuer <kwzh@gnu.ai.mit.edu>
1410
1411 * lwlib-Xm.c (xm_update_menu): Fix loop termination test.
1412
1413 1996-07-07 Karl Heuer <kwzh@gnu.ai.mit.edu>
1414
1415 * lwlib-Xm.h, lwlib-Xm.c, lwlib.h, lwlib.c: Undo previous change.
1416
1417 1996-07-03 Marcus G. Daniels <marcus@sayre.sysc.pdx.edu>
1418
1419 * lwlib-Xm.h: Declare lw_motif_menu_related_event_p.
1420
1421 * lwlib-Xm.c (lw_motif_menu_related_event_p): A predicate to
1422 identify keyboard events intended only for menus.
1423
1424 * lwlib.h: Declare lw_toolkit_related_event_p.
1425
1426 * lwlib.c (lw_toolkit_related_event_p): A predicate to identify
1427 toolkit-specific events.
1428
1429 1996-06-07 Marcus G. Daniels <marcus@sayre.sysc.pdx.edu>
1430
1431 * lwlib-Xm.c (make_menu_in_widget): Set mapping delay
1432 for cascade buttons to zero.
1433
1434 1996-05-25 Karl Heuer <kwzh@gnu.ai.mit.edu>
1435
1436 * Version 19.31 released.
1437
1438 1996-03-31 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1439
1440 * lwlib-Xm.c (destroy_all_children): When freeing a cascade button,
1441 free its submenu too.
1442 (make_menu_in_widget): Use a cascade button gadget, not a widget.
1443 Include Xm/CascadeBG.h.
1444
1445 1996-03-29 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1446
1447 * Makefile.in (tags): New target.
1448
1449 1996-03-28 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1450
1451 * Makefile.in (TAGS): Renamed from `tags' and fixed to work.
1452
1453 1996-03-26 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1454
1455 * Makefile.in (xlwmenu.o): New explicit target.
1456
1457 1996-03-24 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1458
1459 * lwlib.h (struct widget_value): New field this_one_change.
1460 * lwlib.c (merge_widget_value): Set the this_one_change field.
1461 * lwlib-Xm.c (destroy_all_children): New arg first_child_to_destroy.
1462 (make_menu_in_widget): New arg keep_first_children.
1463 (xm_update_menu): Preserve the first children even if later ones
1464 have a structural change.
1465 (update_one_menu_entry): Use this_one_change field.
1466
1467 1996-03-01 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1468
1469 * xlwmenu.c (motion_event_is_in_menu): Make x and y signed.
1470
1471 1996-02-25 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1472
1473 * lwlib.c (lw_window_is_in_menubar) [USE_MOTIF]:
1474 With Motif, the window WIN can be the menu bar widget itself.
1475
1476 1996-02-21 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
1477
1478 * lwlib.c (free_widget_value_tree, merge_widget_value):
1479 Use XtFree for the toolkit_data.
1480
1481 1996-02-19 Karl Heuer <kwzh@gnu.ai.mit.edu>
1482
1483 * lwlib.c (lw_internal_update_other_instances): Move static var
1484 outside the function, and rename it to lwlib_updating.
1485
1486 1996-01-04 Paul Eggert <eggert@twinsun.com>
1487
1488 * lwlib.c (instantiate_widget_instance): Renamed from
1489 instanciate_widget_instance (spelling correction).
1490 All callers changed.
1491
1492 1995-12-31 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1493
1494 * xlwmenu.c (xlwMenuActionsList): Add "key" and "nothing".
1495 (xlwMenuTranslations): Add translations for Key, KeyUp,
1496 and for the modifier keysyms.
1497 (Nothing, Key): New functions.
1498
1499 1995-12-24 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1500
1501 * xlwmenu.c (XlwMenuSetValues): Do redisplay if non-null contents
1502 get replaced by empty contents.
1503
1504 * lwlib.c (merge_widget_value): Treat disappearance of entire contents
1505 as a STRUCTURAL_CHANGE.
1506
1507 1995-12-20 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
1508
1509 * lwlib-utils.c: Add #undef for index and rindex.
1510
1511 1995-11-24 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1512
1513 * Version 19.30 released.
1514
1515 1995-11-13 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1516
1517 * xlwmenu.c (display_menu_item): Fix previous change.
1518
1519 1995-11-04 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
1520
1521 * xlwmenu.c (display_menu_item): Don't treat buttons specially.
1522
1523 1995-08-14 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1524
1525 * Makefile.in (RANLIB): Get this var from configure.
1526
1527 1995-08-02 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1528
1529 * lwlib.c (lw_popup_menu): New arg `event', passed along.
1530 * lwlib-Xlw.c (xlw_popup_menu): New arg `event'.
1531 * lwlib-Xm.c (xm_popup_menu): New arg `event'.
1532
1533 1995-06-19 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1534
1535 * Version 19.29 released.
1536
1537 1995-06-11 Richard Stallman <rms@gnu.ai.mit.edu>
1538
1539 * lwlib.c (lwlib_toolkit_type): New variable.
1540
1541 1995-05-26 Richard Stallman <rms@gnu.ai.mit.edu>
1542
1543 * xlwmenu.c (Drag): Do nothing unless menu.popped_up field is set.
1544
1545 1995-05-22 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
1546
1547 * xlwmenu.c (XlwMenuInitialize): Cast XCreatePixmapFromBitmapData args.
1548
1549 1995-05-20 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
1550
1551 * lwlib.c: Don't use prototype.
1552 * lwlib-Xm.c (activate_button, xm_update_cascadebutton): Likewise.
1553
1554 1995-05-05 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1555
1556 * lwlib.c (lw_refigure_widget) [USE_MOTIF]: Fix backward if.
1557
1558 1995-05-04 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1559
1560 * Makefile.in (ALL_CFLAGS): Add -I../src.
1561
1562 1995-05-03 Morten Welinder <terra+@cs.cmu.edu>
1563
1564 * lwlib.c [__osf__]: Include string.h and stdlib.h.
1565 [__osf__] (xmalloc): Declared.
1566
1567 1995-04-13 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1568
1569 * lwlib-Xm.c (update_one_menu_entry, make_menu_in_widget):
1570 Specify more useful names in XmCreatePulldownMenu calls.
1571
1572 * lwlib-Xaw.c (xaw_pop_instance): Make x, y, w, h unsigned.
1573
1574 * xlwmenu.c (size_menu): Make height and label_width unsigned.
1575 (fit_to_screen): Make screen_width and screen_height unsigned.
1576 (motion_event_is_in_menu): Make x, y unsigned.
1577
1578 1995-04-09 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1579
1580 * lwlib-utils.c: If HAVE_CONFIG_H, include config.h.
1581
1582 * Makefile.in (ALL_CFLAGS): Define HAVE_CONFIG_H.
1583 Add -I${srcdir}/../src.
1584
1585 1995-04-08 Paul Reilly <pmr@geech.gnu.ai.mit.edu>
1586
1587 * lwlib-Xm.c: Remove function prototypes.
1588 (xm_pop_down_callback): Call the deactivation callback only when
1589 popping down the top level submenu.
1590
1591 1995-04-07 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1592
1593 * Makefile.in (lwlib.o): Depend on Makefile.
1594
1595 * lwlib-Xm.h: Remove function prototypes.
1596
1597 * lwlib-Xm.c (remove_grabs): Use type Widget for `menu'.
1598
1599 1995-02-15 Paul Reilly <pmr@geech.gnu.ai.mit.edu>
1600
1601 * Makefile.in (ALL_CFLAGS): Allow include files to be found in
1602 `srcdir'.
1603
1604 1995-02-07 Richard Stallman <rms@pogo.gnu.ai.mit.edu>
1605
1606 * Makefile.in (maintainer-clean): Renamed from realclean.
1607
1608 1994-11-28 Richard Stallman <rms@bethel>
1609
1610 * lwlib-int.h (safe_strdup): Don't use ANSI argument prototype.
1611
1612 1994-11-15 Paul Reilly <pmr@duality.gnu.ai.mit.edu>
1613
1614 * lwlib.c (lw_refigure_widget): Use the macro USE_XAW rather than XAW.
1615
1616 1994-11-08 Paul Reilly <pmr@duality.gnu.ai.mit.edu>
1617
1618 * lwlib-Xm.c (make_menu_in_widget): Differentiate a separator
1619 entry ("--") from a title.
1620 (xm_pop_down_callback): Filter all but the last pop down callbacks.
1621
1622 1994-11-07 Paul Reilly <pmr@duality.gnu.ai.mit.edu>
1623
1624 * lwlib-Xm.c (update_one_menu_entry): Use the parent of the
1625 cascade button as the parent of the pulldown, rather than the
1626 cascade button itself. This works around a Motif SIGSEGV in the
1627 function `InSharedMenuHierarchy'.
1628
1629 1994-10-26 Richard Stallman <rms@duality.gnu.ai.mit.edu>
1630
1631 * xlwmenu.c (pop_up_menu): Pass a Display * to x_catch_errors, etc.
1632
1633 1994-10-26 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1634
1635 * xlwmenu.c (xlwmenu_default_font): New global variable.
1636 (XlwMenuInitialize): Use xlwmenu_default_font to default
1637 the font if necessary. Make mw, itself, an argument.
1638
1639 * xlwmenu.c (pop_up_menu): Pass a Display * to x_catch_errors, etc.
1640
1641 1994-10-08 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1642
1643 * xlwmenu.c (fit_to_screen): Don't put the menu off the left or top.
1644
1645 1994-10-02 Paul Reilly <pmr@geech.gnu.ai.mit.edu>
1646
1647 * xlwmenu.c (display_menu_item): Add support for displaying the
1648 title in pop up menus.
1649
1650 * lwlib.c (lw_set_main_areas): Use xm_set_main_areas().
1651 (lw_manage_resizing): Use xm_manage_resizing() for Emacs/Motif.
1652
1653 1994-09-25 Paul Reilly <pmr@geech.gnu.ai.mit.edu>
1654
1655 * lwlib-Xaw.c (xaw_create_main): New function to support the
1656 toolkit independent creation of the main Emacs widget. *
1657 lwlib-Xlw.c (xlw_create_menubar): When compiling under Emacs, set
1658 resizing resources to disable showGrip and to enable both
1659 resizeToPreferred and allowShellResize.
1660
1661 * lwlib-Xm.h: Declare xm_set_main_areas, xm_manage_resizing.
1662
1663 * lwlib-Xm.c (make_menu_in_widget): Add support for displaying a
1664 title in pop up menus.
1665 (make_main, xm_set_main_areas, xm_manage_resizing): New functions to
1666 create and manage a Motif Main Window widget.
1667
1668 * xlwmenu.c: Add #include <X11/ObjectP.h> for X11R4.
1669
1670 1994-09-18 Frederic Pierresteguy <F.Pierresteguy@frcl.bull.fr>
1671
1672 * lwlib-Xm.c (make_dialog): When there is more than two pushbuttons,
1673 set XmPACK_TIGHT and XmHORIZONTAL to the rowcolumn. Also add a
1674 margin of 10 pixels.
1675
1676 1994-09-16 Paul Reilly <pmr@geech.gnu.ai.mit.edu>
1677
1678 * lwlib-Xm.c (make_main): New function to support toolkit
1679 independent creation of the main Emacs widget.
1680 (make_destroyed_instance): Use safe_strdup() instead of strdup().
1681
1682 * lwlib-int.h: Declare safe_strdup.
1683
1684 * lwlib.c (lw_refigure_widget): New function. Handle geometry
1685 management inside lwlib instead of in Emacs.
1686 (lw_window_is_in_menubar): New function. Determine if the pointer
1687 is in a menubar.
1688 (lw_set_main_areas): New function. Set the main window widgets for
1689 Motif.
1690
1691 * lwlib.h: Declare lw_refigure_widget(), lw_window_is_in_menubar(),
1692 lw_set_main_areas().
1693
1694 * xlwmenu.h: Define Xt{Ns,CS}howGrip, Xt{Nr,CR}esizeToPreferred, and
1695 Xt{Na,CA}llowResize.
1696
1697 * xlwmenu.c (Start): Use pop_up_menu() to post the submenus.
1698 (Select): Remove the pointer grab when popping down a menubar submenu.
1699 (pop_up_menu): Handle popping up submenus from a menubar, i.e. when
1700 the menu widget parent is not a shell widget.
1701
1702 1994-08-25 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1703
1704 * xlwmenu.c (pop_up_menu): Clear next_release_must_exit.
1705 (Start): Clear next_release_must_exit when popping up the menu.
1706
1707 1994-08-24 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1708
1709 * xlwmenu.c (Start): Set menu_post_event or next_release_must_exit.
1710 (Select): Do nothing if the menu should be left posted.
1711
1712 1994-07-28 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1713
1714 * xlwmenu.c (make_windows_if_needed, pop_up_menu):
1715 Enable mouse motion events even when no button down.
1716
1717 1994-07-11 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1718
1719 * xlwmenu.c (pointer_grabbed): New variable.
1720 (pop_up_menu): Set the variable.
1721 (XlwMenuDestroy): Maybe call XtUngrabPointer.
1722
1723 1994-05-25 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1724
1725 * lwlib.c (max): Function deleted. Define as macro instead,
1726 but only if not already defined.
1727
1728 1994-05-20 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1729
1730 * xlwmenu.c (xlwMenuResources): Use XtRDimension for shadow thickness.
1731
1732 1994-05-19 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1733
1734 * lwlib-Xaw.c (xaw_pop_instance): Use XtSetValues, not XtMoveWidget.
1735
1736 1994-05-16 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1737
1738 * lwlib.c (lwlib_memset: New function, used instead of memset.
1739 All callers changed.
1740 * lwlib.c (lwlib_bcopy): New function.
1741 * lwlib-utils.c (XtApplyToWidgets): Use lwlib_bcopy.
1742
1743 * lwlib.c: Delete definitions for use of alloca.
1744 (name_to_widget): Use xmalloc, not alloca.
1745
1746 1994-05-12 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1747
1748 * xlwmenu.c (XlwMenuDestroy): Set new var submenu_destroyed.
1749 (XlwMenuRedisplay): If it's set, truncate the old_depth to 1.
1750
1751 1994-05-09 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1752
1753 * xrdb-cpp.c: Don't include string.h, unistd.h, stdlib.h.
1754 * lwlib-Xaw.c: Don't include string.h, unistd.h, stdlib.h.
1755 * lwlib-utils.c (XtApplyToWidgets): Use bcopy, not memcpy.
1756 * lwlib-utils.c: Don't include string.h, unistd.h, stdlib.h, memory.h.
1757 * xlwmenu.c: Don't include string.h, unistd.h, stdlib.h.
1758 * lwlib.c: Don't include string.h, unistd.h, stdlib.h.
1759 (safe_strdup): No longer static.
1760 * lwlib-Xm.c: Use safe_strdup, not strdup.
1761
1762 * xlwmenu.c (string_width): No longer static.
1763
1764 1994-05-06 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1765
1766 * xlwmenuP.h (struct _XlwMenu_part): Use Pixel and Cursor
1767 for foreground and cursor_shape fields.
1768
1769 * xlwmenu.c (XlwMenuSetValues): Check for change of font.
1770
1771 1994-04-28 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1772
1773 * Makefile.in: Delete all SRCS variables (unused).
1774 (lwlib.o, xrdb-cpp.o): Mention srcdir in dep.
1775
1776 1994-04-15 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1777
1778 * Makefile.in (ALL_CFLAGS): Don't define THIS_IS_X11R4.
1779
1780 * xrdb.c: Define HAVE_X11R5 as in xterm.h.
1781 Include X11/Xlib.h, X11/cursorfont.h and X11/Xutil.h.
1782 (_XtDisplayInitialize): Test HAVE_X11R5.
1783
1784 * dispatch.c: Define HAVE_X11R5 as in xterm.h.
1785 Include X11/Xlib.h, X11/cursorfont.h and X11/Xutil.h.
1786 (_XtConvertTypeToMask): Conditionalize on HAVE_X11R5.
1787 (WouldDispatchEvent): Likewise.
1788
1789 1994-04-12 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1790
1791 * lwlib-Xaw.c (xaw_generic_callback): Declare without arg names.
1792
1793 1994-04-01 Frederic Pierresteguy (fp@hal.gnu.ai.mit.edu)
1794
1795 * lwlib-Xaw.c (make_dialog): Don't allow any geometry request from the
1796 user.
1797
1798 1994-03-22 Frederic Pierresteguy (fp@mole.gnu.ai.mit.edu)
1799
1800 * xlwmenu.c (XlwMenuResize): Don't allow the popup menu to resize
1801 itself. Therefore reset the size to its initial value.
1802
1803 1994-03-19 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1804
1805 * lwlib-Xaw.c (xaw_update_one_widget): Finish replacing XtVaSetValues.
1806 Don't test for scrollbar widget.
1807
1808 1994-03-14 Frederic Pierresteguy (fp@gnu.ai.mit.edu)
1809
1810 * lwlib-int.h: Declare lw_get_widget_info.
1811
1812 * lwlib.c (lw_get_widget_info): Comment out arg in function decl.
1813
1814 * lwlib-Xaw.h: Comment out args in function decls.
1815 * lwlib-Xaw.c: Convert all function definitions to non-prototype K&R.
1816 (xaw_update_one_widget - case dialogWidgetClass): Call XtSetValues,
1817 not XtVaSetValues.
1818
1819 1994-03-11 Frederic Pierresteguy (F.Pierresteguy@frcl.bull.fr)
1820
1821 * xlwmenu.c (display_menu_item): Modify parameters to draw_arrow to
1822 right justify the arrow in the pane.
1823
1824 * lwlib.c: If not defined USE_MOTIF and defined USE_LUCID then
1825 define USE_XAW.
1826
1827 * Makefile.in (LUCID_SRCS, LUCID_OBJS): Add the target lwlib-Xaw.[oc].
1828
1829 * lwlib.c, lwlib-int.h: Merged from Lucid 19.9 release.
1830 * lwlib.c (_AIX): Replace the AIXV3 directive.
1831 (USE_XAW): New macro to conditionalize the use of the athena toolkit.
1832 (lw_get_widget_info): New function.
1833 (set_one_value): Handle USE_XAW.
1834 (instanciate_widget_instance): Likewise.
1835 (destroy_one_instance): Likewise.
1836 (lw_pop_all_widgets): Likewise.
1837 (lw_pop_down_all_widgets): Likewise.
1838 (get_one_value): Likewise.
1839
1840 * lwlib-Xaw.c, lwlib-Xaw.h: New files.
1841
1842 1994-02-23 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1843
1844 * xlwmenu.c (XlwMenuInitialize, XlwMenuDestroy): Undo previous changes.
1845
1846 * lwlib-Xlw.c (xlw_create_menubar, xlw_create_popup_menu):
1847 Use XtCreate..., not XtVaCreate...
1848 No need to copy instance->info->val any more.
1849 (xlw_update_one_widget): Use XtSetValues, not XtVaSetValues.
1850
1851 1994-02-21 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1852
1853 * xlwmenu.c (pop_up_menu): Call XtUngrabPointer if XtGrabPointer fails.
1854
1855 1994-02-19 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1856
1857 * Makefile.in (xrdb-cpp.o, lwlib.o): Put ALL_CFLAGS after other flags.
1858
1859 * lwlib-Xlw.c (xlw_create_menubar): Don't call free_widget_value.
1860 Use malloc for allocation.
1861 (xlw_create_popup_menu): Likewise.
1862
1863 1994-02-18 Frederic Pierresteguy (fp@mole.gnu.ai.mit.edu)
1864
1865 * lwlib.c (malloc_cpt): New static variable.
1866 (malloc_widget_value): Increment malloc_cpt when allocating a cell.
1867 (free_widget_value): Really free the cells when the number of
1868 allocated ones is bigger than 25.
1869
1870 * lwlib-Xlw.c (xlw_create_menubar): Call malloc_widget_value and
1871 free_widget_value instead of XtMalloc and XtFree.
1872 (xlw_create_popup_menu): Likewise.
1873
1874 1994-02-17 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1875
1876 * Makefile.in (ALL_CFLAGS): Specify -Demacs.
1877
1878 * xlwmenu.c (pop_up_menu) [emacs]: Catch and ignore X protocol errors
1879 in XtGrabPointer.
1880
1881 1994-02-17 Frederic Pierresteguy (fp@mole.gnu.ai.mit.edu)
1882
1883 * lwlib-Xlw.c (xlw_create_popup_menu): Pass tem to
1884 XtVaCreateManagedWidget, not instance->info->val.
1885 (xlw_create_menubar): Likewise.
1886
1887 1994-02-15 Frederic Pierresteguy (fp@mole.gnu.ai.mit.edu)
1888
1889 * lwlib-Xlw.c (xlw_create_popup_menu): Copy instance->info->val
1890 before calling XtVaCreateManagedWidget and then free the copy.
1891 (xlw_create_menubar): Likewise.
1892
1893 1994-02-11 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1894
1895 * xlwmenu.c (XlwMenuInitialize): Copy mw->menu.contents.
1896 (XlwMenuDestroy): Free mw->menu.contents.
1897
1898 1994-02-09 Frederic Pierresteguy (fp@mole.gnu.ai.mit.edu)
1899
1900 * xlwmenu.c (display_menu_item): Call draw_shadow_rectangle to make
1901 visible/invisible the selection of the menubar items.
1902
1903 1994-02-08 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
1904
1905 * lwlib.c (strcasecmp): Renamed to my_strcasecmp.
1906 (find_in_table): Changed only caller.
1907
1908 1994-02-04 Frederic Pierresteguy (fp@mole.gnu.ai.mit.edu)
1909
1910 * xlwmenu.c (display_menu_item): When dealing with the menubar,
1911 always call XDrawRectangle to clear the selection after popping down
1912 the pulldown menu.
1913
1914 1994-02-01 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1915
1916 * lwlib.c: Include ctype.h.
1917
1918 1994-01-31 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1919
1920 * lwlib.c (strcasecmp): New function.
1921
1922 1994-01-30 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1923
1924 * xlwmenu.c, lwlib.c, lwlib-Xlw.c, lwlib-utils.c:
1925 Convert all function definitions to non-prototype K&R.
1926
1927 * lwlib-Xlw.h: Comment out args in function decls.
1928 * lwlib.h: Comment out args in function decls.
1929 * lwlib-utils.h: Comment out args in function decls.
1930
1931 1994-01-29 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1932
1933 * lwlib.c: Include StringDefs.h after lwlib.h.
1934
1935 1994-01-22 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
1936
1937 * Makefile (xrdb-cpp.o, lwlib.o): Use $(srcdir) and file name
1938 instead of $*.
1939 (dispatch.o, xrdb.o, lwlib-Xm.o): Rules removed; they were
1940 superfluous and didn't work when configured outside srcdir.
1941 The implicit .c.o rule works fine.
1942
1943 1994-01-21 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1944
1945 * xlwmenu.c (resource_widget_value): Avoid using strdup.
1946
1947 1994-01-18 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1948
1949 * Makefile.in: New file.
1950
1951 * lwlib-Xolmb.c: Renamed from lwlib-Xol-mb.c.
1952 * lwlib-Xolmb.h: Renamed from lwlib-Xol-mb.h.
1953 * lwlib-XolmbP.h: Renamed from lwlib-Xol-mbP.h.
1954
1955 * lwlib-int.h: Renamed from lwlib-internal.h.
1956
1957
1958
1959 ;; Local Variables:
1960 ;; coding: utf-8
1961 ;; End:
1962
1963 Copyright (C) 1995-1999, 2001-2015 Free Software Foundation, Inc.
1964
1965 This file is part of GNU Emacs.
1966
1967 GNU Emacs is free software: you can redistribute it and/or modify
1968 it under the terms of the GNU General Public License as published by
1969 the Free Software Foundation, either version 3 of the License, or
1970 (at your option) any later version.
1971
1972 GNU Emacs is distributed in the hope that it will be useful,
1973 but WITHOUT ANY WARRANTY; without even the implied warranty of
1974 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1975 GNU General Public License for more details.
1976
1977 You should have received a copy of the GNU General Public License
1978 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.