From a4cf673a3347ec011ebc90b22b6541bae0b9f6b4 Mon Sep 17 00:00:00 2001 From: Owen Taylor Date: Wed, 22 Dec 2004 00:44:41 +0000 Subject: Switch from .a to libtool convenience libraries. Tue Dec 21 19:28:55 2004 Owen Taylor * pdf/{goo,fofi,splash,xpdf}/Makefile.am: Switch from .a to libtool convenience libraries. * shell/ev-window.c (ev_window_open): Hard code loading a PDF document. * backend/ev-document.h: Add a boolean return to load(), fix GError * to GError **. * pdf/xpdf/pdf-document.[ch] Makefile.am: Add a stub object for a PDF backend EvDocument. --- (limited to 'shell/ev-window.c') diff --git a/shell/ev-window.c b/shell/ev-window.c index 14733fe..a6097ce 100644 --- a/shell/ev-window.c +++ b/shell/ev-window.c @@ -30,6 +30,8 @@ #include "ev-sidebar.h" #include "eggfindbar.h" +#include "pdf-document.h" + #include #include #include @@ -57,6 +59,8 @@ struct _EvWindowPrivate { GtkUIManager *ui_manager; GtkWidget *statusbar; guint help_message_cid; + + EvDocument *document; }; #if 0 @@ -147,6 +151,31 @@ ev_window_is_empty (const EvWindow *ev_window) void ev_window_open (EvWindow *ev_window, const char *uri) { + EvDocument *document = g_object_new (PDF_TYPE_DOCUMENT, NULL); + GError *error = NULL; + + if (ev_document_load (document, uri, &error)) { + if (ev_window->priv->document) + g_object_unref (ev_window->priv->document); + ev_window->priv->document = document; + + } else { + GtkWidget *dialog; + + g_object_unref (document); + + dialog = gtk_message_dialog_new (GTK_WINDOW (ev_window), + GTK_DIALOG_DESTROY_WITH_PARENT, + GTK_MESSAGE_ERROR, + GTK_BUTTONS_CLOSE, + _("Unable to open document")); + gtk_message_dialog_format_secondary_text (GTK_MESSAGE_DIALOG (dialog), + "%s", error->message); + gtk_dialog_run (GTK_DIALOG (dialog)); + + g_error_free (error); + } + #if 0 char *mime_type; BonoboObject *bonobo_control; -- cgit v0.9.1