Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/shell
diff options
context:
space:
mode:
authorMarco Pesenti Gritti <marco@gnome.org>2005-01-07 12:16:43 (GMT)
committer Marco Pesenti Gritti <marco@src.gnome.org>2005-01-07 12:16:43 (GMT)
commit8b3ebe4d7024547993d3b4660f3f22036e327be3 (patch)
tree0862e57165cef77db894dd5123ec4b81ed42738f /shell
parent3a87fe3d6bd17d8151c675c9b4e9294619127b1b (diff)
Add a bookmark object to the backend and use it instead of get_values
2005-01-07 Marco Pesenti Gritti <marco@gnome.org> * backend/Makefile.am: * backend/ev-bookmark.c: (ev_bookmark_type_get_type), (ev_bookmark_get_title), (ev_bookmark_set_title), (ev_bookmark_get_bookmark_type), (ev_bookmark_set_bookmark_type), (ev_bookmark_get_page), (ev_bookmark_set_page), (ev_bookmark_get_property), (ev_bookmark_set_property), (ev_window_dispose), (ev_bookmark_init), (ev_bookmark_class_init), (ev_bookmark_new): * backend/ev-bookmark.h: * backend/ev-document-bookmarks.c: (ev_document_bookmarks_get_bookmark): * backend/ev-document-bookmarks.h: * pdf/xpdf/pdf-document.cc: * shell/ev-sidebar-bookmarks.c: (do_one_iteration): Add a bookmark object to the backend and use it instead of get_values
Diffstat (limited to 'shell')
-rw-r--r--shell/ev-sidebar-bookmarks.c19
1 files changed, 9 insertions, 10 deletions
diff --git a/shell/ev-sidebar-bookmarks.c b/shell/ev-sidebar-bookmarks.c
index b215e1e..6cc2eb0 100644
--- a/shell/ev-sidebar-bookmarks.c
+++ b/shell/ev-sidebar-bookmarks.c
@@ -207,34 +207,33 @@ static gboolean
do_one_iteration (EvSidebarBookmarks *ev_sidebar_bookmarks)
{
EvSidebarBookmarksPrivate *priv = ev_sidebar_bookmarks->priv;
+ EvBookmark *bookmark;
IdleStackData *stack_data;
GtkTreeIter tree_iter;
- gchar *title = NULL;
- EvDocumentBookmarksType type;
EvDocumentBookmarksIter *child_iter;
- gint page = -1;
+ gint page;
g_assert (priv->idle_stack);
stack_data = (IdleStackData *) priv->idle_stack->data;
- if (! ev_document_bookmarks_get_values (EV_DOCUMENT_BOOKMARKS (priv->current_document),
- stack_data->bookmarks_iter,
- &title,
- &type,
- &page)) {
+ bookmark = ev_document_bookmarks_get_bookmark
+ (EV_DOCUMENT_BOOKMARKS (priv->current_document),
+ stack_data->bookmarks_iter);
+ if (bookmark == NULL) {
g_warning ("mismatch in model. No values available at current level.\n");
return FALSE;
}
+ page = ev_bookmark_get_page (bookmark);
gtk_tree_store_append (GTK_TREE_STORE (priv->model), &tree_iter, stack_data->tree_iter);
gtk_tree_store_set (GTK_TREE_STORE (priv->model), &tree_iter,
- BOOKMARKS_COLUMN_MARKUP, title,
+ BOOKMARKS_COLUMN_MARKUP, ev_bookmark_get_title (bookmark),
BOOKMARKS_COLUMN_PAGE_NUM, page,
/* FIXME: Handle links for real. */
BOOKMARKS_COLUMN_PAGE_VALID, (page >= 0),
-1);
- g_free (title);
+ g_object_unref (bookmark);
child_iter = ev_document_bookmarks_get_child (EV_DOCUMENT_BOOKMARKS (priv->current_document),
stack_data->bookmarks_iter);