]> www.fi.muni.cz Git - evince.git/blobdiff - backend/djvu/djvu-document.c
Move default implementation of document_get_info from backends to base class
[evince.git] / backend / djvu / djvu-document.c
index 40950c7829c8bf68fab7f56f5d994af717097cba..46bbd40257d961e60619cef182907d18b3795330 100644 (file)
@@ -32,9 +32,9 @@
 #include "ev-selection.h"
 #include "ev-file-helpers.h"
 
-#include <gdk-pixbuf/gdk-pixbuf-core.h>
-#include <glib/gi18n.h>
-#include <glib/gunicode.h>
+#include <glib.h>
+#include <gdk-pixbuf/gdk-pixbuf.h>
+#include <glib/gi18n-lib.h>
 #include <string.h>
 
 #define SCALE_FACTOR 0.2
@@ -46,12 +46,11 @@ enum {
 
 struct _DjvuDocumentClass
 {
-       GObjectClass parent_class;
+       EvDocumentClass parent_class;
 };
 
 typedef struct _DjvuDocumentClass DjvuDocumentClass;
 
-static void djvu_document_document_iface_init (EvDocumentIface *iface);
 static void djvu_document_document_thumbnails_iface_init (EvDocumentThumbnailsIface *iface);
 static void djvu_document_file_exporter_iface_init (EvFileExporterIface *iface);
 static void djvu_document_find_iface_init (EvDocumentFindIface *iface);
@@ -75,7 +74,7 @@ ev_djvu_error_quark (void)
 {
        static GQuark q = 0;
        if (q == 0)
-               q = g_quark_from_static_string ("ev-djvu-quark");
+               q = g_quark_from_string ("ev-djvu-quark");
        
        return q;
 }
@@ -97,9 +96,9 @@ handle_message (const ddjvu_message_t *msg, GError **error)
                        }
                        
                        if (error) {
-                               g_set_error (error, EV_DJVU_ERROR, 0, error_str);
+                               g_set_error_literal (error, EV_DJVU_ERROR, 0, error_str);
                        } else {
-                               g_warning (error_str);
+                               g_warning ("%s", error_str);
                        }
                                
                        g_free (error_str);
@@ -168,6 +167,10 @@ djvu_document_load (EvDocument  *document,
 
        if (!doc) {
                g_free (filename);
+               g_set_error_literal (error,
+                                    EV_DOCUMENT_ERROR,
+                                    EV_DOCUMENT_ERROR_INVALID,
+                                    _("DJVU document has incorrect format"));
                return FALSE;
        }
 
@@ -178,10 +181,10 @@ djvu_document_load (EvDocument  *document,
 
        djvu_wait_for_message (djvu_document, DDJVU_DOCINFO, &djvu_error);
        if (djvu_error) {
-               g_set_error (error,
-                            EV_DOCUMENT_ERROR,
-                            EV_DOCUMENT_ERROR_INVALID,
-                            djvu_error->message);
+               g_set_error_literal (error,
+                                    EV_DOCUMENT_ERROR,
+                                    EV_DOCUMENT_ERROR_INVALID,
+                                    djvu_error->message);
                g_error_free (djvu_error);
                g_free (filename);
                ddjvu_document_release (djvu_document->d_document);
@@ -194,10 +197,10 @@ djvu_document_load (EvDocument  *document,
                djvu_handle_events (djvu_document, TRUE, &djvu_error);
 
        if (djvu_error) {
-               g_set_error (error,
-                            EV_DOCUMENT_ERROR,
-                            EV_DOCUMENT_ERROR_INVALID,
-                            djvu_error->message);
+               g_set_error_literal (error,
+                                    EV_DOCUMENT_ERROR,
+                                    EV_DOCUMENT_ERROR_INVALID,
+                                    djvu_error->message);
                g_error_free (djvu_error);
                g_free (filename);
                ddjvu_document_release (djvu_document->d_document);
@@ -241,11 +244,11 @@ djvu_document_load (EvDocument  *document,
        g_free (filename);
 
        if (missing_files) {
-               g_set_error (error,
-                            G_FILE_ERROR,
-                            G_FILE_ERROR_EXIST,
-                            _("The document is composed by several files. "
-                              "One or more of such files cannot be accessed."));
+               g_set_error_literal (error,
+                                     G_FILE_ERROR,
+                                     G_FILE_ERROR_EXIST,
+                                    _("The document is composed of several files. "
+                                       "One or more of such files cannot be accessed."));
 
                return FALSE;
        }
@@ -408,30 +411,16 @@ djvu_document_finalize (GObject *object)
 static void
 djvu_document_class_init (DjvuDocumentClass *klass)
 {
-       GObjectClass *gobject_class = G_OBJECT_CLASS (klass);
+       GObjectClass    *gobject_class = G_OBJECT_CLASS (klass);
+       EvDocumentClass *ev_document_class = EV_DOCUMENT_CLASS (klass);
 
        gobject_class->finalize = djvu_document_finalize;
-}
-
-static EvDocumentInfo *
-djvu_document_get_info (EvDocument *document)
-{
-       EvDocumentInfo *info;
-
-       info = g_new0 (EvDocumentInfo, 1);
 
-       return info;
-}
-
-static void
-djvu_document_document_iface_init (EvDocumentIface *iface)
-{
-       iface->load = djvu_document_load;
-       iface->save = djvu_document_save;
-       iface->get_n_pages = djvu_document_get_n_pages;
-       iface->get_page_size = djvu_document_get_page_size;
-       iface->render = djvu_document_render;
-       iface->get_info = djvu_document_get_info;
+       ev_document_class->load = djvu_document_load;
+       ev_document_class->save = djvu_document_save;
+       ev_document_class->get_n_pages = djvu_document_get_n_pages;
+       ev_document_class->get_page_size = djvu_document_get_page_size;
+       ev_document_class->render = djvu_document_render;
 }
 
 static gchar *