Commit 46b0df7692a7b598954374cf8e3d44e5987d6366
1 parent
9055e808
Exists in
master
and in
1 other branch
Fixing bug on file selection dialog.
Showing
9 changed files
with
17 additions
and
75 deletions
Show diff stats
src/dialogs/linux/select.c
@@ -33,12 +33,14 @@ | @@ -33,12 +33,14 @@ | ||
33 | 33 | ||
34 | /*--[ Implement ]------------------------------------------------------------------------------------*/ | 34 | /*--[ Implement ]------------------------------------------------------------------------------------*/ |
35 | 35 | ||
36 | -gchar * v3270_select_file(GtkWidget *widget, const gchar *title, const gchar *button, GtkFileChooserAction action, const gchar *filename, const gchar *filter, ...) | 36 | +gchar * v3270_select_file(GtkWidget *widget, const gchar *title, const gchar *button, GtkFileChooserAction action, const gchar *filename) |
37 | { | 37 | { |
38 | gchar *rc = NULL; | 38 | gchar *rc = NULL; |
39 | 39 | ||
40 | #if GTK_CHECK_VERSION(3,20,0) | 40 | #if GTK_CHECK_VERSION(3,20,0) |
41 | 41 | ||
42 | + debug("%s action=%d",__FUNCTION__,(int) action); | ||
43 | + | ||
42 | GtkFileChooserNative *native = | 44 | GtkFileChooserNative *native = |
43 | gtk_file_chooser_native_new | 45 | gtk_file_chooser_native_new |
44 | ( | 46 | ( |
@@ -54,26 +56,6 @@ gchar * v3270_select_file(GtkWidget *widget, const gchar *title, const gchar *bu | @@ -54,26 +56,6 @@ gchar * v3270_select_file(GtkWidget *widget, const gchar *title, const gchar *bu | ||
54 | if(filename && *filename) | 56 | if(filename && *filename) |
55 | gtk_file_chooser_set_filename(GTK_FILE_CHOOSER(native),filename); | 57 | gtk_file_chooser_set_filename(GTK_FILE_CHOOSER(native),filename); |
56 | 58 | ||
57 | - // Setup filters | ||
58 | - va_list args; | ||
59 | - va_start (args, filter); | ||
60 | - while(filter) | ||
61 | - { | ||
62 | - const gchar * name = va_arg(args, const gchar *); | ||
63 | - if(!name) | ||
64 | - break; | ||
65 | - | ||
66 | - const gchar * pattern = va_arg(args, const gchar *); | ||
67 | - if(!pattern) | ||
68 | - break; | ||
69 | - | ||
70 | - GtkFileFilter *filter = gtk_file_filter_new(); | ||
71 | - gtk_file_filter_set_name(filter,name); | ||
72 | - gtk_file_filter_add_pattern(filter, pattern); | ||
73 | - gtk_file_chooser_add_filter(GTK_FILE_CHOOSER(native), filter); | ||
74 | - | ||
75 | - } | ||
76 | - va_end(args); | ||
77 | 59 | ||
78 | // Run dialog | 60 | // Run dialog |
79 | if(gtk_native_dialog_run(GTK_NATIVE_DIALOG (native)) == GTK_RESPONSE_ACCEPT) { | 61 | if(gtk_native_dialog_run(GTK_NATIVE_DIALOG (native)) == GTK_RESPONSE_ACCEPT) { |
@@ -84,6 +66,8 @@ gchar * v3270_select_file(GtkWidget *widget, const gchar *title, const gchar *bu | @@ -84,6 +66,8 @@ gchar * v3270_select_file(GtkWidget *widget, const gchar *title, const gchar *bu | ||
84 | 66 | ||
85 | #else | 67 | #else |
86 | 68 | ||
69 | + debug("%s action=%d",__FUNCTION__,(int) action); | ||
70 | + | ||
87 | GtkWidget * chooser = | 71 | GtkWidget * chooser = |
88 | gtk_file_chooser_dialog_new | 72 | gtk_file_chooser_dialog_new |
89 | ( | 73 | ( |
@@ -98,34 +82,12 @@ gchar * v3270_select_file(GtkWidget *widget, const gchar *title, const gchar *bu | @@ -98,34 +82,12 @@ gchar * v3270_select_file(GtkWidget *widget, const gchar *title, const gchar *bu | ||
98 | if(filename && *filename) | 82 | if(filename && *filename) |
99 | gtk_file_chooser_set_filename(GTK_FILE_CHOOSER(chooser),filename); | 83 | gtk_file_chooser_set_filename(GTK_FILE_CHOOSER(chooser),filename); |
100 | 84 | ||
101 | - // Setup filters | ||
102 | - va_list args; | ||
103 | - va_start (args, filter); | ||
104 | - while(filter) | ||
105 | - { | ||
106 | - const gchar * name = va_arg(args, const gchar *); | ||
107 | - if(!name) | ||
108 | - break; | ||
109 | - | ||
110 | - const gchar * pattern = va_arg(args, const gchar *); | ||
111 | - if(!pattern) | ||
112 | - break; | ||
113 | - | ||
114 | - GtkFileFilter *filter = gtk_file_filter_new(); | ||
115 | - gtk_file_filter_set_name(filter,name); | ||
116 | - gtk_file_filter_add_pattern(filter, pattern); | ||
117 | - gtk_file_chooser_add_filter(GTK_FILE_CHOOSER(chooser), filter); | ||
118 | - | ||
119 | - } | ||
120 | - va_end(args); | ||
121 | - | ||
122 | if(gtk_dialog_run(GTK_DIALOG(chooser)) == GTK_RESPONSE_ACCEPT) { | 85 | if(gtk_dialog_run(GTK_DIALOG(chooser)) == GTK_RESPONSE_ACCEPT) { |
123 | rc = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(chooser)); | 86 | rc = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(chooser)); |
124 | } | 87 | } |
125 | 88 | ||
126 | gtk_widget_destroy(chooser); | 89 | gtk_widget_destroy(chooser); |
127 | 90 | ||
128 | - | ||
129 | #endif // GTK 3.20 | 91 | #endif // GTK 3.20 |
130 | 92 | ||
131 | return rc; | 93 | return rc; |
src/dialogs/save/save.c
@@ -113,9 +113,7 @@ static void icon_press(GtkEntry G_GNUC_UNUSED(*entry), G_GNUC_UNUSED GtkEntryIco | @@ -113,9 +113,7 @@ static void icon_press(GtkEntry G_GNUC_UNUSED(*entry), G_GNUC_UNUSED GtkEntryIco | ||
113 | _( "Select destination file"), | 113 | _( "Select destination file"), |
114 | _("Select"), | 114 | _("Select"), |
115 | GTK_FILE_CHOOSER_ACTION_SAVE, | 115 | GTK_FILE_CHOOSER_ACTION_SAVE, |
116 | - gtk_entry_get_text(GTK_ENTRY(widget->filename)), | ||
117 | - N_("All files"), "*.*", | ||
118 | - NULL | 116 | + gtk_entry_get_text(GTK_ENTRY(widget->filename)) |
119 | ); | 117 | ); |
120 | 118 | ||
121 | if(filename && *filename) { | 119 | if(filename && *filename) { |
src/dialogs/transfer.c
@@ -72,9 +72,7 @@ static void save_activity_clicked(GtkWidget *button, GObject *activity) | @@ -72,9 +72,7 @@ static void save_activity_clicked(GtkWidget *button, GObject *activity) | ||
72 | _("Save transfer activity to file"), | 72 | _("Save transfer activity to file"), |
73 | _("Save"), | 73 | _("Save"), |
74 | GTK_FILE_CHOOSER_ACTION_SAVE, | 74 | GTK_FILE_CHOOSER_ACTION_SAVE, |
75 | - NULL, | ||
76 | - N_("XML file"), "*.xml", | ||
77 | - NULL ); | 75 | + NULL); |
78 | 76 | ||
79 | if(filename) | 77 | if(filename) |
80 | { | 78 | { |
src/dialogs/windows/select.c
@@ -145,7 +145,7 @@ gchar * v3270_select_file(GtkWidget *widget, const gchar *title, const gchar *bu | @@ -145,7 +145,7 @@ gchar * v3270_select_file(GtkWidget *widget, const gchar *title, const gchar *bu | ||
145 | } | 145 | } |
146 | */ | 146 | */ |
147 | 147 | ||
148 | -gchar * v3270_select_file(GtkWidget *widget, const gchar *title, const gchar *button, GtkFileChooserAction action, const gchar *filename, const gchar *filter, ...) | 148 | +gchar * v3270_select_file(GtkWidget *widget, const gchar *title, const gchar *button, GtkFileChooserAction action, const gchar *filename) |
149 | { | 149 | { |
150 | gchar *rc = NULL; | 150 | gchar *rc = NULL; |
151 | 151 |
src/filetransfer/activitylist.c
@@ -382,9 +382,7 @@ | @@ -382,9 +382,7 @@ | ||
382 | widget, | 382 | widget, |
383 | _("Load queue from file"), | 383 | _("Load queue from file"), |
384 | _("Load"), GTK_FILE_CHOOSER_ACTION_OPEN, | 384 | _("Load"), GTK_FILE_CHOOSER_ACTION_OPEN, |
385 | - "", | ||
386 | - N_("XML file"), "*.xml", | ||
387 | - NULL ); | 385 | + ""); |
388 | 386 | ||
389 | if(filename) { | 387 | if(filename) { |
390 | g_free(list->filename); | 388 | g_free(list->filename); |
@@ -454,9 +452,7 @@ | @@ -454,9 +452,7 @@ | ||
454 | _("Save queue to file"), | 452 | _("Save queue to file"), |
455 | _("Save"), | 453 | _("Save"), |
456 | GTK_FILE_CHOOSER_ACTION_SAVE, | 454 | GTK_FILE_CHOOSER_ACTION_SAVE, |
457 | - list->filename, | ||
458 | - N_("XML file"), "*.xml", | ||
459 | - NULL ); | 455 | + list->filename); |
460 | 456 | ||
461 | if(filename) { | 457 | if(filename) { |
462 | g_free(list->filename); | 458 | g_free(list->filename); |
src/filetransfer/settings.c
@@ -208,10 +208,7 @@ static void open_select_file_dialog(GtkEntry *entry, G_GNUC_UNUSED GtkEntryIconP | @@ -208,10 +208,7 @@ static void open_select_file_dialog(GtkEntry *entry, G_GNUC_UNUSED GtkEntryIconP | ||
208 | _("Select local file"), | 208 | _("Select local file"), |
209 | _("Select"), | 209 | _("Select"), |
210 | GTK_FILE_CHOOSER_ACTION_OPEN, | 210 | GTK_FILE_CHOOSER_ACTION_OPEN, |
211 | - gtk_entry_get_text(entry), | ||
212 | - N_("All files"), "*.*", | ||
213 | - N_("Text files"), "*.txt", | ||
214 | - NULL | 211 | + gtk_entry_get_text(entry) |
215 | ); | 212 | ); |
216 | 213 | ||
217 | if(filename) { | 214 | if(filename) { |
src/filetransfer/v3270ft.c
@@ -196,9 +196,7 @@ static void load_file(G_GNUC_UNUSED GtkButton *button, v3270ft *dialog) { | @@ -196,9 +196,7 @@ static void load_file(G_GNUC_UNUSED GtkButton *button, v3270ft *dialog) { | ||
196 | GTK_WIDGET(dialog), | 196 | GTK_WIDGET(dialog), |
197 | _("Load queue from file"), | 197 | _("Load queue from file"), |
198 | _("Load"), GTK_FILE_CHOOSER_ACTION_OPEN, | 198 | _("Load"), GTK_FILE_CHOOSER_ACTION_OPEN, |
199 | - "", | ||
200 | - N_("XML file"), "*.xml", | ||
201 | - NULL ); | 199 | + ""); |
202 | 200 | ||
203 | if(filename) { | 201 | if(filename) { |
204 | v3270ft_load(GTK_WIDGET(dialog),filename); | 202 | v3270ft_load(GTK_WIDGET(dialog),filename); |
@@ -216,9 +214,7 @@ static void save_file(G_GNUC_UNUSED GtkButton *button, v3270ft *dialog) { | @@ -216,9 +214,7 @@ static void save_file(G_GNUC_UNUSED GtkButton *button, v3270ft *dialog) { | ||
216 | _("Save queue to file"), | 214 | _("Save queue to file"), |
217 | _("Save"), | 215 | _("Save"), |
218 | GTK_FILE_CHOOSER_ACTION_SAVE, | 216 | GTK_FILE_CHOOSER_ACTION_SAVE, |
219 | - "", | ||
220 | - N_("XML file"), "*.xml", | ||
221 | - NULL ); | 217 | + ""); |
222 | 218 | ||
223 | if(filename) { | 219 | if(filename) { |
224 | v3270ft_save(GTK_WIDGET(dialog),filename); | 220 | v3270ft_save(GTK_WIDGET(dialog),filename); |
@@ -299,17 +295,14 @@ static gboolean spin_format(GtkSpinButton *spin, G_GNUC_UNUSED gpointer data) { | @@ -299,17 +295,14 @@ static gboolean spin_format(GtkSpinButton *spin, G_GNUC_UNUSED gpointer data) { | ||
299 | static void icon_press(G_GNUC_UNUSED GtkEntry *entry, G_GNUC_UNUSED GtkEntryIconPosition icon_pos, G_GNUC_UNUSED GdkEvent *event, v3270ft *dialog) { | 295 | static void icon_press(G_GNUC_UNUSED GtkEntry *entry, G_GNUC_UNUSED GtkEntryIconPosition icon_pos, G_GNUC_UNUSED GdkEvent *event, v3270ft *dialog) { |
300 | //#endif // WIN32 | 296 | //#endif // WIN32 |
301 | 297 | ||
302 | - debug("%s",__FUNCTION__); | 298 | + debug("%s: action=%d",__FUNCTION__, (int) GTK_FILE_CHOOSER_ACTION_OPEN); |
303 | 299 | ||
304 | gchar *filename = v3270_select_file( | 300 | gchar *filename = v3270_select_file( |
305 | GTK_WIDGET(dialog), | 301 | GTK_WIDGET(dialog), |
306 | _("Select local file"), | 302 | _("Select local file"), |
307 | _("Select"), | 303 | _("Select"), |
308 | GTK_FILE_CHOOSER_ACTION_OPEN, | 304 | GTK_FILE_CHOOSER_ACTION_OPEN, |
309 | - gtk_entry_get_text(dialog->local), | ||
310 | - N_("All files"), "*.*", | ||
311 | - N_("Text files"), "*.txt", | ||
312 | - NULL ); | 305 | + gtk_entry_get_text(dialog->local)); |
313 | 306 | ||
314 | if(filename) { | 307 | if(filename) { |
315 | 308 |
src/include/internals.h
@@ -142,7 +142,7 @@ | @@ -142,7 +142,7 @@ | ||
142 | G_GNUC_INTERNAL void v3270_activity_list_save(GtkWidget *widget); | 142 | G_GNUC_INTERNAL void v3270_activity_list_save(GtkWidget *widget); |
143 | G_GNUC_INTERNAL void v3270_activity_list_save_as(GtkWidget *widget); | 143 | G_GNUC_INTERNAL void v3270_activity_list_save_as(GtkWidget *widget); |
144 | 144 | ||
145 | - G_GNUC_INTERNAL gchar * v3270_select_file(GtkWidget *widget, const gchar *title, const gchar *button, GtkFileChooserAction action, const gchar *filename, const gchar *filter, ... ) G_GNUC_NULL_TERMINATED; | 145 | + G_GNUC_INTERNAL gchar * v3270_select_file(GtkWidget *widget, const gchar *title, const gchar *button, GtkFileChooserAction action, const gchar *filename); |
146 | 146 | ||
147 | #if ! GTK_CHECK_VERSION(3,16,0) | 147 | #if ! GTK_CHECK_VERSION(3,16,0) |
148 | G_GNUC_INTERNAL void gtk_text_view_set_monospace (GtkTextView *text_view, gboolean monospace); | 148 | G_GNUC_INTERNAL void gtk_text_view_set_monospace (GtkTextView *text_view, gboolean monospace); |
src/trace/trace.c
@@ -497,9 +497,7 @@ | @@ -497,9 +497,7 @@ | ||
497 | _("Save trace to file"), | 497 | _("Save trace to file"), |
498 | _("Save"), | 498 | _("Save"), |
499 | GTK_FILE_CHOOSER_ACTION_SAVE, | 499 | GTK_FILE_CHOOSER_ACTION_SAVE, |
500 | - trace->filename, | ||
501 | - N_("Text file"), "*.txt", | ||
502 | - NULL | 500 | + trace->filename |
503 | ); | 501 | ); |
504 | 502 | ||
505 | if(filename) { | 503 | if(filename) { |