diff options
| author | Jan Djärv | 2004-11-13 23:29:11 +0000 |
|---|---|---|
| committer | Jan Djärv | 2004-11-13 23:29:11 +0000 |
| commit | b393528900a561200b14bd3c75d63f3bca1992ef (patch) | |
| tree | d08ca88c87ee35c65a7f4a66771f9c9b933494c3 /src | |
| parent | cd2531db72eaf9b3a704bda141f9ced898040ce2 (diff) | |
| download | emacs-b393528900a561200b14bd3c75d63f3bca1992ef.tar.gz emacs-b393528900a561200b14bd3c75d63f3bca1992ef.zip | |
* xfns.c (Fx_file_dialog): Call x_menu_in_use and x_menu_set_in_use.
Record unwind with clean_up_file_dialog.
* xterm.h: Declare x_menu_in_use, x_menu_set_in_use,
x_menu_wait_for_event.
* xmenu.c (x_menu_in_use, x_menu_set_in_use): New functions.
Diffstat (limited to 'src')
| -rw-r--r-- | src/ChangeLog | 12 | ||||
| -rw-r--r-- | src/xmenu.c | 19 | ||||
| -rw-r--r-- | src/xterm.h | 3 |
3 files changed, 33 insertions, 1 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 3a8260b0584..1544baf53c6 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,3 +1,15 @@ | |||
| 1 | 2004-11-14 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> | ||
| 2 | |||
| 3 | * gtkutil.c (pop_down_file_dialog): Add BLOCK_INPUT. | ||
| 4 | |||
| 5 | * xfns.c (Fx_file_dialog): Call x_menu_in_use and x_menu_set_in_use. | ||
| 6 | Record unwind with clean_up_file_dialog. | ||
| 7 | |||
| 8 | * xterm.h: Declare x_menu_in_use, x_menu_set_in_use, | ||
| 9 | x_menu_wait_for_event. | ||
| 10 | |||
| 11 | * xmenu.c (x_menu_in_use, x_menu_set_in_use): New functions. | ||
| 12 | |||
| 1 | 2004-11-13 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> | 13 | 2004-11-13 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> |
| 2 | 14 | ||
| 3 | * gtkutil.c (xg_file_sel_ok, xg_file_sel_cancel) | 15 | * gtkutil.c (xg_file_sel_ok, xg_file_sel_cancel) |
diff --git a/src/xmenu.c b/src/xmenu.c index c8c40a47256..38f101ec260 100644 --- a/src/xmenu.c +++ b/src/xmenu.c | |||
| @@ -1118,9 +1118,26 @@ on the left of the dialog box and all following items on the right. | |||
| 1118 | 1118 | ||
| 1119 | #ifndef MSDOS | 1119 | #ifndef MSDOS |
| 1120 | 1120 | ||
| 1121 | /* Return non-zero if a dialog or popup menu is already popped up. */ | ||
| 1122 | |||
| 1123 | int | ||
| 1124 | x_menu_in_use () | ||
| 1125 | { | ||
| 1126 | return ! NILP (menu_items_inuse); | ||
| 1127 | } | ||
| 1128 | |||
| 1129 | /* Set menu_items_inuse so no other popup menu or dialog is created. */ | ||
| 1130 | |||
| 1131 | void | ||
| 1132 | x_menu_set_in_use (in_use) | ||
| 1133 | int in_use; | ||
| 1134 | { | ||
| 1135 | menu_items_inuse = in_use ? Qt : Qnil; | ||
| 1136 | } | ||
| 1137 | |||
| 1121 | /* Wait for an X event to arrive or for a timer to expire. */ | 1138 | /* Wait for an X event to arrive or for a timer to expire. */ |
| 1122 | 1139 | ||
| 1123 | static void | 1140 | void |
| 1124 | x_menu_wait_for_event (void *data) | 1141 | x_menu_wait_for_event (void *data) |
| 1125 | { | 1142 | { |
| 1126 | extern EMACS_TIME timer_check P_ ((int)); | 1143 | extern EMACS_TIME timer_check P_ ((int)); |
diff --git a/src/xterm.h b/src/xterm.h index 5dd3ecfdef7..0738f847563 100644 --- a/src/xterm.h +++ b/src/xterm.h | |||
| @@ -1069,6 +1069,9 @@ extern void x_free_dpy_colors P_ ((Display *, Screen *, Colormap, | |||
| 1069 | 1069 | ||
| 1070 | /* Defined in xmenu.c */ | 1070 | /* Defined in xmenu.c */ |
| 1071 | 1071 | ||
| 1072 | extern int x_menu_in_use P_ ((void)); | ||
| 1073 | extern void x_menu_set_in_use P_ ((int)); | ||
| 1074 | extern void x_menu_wait_for_event P_ ((void *data)); | ||
| 1072 | extern void x_activate_menubar P_ ((struct frame *)); | 1075 | extern void x_activate_menubar P_ ((struct frame *)); |
| 1073 | extern int popup_activated P_ ((void)); | 1076 | extern int popup_activated P_ ((void)); |
| 1074 | extern void initialize_frame_menubar P_ ((struct frame *)); | 1077 | extern void initialize_frame_menubar P_ ((struct frame *)); |