diff options
author | Jan Djärv <[email protected]> | 2006-09-02 18:10:15 +0000 |
---|---|---|
committer | Jan Djärv <[email protected]> | 2006-09-02 18:10:15 +0000 |
commit | 4f3097d8bcc4faa2abda36177161e3d6caf3b433 (patch) | |
tree | cca3fd3b2a7a9ad0cc3f75997f8f8288377ecb9f /src | |
parent | 655ea21ca38fc769588027b2e8097c1edda6f19d (diff) |
* gtkutil.c (xg_get_file_with_chooser): Change file chooser message
for writing files. Call gtk_file_chooser_set_current_name to keep
default filename.
Diffstat (limited to 'src')
-rw-r--r-- | src/ChangeLog | 4 | ||||
-rw-r--r-- | src/gtkutil.c | 27 |
2 files changed, 23 insertions, 8 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 76a292d43b..3e93d014a1 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,5 +1,9 @@ 2006-09-02 Jan Dj,Ad(Brv <[email protected]> + * gtkutil.c (xg_get_file_with_chooser): Change file chooser message + for writing files. Call gtk_file_chooser_set_current_name to keep + default filename. + * minibuf.c (Finternal_complete_buffer): Move after DEFUN:s it calls 2006-09-02 Jindrich Makovicka <[email protected]> (tiny change) diff --git a/src/gtkutil.c b/src/gtkutil.c index 2a6ed9d152..172c7b94a6 100644 --- a/src/gtkutil.c +++ b/src/gtkutil.c @@ -1327,8 +1327,12 @@ xg_get_file_with_chooser (f, prompt, default_filename, if (action != GTK_FILE_CHOOSER_ACTION_SAVE) strcat (message, "\nType C-l to display a file name text entry box.\n"); strcat (message, "\nIf you don't like this file selector, customize " - "use-file-dialog\nto turn it off, or type C-x C-f to visit files."); - + "use-file-dialog\nto turn it off, or type "); + if (action != GTK_FILE_CHOOSER_ACTION_SAVE) + strcat (message, "C-x C-f to visit files."); + else + strcat (message, "C-x C-w to write files."); + wmessage = gtk_label_new (message); gtk_widget_show (wmessage); gtk_box_pack_start (GTK_BOX (wbox), wtoggle, FALSE, FALSE, 0); @@ -1340,6 +1344,7 @@ xg_get_file_with_chooser (f, prompt, default_filename, Lisp_Object file; struct gcpro gcpro1; GCPRO1 (file); + char *utf8_filename; file = build_string (default_filename); @@ -1347,14 +1352,20 @@ xg_get_file_with_chooser (f, prompt, default_filename, an absolute name starting with /. */ if (default_filename[0] != '/') file = Fexpand_file_name (file, Qnil); - - default_filename = SSDATA (file); - if (Ffile_directory_p (file)) + + utf8_filename = SSDATA (ENCODE_UTF_8 (file)); + if (! NILP (Ffile_directory_p (file))) gtk_file_chooser_set_current_folder (GTK_FILE_CHOOSER (filewin), - default_filename); + utf8_filename); else - gtk_file_chooser_set_filename (GTK_FILE_CHOOSER (filewin), - default_filename); + { + char *cp = strrchr (utf8_filename, '/'); + if (cp) ++cp; + else cp = utf8_filename; + gtk_file_chooser_set_filename (GTK_FILE_CHOOSER (filewin), + utf8_filename); + gtk_file_chooser_set_current_name (GTK_FILE_CHOOSER (filewin), cp); + } UNGCPRO; } |