Mercurial > emacs
changeset 67761:5b8799d65159
* xfns.c (Fx_uses_old_gtk_dialog): New function.
* gtkutil.c (xg_uses_old_file_dialog): New function.
(xg_get_file_name): Use xg_uses_old_file_dialog.
* gtkutil.h: Declare xg_uses_old_file_dialog.
author | Jan Djärv <jan.h.d@swipnet.se> |
---|---|
date | Fri, 23 Dec 2005 11:34:13 +0000 |
parents | 9c3504ae6060 |
children | 31f77129bc92 |
files | src/ChangeLog src/gtkutil.c src/gtkutil.h src/xfns.c |
diffstat | 4 files changed, 54 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/src/ChangeLog Fri Dec 23 08:40:31 2005 +0000 +++ b/src/ChangeLog Fri Dec 23 11:34:13 2005 +0000 @@ -1,3 +1,12 @@ +2005-12-23 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xfns.c (Fx_uses_old_gtk_dialog): New function. + + * gtkutil.c (xg_uses_old_file_dialog): New function. + (xg_get_file_name): Use xg_uses_old_file_dialog. + + * gtkutil.h: Declare xg_uses_old_file_dialog. + 2005-12-22 Richard M. Stallman <rms@gnu.org> * xmenu.c (xmenu_show): Call inhibit_garbage_collection.
--- a/src/gtkutil.c Fri Dec 23 08:40:31 2005 +0000 +++ b/src/gtkutil.c Fri Dec 23 11:34:13 2005 +0000 @@ -1155,6 +1155,27 @@ /*********************************************************************** File dialog functions ***********************************************************************/ +/* Return non-zero if the old file selection dialog is being used. + Return zero if not. */ + +int +xg_uses_old_file_dialog () +{ +#ifdef HAVE_GTK_FILE_BOTH + extern int x_use_old_gtk_file_dialog; + return x_use_old_gtk_file_dialog; +#else /* ! HAVE_GTK_FILE_BOTH */ + +#ifdef HAVE_GTK_FILE_SELECTION_NEW + return 1; +#else + return 0; +#endif + +#endif /* ! HAVE_GTK_FILE_BOTH */ +} + + /* Function that is called when the file dialog pops down. W is the dialog widget, RESPONSE is the response code. USER_DATA is what we passed in to g_signal_connect (pointer to int). */ @@ -1343,7 +1364,6 @@ char *fn = 0; int filesel_done = 0; xg_get_file_func func; - extern int x_use_old_gtk_file_dialog; #if defined (HAVE_GTK_AND_PTHREAD) && defined (__SIGRTMIN) /* I really don't know why this is needed, but without this the GLIBC add on @@ -1354,7 +1374,7 @@ #ifdef HAVE_GTK_FILE_BOTH - if (x_use_old_gtk_file_dialog) + if (xg_uses_old_file_dialog ()) w = xg_get_file_with_selection (f, prompt, default_filename, mustmatch_p, only_dir_p, &func); else
--- a/src/gtkutil.h Fri Dec 23 08:40:31 2005 +0000 +++ b/src/gtkutil.h Fri Dec 23 11:34:13 2005 +0000 @@ -132,6 +132,8 @@ extern widget_value *malloc_widget_value P_ ((void)); extern void free_widget_value P_ ((widget_value *)); +extern int xg_uses_old_file_dialog P_ ((void)); + extern char *xg_get_file_name P_ ((FRAME_PTR f, char *prompt, char *default_filename,
--- a/src/xfns.c Fri Dec 23 08:40:31 2005 +0000 +++ b/src/xfns.c Fri Dec 23 11:34:13 2005 +0000 @@ -5236,8 +5236,27 @@ File selection dialog ***********************************************************************/ +DEFUN ("x-uses-old-gtk-dialog", Fx_uses_old_gtk_dialog, + Sx_uses_old_gtk_dialog, + 0, 0, 0, + doc: /* Return t if the old Gtk+ file selection dialog is used. */) + () +{ +#ifdef USE_GTK + extern int use_dialog_box; + extern int use_file_dialog; + + if (use_dialog_box + && use_file_dialog + && have_menus_p () + && xg_uses_old_file_dialog ()) + return Qt; +#endif + return Qnil; +} + + #ifdef USE_MOTIF - /* Callback for "OK" and "Cancel" on file selection dialog. */ static void @@ -5857,6 +5876,7 @@ last_show_tip_args = Qnil; staticpro (&last_show_tip_args); + defsubr (&Sx_uses_old_gtk_dialog); #if defined (USE_MOTIF) || defined (USE_GTK) defsubr (&Sx_file_dialog); #endif