]> www.fi.muni.cz Git - evince.git/blobdiff - libdocument/ev-mapping-list.h
Add EvMappingList data struct instead of using a GList
[evince.git] / libdocument / ev-mapping-list.h
similarity index 53%
rename from libdocument/ev-mapping.h
rename to libdocument/ev-mapping-list.h
index b6024c5cf92580cf8e0ce384990c3547f59251ae..b207736223cbfdbaa92e046496f90f93dcda0931 100644 (file)
 #error "Only <evince-document.h> can be included directly."
 #endif
 
-#ifndef EV_MAPPING_H
-#define EV_MAPPING_H
+#ifndef EV_MAPPING_LIST_H
+#define EV_MAPPING_LIST_H
 
 #include "ev-document.h"
 
 G_BEGIN_DECLS
 
-EvMapping *ev_mapping_list_find        (GList         *mapping_list,
-                                       gconstpointer  data);
-EvMapping *ev_mapping_list_find_custom (GList         *mapping_list,
-                                       gconstpointer  data,
-                                       GCompareFunc   func);
-gpointer   ev_mapping_list_get_data    (GList         *mapping_list,
-                                       gdouble        x,
-                                       gdouble        y);
-void       ev_mapping_list_free        (GList         *mapping_list,
-                                       GDestroyNotify destroy_func);
+typedef struct _EvMappingList EvMappingList;
+
+EvMappingList *ev_mapping_list_new         (guint          page,
+                                           GList         *list,
+                                           GDestroyNotify data_destroy_func);
+EvMappingList *ev_mapping_list_ref         (EvMappingList *mapping_list);
+void           ev_mapping_list_unref       (EvMappingList *mapping_list);
+
+guint          ev_mapping_list_get_page    (EvMappingList *mapping_list);
+GList         *ev_mapping_list_get_list    (EvMappingList *mapping_list);
+EvMapping     *ev_mapping_list_find        (EvMappingList *mapping_list,
+                                           gconstpointer  data);
+EvMapping     *ev_mapping_list_find_custom (EvMappingList *mapping_list,
+                                           gconstpointer  data,
+                                           GCompareFunc   func);
+gpointer       ev_mapping_list_get_data    (EvMappingList *mapping_list,
+                                           gdouble        x,
+                                           gdouble        y);
 
 G_END_DECLS
 
-#endif /* EV_MAPPING_H */
+#endif /* EV_MAPPING_LIST_H */