]> www.fi.muni.cz Git - evince.git/blobdiff - shell/ev-metadata-manager.c
Updated Greek translation
[evince.git] / shell / ev-metadata-manager.c
index be550c819763b18cb1eb98965705183ff94f976e..7acf6a14c456a9a89f12a84a8976601abf53f3bf 100644 (file)
@@ -43,7 +43,7 @@
 
 #define MAX_ITEMS      50
 
-typedef struct _GeditMetadataManager GeditMetadataManager;
+typedef struct _EvMetadataManager EvMetadataManager;
 
 typedef struct _Item Item;
 
@@ -54,7 +54,7 @@ struct _Item
        GHashTable      *values;
 };
        
-struct _GeditMetadataManager
+struct _EvMetadataManager
 {
        gboolean         values_loaded; /* It is true if the file 
                                           has been read */
@@ -67,10 +67,10 @@ struct _GeditMetadataManager
        GHashTable      *items;
 };
 
-static void ev_metadata_manager_save (gpointer data);
+static gboolean ev_metadata_manager_save (gpointer data);
 
 
-static GeditMetadataManager *ev_metadata_manager = NULL;
+static EvMetadataManager *ev_metadata_manager = NULL;
 
 static void
 item_free (gpointer data)
@@ -87,13 +87,10 @@ item_free (gpointer data)
        g_free (item);
 }
 
-static gboolean
+void
 ev_metadata_manager_init (void)
 {
-       if (ev_metadata_manager != NULL)
-               return TRUE;
-
-       ev_metadata_manager = g_new0 (GeditMetadataManager, 1);
+       ev_metadata_manager = g_new0 (EvMetadataManager, 1);
 
        ev_metadata_manager->values_loaded = FALSE;
        ev_metadata_manager->modified = FALSE;
@@ -110,8 +107,6 @@ ev_metadata_manager_init (void)
                                    (GSourceFunc)ev_metadata_manager_save,
                                    NULL,
                                    NULL);
-       
-       return TRUE;
 }
 
 /* This function must be called before exiting ev */
@@ -303,7 +298,7 @@ ev_metadata_manager_get (const gchar *uri,
        g_return_val_if_fail (key != NULL, FALSE);
 
        if (ev_metadata_manager == NULL)
-               ev_metadata_manager_init ();
+               return FALSE;
 
        if (!ev_metadata_manager->values_loaded)
        {
@@ -358,7 +353,7 @@ ev_metadata_manager_set (const gchar  *uri,
        g_return_if_fail (key != NULL);
 
        if (ev_metadata_manager == NULL)
-               ev_metadata_manager_init ();
+               return;
 
        if (!ev_metadata_manager->values_loaded)
        {
@@ -516,7 +511,7 @@ resize_items ()
        }
 }
 
-static void
+static gboolean
 ev_metadata_manager_save (gpointer data)
 {      
        xmlDocPtr  doc;
@@ -524,7 +519,7 @@ ev_metadata_manager_save (gpointer data)
        gchar *file_name;
 
        if (!ev_metadata_manager->modified)
-               return;
+               return TRUE;
 
        resize_items ();
                
@@ -532,7 +527,7 @@ ev_metadata_manager_save (gpointer data)
 
        doc = xmlNewDoc ((const xmlChar *)"1.0");
        if (doc == NULL)
-               return;
+               return TRUE;
 
        /* Create metadata root */
        root = xmlNewDocNode (doc, NULL, (const xmlChar *)"metadata", NULL);
@@ -549,6 +544,8 @@ ev_metadata_manager_save (gpointer data)
        xmlFreeDoc (doc); 
 
        ev_metadata_manager->modified = FALSE;
+
+       return TRUE;
 }
 
 void