mirror of https://github.com/GNOME/gimp.git
show extensions in the filters menu.
2004-07-27 Sven Neumann <sven@gimp.org> * app/widgets/gimpfiledialog.c (gimp_file_dialog_add_filters): show extensions in the filters menu.
This commit is contained in:
parent
ca1d3bc2df
commit
a1ac37ed19
|
@ -1,3 +1,8 @@
|
||||||
|
2004-07-27 Sven Neumann <sven@gimp.org>
|
||||||
|
|
||||||
|
* app/widgets/gimpfiledialog.c (gimp_file_dialog_add_filters):
|
||||||
|
show extensions in the filters menu.
|
||||||
|
|
||||||
2004-07-27 Sven Neumann <sven@gimp.org>
|
2004-07-27 Sven Neumann <sven@gimp.org>
|
||||||
|
|
||||||
* libgimp/gimpbrushmenu.c
|
* libgimp/gimpbrushmenu.c
|
||||||
|
|
|
@ -313,7 +313,7 @@ gimp_file_dialog_add_filters (GimpFileDialog *dialog,
|
||||||
GSList *list;
|
GSList *list;
|
||||||
|
|
||||||
filter = gtk_file_filter_new ();
|
filter = gtk_file_filter_new ();
|
||||||
gtk_file_filter_set_name (filter, _("All Files"));
|
gtk_file_filter_set_name (filter, _("All Files (*.*)"));
|
||||||
gtk_file_filter_add_pattern (filter, "*");
|
gtk_file_filter_add_pattern (filter, "*");
|
||||||
gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (dialog), filter);
|
gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (dialog), filter);
|
||||||
gtk_file_chooser_set_filter (GTK_FILE_CHOOSER (dialog), filter);
|
gtk_file_chooser_set_filter (GTK_FILE_CHOOSER (dialog), filter);
|
||||||
|
@ -325,26 +325,37 @@ gimp_file_dialog_add_filters (GimpFileDialog *dialog,
|
||||||
if (file_proc->menu_paths && file_proc->extensions_list)
|
if (file_proc->menu_paths && file_proc->extensions_list)
|
||||||
{
|
{
|
||||||
const gchar *domain;
|
const gchar *domain;
|
||||||
gchar *label;
|
GString *label;
|
||||||
GSList *ext;
|
GSList *ext;
|
||||||
|
gboolean first = TRUE;
|
||||||
|
|
||||||
domain = plug_ins_locale_domain (gimp, file_proc->prog, NULL);
|
domain = plug_ins_locale_domain (gimp, file_proc->prog, NULL);
|
||||||
label = plug_in_proc_def_get_label (file_proc, domain);
|
|
||||||
|
label = g_string_new (plug_in_proc_def_get_label (file_proc, domain));
|
||||||
|
|
||||||
filter = gtk_file_filter_new ();
|
filter = gtk_file_filter_new ();
|
||||||
gtk_file_filter_set_name (filter, label);
|
|
||||||
g_free (label);
|
|
||||||
|
|
||||||
for (ext = file_proc->extensions_list;
|
for (ext = file_proc->extensions_list; ext; ext = g_slist_next (ext))
|
||||||
ext;
|
|
||||||
ext = g_slist_next (ext))
|
|
||||||
{
|
{
|
||||||
gchar *pattern = g_strdup_printf ("*.%s", (gchar *) ext->data);
|
const gchar *extension = ext->data;
|
||||||
|
gchar *pattern = g_strdup_printf ("*.%s", extension);
|
||||||
|
|
||||||
gtk_file_filter_add_pattern (filter, pattern);
|
gtk_file_filter_add_pattern (filter, pattern);
|
||||||
g_free (pattern);
|
g_free (pattern);
|
||||||
|
|
||||||
|
if (first)
|
||||||
|
{
|
||||||
|
g_string_append (label, " (*.");
|
||||||
|
first = FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
g_string_append (label, extension);
|
||||||
|
g_string_append (label, ext->next ? ", *." : ")");
|
||||||
|
}
|
||||||
|
|
||||||
|
gtk_file_filter_set_name (filter, label->str);
|
||||||
|
g_string_free (label, TRUE);
|
||||||
|
|
||||||
gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (dialog), filter);
|
gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (dialog), filter);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue