From 30cfaa4a4929d85f303b3afc9c8ec240d548ff87 Mon Sep 17 00:00:00 2001 From: Christian Persch Date: Fri, 8 Apr 2005 13:26:25 +0000 Subject: Implement a more flexible approach at saving a EphyNodeDb, by allowing to 2005-04-08 Christian Persch * embed/ephy-favicon-cache.c: (ephy_favicon_cache_finalize): * embed/ephy-history.c: (save_filter), (ephy_history_save): * lib/ephy-node-db.c: (ephy_node_db_write_to_xml_valist): * lib/ephy-node.h: * lib/ephy-state.c: (ephy_states_save): * src/bookmarks/ephy-bookmarks.c: (save_filter), (ephy_bookmarks_save): Implement a more flexible approach at saving a EphyNodeDb, by allowing to specify a filter func to exclude certain nodes, instead of a fixed list. --- src/bookmarks/ephy-bookmarks.c | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) (limited to 'src') diff --git a/src/bookmarks/ephy-bookmarks.c b/src/bookmarks/ephy-bookmarks.c index 0043d845a..9129181e2 100644 --- a/src/bookmarks/ephy-bookmarks.c +++ b/src/bookmarks/ephy-bookmarks.c @@ -309,6 +309,17 @@ ephy_bookmarks_class_init (EphyBookmarksClass *klass) g_type_class_add_private (object_class, sizeof(EphyBookmarksPrivate)); } +static gboolean +save_filter (EphyNode *node, + EphyBookmarks *bookmarks) +{ + EphyBookmarksPrivate *priv = bookmarks->priv; + + return node != priv->bookmarks && + node != priv->favorites && + node != priv->notcategorized; +} + static void ephy_bookmarks_save (EphyBookmarks *eb) { @@ -321,10 +332,8 @@ ephy_bookmarks_save (EphyBookmarks *eb) (xmlChar *) EPHY_BOOKMARKS_XML_ROOT, (xmlChar *) EPHY_BOOKMARKS_XML_VERSION, (xmlChar *) "Do not rely on this file, it's only for internal use. Use bookmarks.rdf instead.", - eb->priv->keywords, - 3, eb->priv->bookmarks, eb->priv->favorites, eb->priv->notcategorized, - eb->priv->bookmarks, - 0, + eb->priv->keywords, (EphyNodeFilterFunc) save_filter, eb, + eb->priv->bookmarks, NULL, NULL, NULL); /* Export bookmarks in rdf */ -- cgit v1.2.3