diff options
author | Owen Taylor <otaylor@redhat.com> | 2004-12-22 00:44:41 (GMT) |
---|---|---|
committer | Owen Taylor <otaylor@src.gnome.org> | 2004-12-22 00:44:41 (GMT) |
commit | a4cf673a3347ec011ebc90b22b6541bae0b9f6b4 (patch) | |
tree | c083238873e7fd943411e0bb2e1a761adf716783 /shell/ev-window.c | |
parent | d6198ac2024d229d47b631648fe8352ffb4d3e80 (diff) |
Switch from .a to libtool convenience libraries.
Tue Dec 21 19:28:55 2004 Owen Taylor <otaylor@redhat.com>
* 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.
Diffstat (limited to 'shell/ev-window.c')
-rw-r--r-- | shell/ev-window.c | 29 |
1 files changed, 29 insertions, 0 deletions
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 <glib/gi18n.h> #include <gtk/gtk.h> #include <libgnomevfs/gnome-vfs-mime-utils.h> @@ -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; |