X-Git-Url: https://www.fi.muni.cz/~kas/git//home/kas/public_html/git/?a=blobdiff_plain;ds=inline;f=shell%2Fev-application.c;h=a1dec925a8d1b4af9417b951f9338120a199d7d6;hb=f06e050d41051f1ea95b40981aee32ef8e0b0bae;hp=2a89eaa151a719b0ed6999690bceae87bcb8ff0d;hpb=69d92c409d333e5dd9cc82537c0834b201487c60;p=evince.git diff --git a/shell/ev-application.c b/shell/ev-application.c index 2a89eaa1..a1dec925 100644 --- a/shell/ev-application.c +++ b/shell/ev-application.c @@ -28,10 +28,7 @@ #include #include #include -#include - -#include -#include +#include struct _EvApplicationPrivate { GList *windows; @@ -67,7 +64,7 @@ window_destroy_cb (GtkObject *object, gpointer user_data) g_list_remove (application->priv->windows, object); if (application->priv->windows == NULL) - bonobo_main_quit (); + gtk_main_quit (); } EvWindow * @@ -116,8 +113,7 @@ ev_application_open (EvApplication *application, GError *err) { EvWindow *ev_window; GtkWidget *chooser; - GtkFileFilter *both_filter, *pdf_filter, *ps_filter, *all_filter; - + GtkFileFilter *both_filter, *pdf_filter, *ps_filter, *pixbuf_filter, *all_filter; ev_window = ev_application_get_empty_window (application); @@ -133,12 +129,16 @@ ev_application_open (EvApplication *application, GError *err) gtk_file_filter_set_name (both_filter, _("PostScript and PDF Documents")); gtk_file_filter_add_mime_type (both_filter, "application/postscript"); + gtk_file_filter_add_mime_type (both_filter, "application/x-gzpostscript"); + gtk_file_filter_add_mime_type (both_filter, "image/x-eps"); gtk_file_filter_add_mime_type (both_filter, "application/pdf"); gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (chooser), both_filter); ps_filter = gtk_file_filter_new (); gtk_file_filter_set_name (ps_filter, _("PostScript Documents")); gtk_file_filter_add_mime_type (ps_filter, "application/postscript"); + gtk_file_filter_add_mime_type (both_filter, "application/x-gzpostscript"); + gtk_file_filter_add_mime_type (ps_filter, "image/x-eps"); gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (chooser), ps_filter); pdf_filter = gtk_file_filter_new (); @@ -146,11 +146,16 @@ ev_application_open (EvApplication *application, GError *err) gtk_file_filter_add_mime_type (pdf_filter, "application/pdf"); gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (chooser), pdf_filter); + pixbuf_filter = gtk_file_filter_new (); + gtk_file_filter_set_name (pixbuf_filter, _("Images")); + gtk_file_filter_add_pixbuf_formats (pixbuf_filter); + gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (chooser), pixbuf_filter); + all_filter = gtk_file_filter_new (); gtk_file_filter_set_name (all_filter, _("All Files")); gtk_file_filter_add_pattern (all_filter, "*"); gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (chooser), all_filter); - + gtk_file_chooser_set_filter (GTK_FILE_CHOOSER (chooser), both_filter); if (gtk_dialog_run (GTK_DIALOG (chooser)) == GTK_RESPONSE_OK) { @@ -165,24 +170,12 @@ ev_application_open (EvApplication *application, GError *err) gtk_widget_destroy (GTK_WIDGET (chooser)); } -static void -ev_application_finalize (GObject *object) -{ - g_return_if_fail (object != NULL && EV_IS_APPLICATION (object)); - - EV_APPLICATION (object)->priv = NULL; - - EV_CALL_VIRTUAL ( - G_OBJECT_CLASS (ev_application_parent_class), finalize, (object)); -} - static void ev_application_class_init (EvApplicationClass *ev_application_class) { GObjectClass *g_object_class; g_object_class = G_OBJECT_CLASS (ev_application_class); - g_object_class->finalize = ev_application_finalize; g_type_class_add_private (g_object_class, sizeof (EvApplicationPrivate));