]> www.fi.muni.cz Git - evince.git/blobdiff - shell/ev-document-types.c
Updated Greek translation
[evince.git] / shell / ev-document-types.c
index d2078c52311fe591423ff6d919be316b1d5efbc8..23d940c22640e634c4bf97ce2e9cf26432496a4c 100644 (file)
@@ -123,18 +123,19 @@ ev_document_types_add_filters (GtkWidget *chooser, EvDocument *document)
        GList *mime_types;
        GtkFileFilter *filter;
        GtkFileFilter *default_filter;
        GList *mime_types;
        GtkFileFilter *filter;
        GtkFileFilter *default_filter;
+       GtkFileFilter *document_filter;
 
        if (document != NULL) {
                backend = ev_document_factory_get_backend (document);
        }
 
 
        if (document != NULL) {
                backend = ev_document_factory_get_backend (document);
        }
 
-       default_filter = filter = gtk_file_filter_new ();
+       default_filter = document_filter = filter = gtk_file_filter_new ();
        gtk_file_filter_set_name (filter, _("All Documents"));
        mime_types = ev_document_factory_get_all_mime_types ();
        file_filter_add_mime_list_and_free (filter, mime_types);
        gtk_file_filter_set_name (filter, _("All Documents"));
        mime_types = ev_document_factory_get_all_mime_types ();
        file_filter_add_mime_list_and_free (filter, mime_types);
-       gtk_file_filter_add_pixbuf_formats (filter);
        gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (chooser), filter);
 
        gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (chooser), filter);
 
+#ifdef ENABLE_PS
        if (document == NULL || backend == EV_BACKEND_PS) {
                default_filter = filter = gtk_file_filter_new ();
                gtk_file_filter_set_name (filter, _("PostScript Documents"));
        if (document == NULL || backend == EV_BACKEND_PS) {
                default_filter = filter = gtk_file_filter_new ();
                gtk_file_filter_set_name (filter, _("PostScript Documents"));
@@ -142,6 +143,7 @@ ev_document_types_add_filters (GtkWidget *chooser, EvDocument *document)
                file_filter_add_mime_list_and_free (filter, mime_types);
                gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (chooser), filter);
        }
                file_filter_add_mime_list_and_free (filter, mime_types);
                gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (chooser), filter);
        }
+#endif
 
        if (document == NULL || backend == EV_BACKEND_PDF) {
                default_filter = filter = gtk_file_filter_new ();
 
        if (document == NULL || backend == EV_BACKEND_PDF) {
                default_filter = filter = gtk_file_filter_new ();
@@ -151,12 +153,15 @@ ev_document_types_add_filters (GtkWidget *chooser, EvDocument *document)
                gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (chooser), filter);
        }
 
                gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (chooser), filter);
        }
 
+#ifdef ENABLE_PIXBUF
        if (document == NULL || backend == EV_BACKEND_PIXBUF) {
                default_filter = filter = gtk_file_filter_new ();
                gtk_file_filter_set_name (filter, _("Images"));
        if (document == NULL || backend == EV_BACKEND_PIXBUF) {
                default_filter = filter = gtk_file_filter_new ();
                gtk_file_filter_set_name (filter, _("Images"));
-               gtk_file_filter_add_pixbuf_formats (filter);
+               mime_types = ev_document_factory_get_mime_types (EV_BACKEND_PIXBUF);
+               file_filter_add_mime_list_and_free (filter, mime_types);
                gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (chooser), filter);
        }
                gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (chooser), filter);
        }
+#endif
 
 #ifdef ENABLE_DVI
        if (document == NULL || backend == EV_BACKEND_DVI) {
 
 #ifdef ENABLE_DVI
        if (document == NULL || backend == EV_BACKEND_DVI) {
@@ -178,10 +183,21 @@ ev_document_types_add_filters (GtkWidget *chooser, EvDocument *document)
        }
 #endif 
 
        }
 #endif 
 
+#ifdef ENABLE_COMICS
+       if (document == NULL || backend == EV_BACKEND_COMICS) {
+               default_filter = filter = gtk_file_filter_new ();
+               gtk_file_filter_set_name (filter, _("Comic Books"));
+               mime_types = ev_document_factory_get_mime_types (EV_BACKEND_COMICS);
+               file_filter_add_mime_list_and_free (filter, mime_types);
+               gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (chooser), filter);
+       }
+#endif 
+
        filter = gtk_file_filter_new ();
        gtk_file_filter_set_name (filter, _("All Files"));
        gtk_file_filter_add_pattern (filter, "*");
        gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (chooser), filter);
 
        filter = gtk_file_filter_new ();
        gtk_file_filter_set_name (filter, _("All Files"));
        gtk_file_filter_add_pattern (filter, "*");
        gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (chooser), filter);
 
-       gtk_file_chooser_set_filter (GTK_FILE_CHOOSER (chooser), default_filter);
+       gtk_file_chooser_set_filter (GTK_FILE_CHOOSER (chooser),
+                                    document == NULL ? document_filter : default_filter);
 }
 }