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@src.gnome.org>2005-01-10 19:08:15 (GMT)
committer Marco Pesenti Gritti <marco@src.gnome.org>2005-01-10 19:08:15 (GMT)
commit2d5fe16a0b4a8bbb85933e471a62550384446821 (patch)
tree8cf9cc024c35796da1b6d75b6d1d1f9312f9ed3d /shell
parentd906aff9da8222c4377c558cbb079be0dc26613f (diff)
Rename bookmark to link, and use "Index" for the sidebar panel.
Diffstat (limited to 'shell')
-rw-r--r--shell/Makefile.am4
-rw-r--r--shell/ev-application.c22
-rw-r--r--shell/ev-application.h6
-rw-r--r--shell/ev-history.c18
-rw-r--r--shell/ev-history.h6
-rw-r--r--shell/ev-sidebar-bookmarks.h63
-rw-r--r--shell/ev-sidebar-links.c (renamed from shell/ev-sidebar-bookmarks.c)204
-rw-r--r--shell/ev-sidebar-links.h63
-rw-r--r--shell/ev-sidebar.c17
-rw-r--r--shell/ev-view.c24
-rw-r--r--shell/ev-view.h6
-rw-r--r--shell/ev-window.c12
-rw-r--r--shell/ev-window.h13
13 files changed, 228 insertions, 230 deletions
diff --git a/shell/Makefile.am b/shell/Makefile.am
index 7b088f7..5fb0bdb 100644
--- a/shell/Makefile.am
+++ b/shell/Makefile.am
@@ -39,8 +39,8 @@ evince_SOURCES= \
ev-window.h \
ev-sidebar.c \
ev-sidebar.h \
- ev-sidebar-bookmarks.c \
- ev-sidebar-bookmarks.h \
+ ev-sidebar-links.c \
+ ev-sidebar-links.h \
ev-sidebar-thumbnails.c \
ev-sidebar-thumbnails.h \
ev-stock-icons.c \
diff --git a/shell/ev-application.c b/shell/ev-application.c
index 896fa90..05f86ce 100644
--- a/shell/ev-application.c
+++ b/shell/ev-application.c
@@ -170,24 +170,24 @@ ev_application_open (EvApplication *application, GError *err)
}
void
-ev_application_open_bookmark (EvApplication *application,
- EvWindow *window,
- EvBookmark *bookmark,
- GError *error)
+ev_application_open_link (EvApplication *application,
+ EvWindow *window,
+ EvLink *link,
+ GError *error)
{
- EvBookmarkType type;
+ EvLinkType type;
const char *uri;
- type = ev_bookmark_get_bookmark_type (bookmark);
+ type = ev_link_get_link_type (link);
switch (type) {
- case EV_BOOKMARK_TYPE_TITLE:
+ case EV_LINK_TYPE_TITLE:
break;
- case EV_BOOKMARK_TYPE_LINK:
- ev_window_open_bookmark (window, bookmark);
+ case EV_LINK_TYPE_PAGE:
+ ev_window_open_link (window, link);
break;
- case EV_BOOKMARK_TYPE_EXTERNAL_URI:
- uri = ev_bookmark_get_uri (bookmark);
+ case EV_LINK_TYPE_EXTERNAL_URI:
+ uri = ev_link_get_uri (link);
gnome_vfs_url_show (uri);
break;
}
diff --git a/shell/ev-application.h b/shell/ev-application.h
index 19a848b..a22e7dc 100644
--- a/shell/ev-application.h
+++ b/shell/ev-application.h
@@ -28,7 +28,7 @@
#include "ev-window.h"
#include "ev-document.h"
-#include "ev-bookmark.h"
+#include "ev-link.h"
G_BEGIN_DECLS
@@ -59,9 +59,9 @@ EvApplication *ev_application_get_instance (void);
void ev_application_open (EvApplication *application,
GError *err);
EvWindow *ev_application_new_window (EvApplication *application);
-void ev_application_open_bookmark (EvApplication *application,
+void ev_application_open_link (EvApplication *application,
EvWindow *window,
- EvBookmark *bookmark,
+ EvLink *link,
GError *err);
G_END_DECLS
diff --git a/shell/ev-history.c b/shell/ev-history.c
index 47fa300..267b41b 100644
--- a/shell/ev-history.c
+++ b/shell/ev-history.c
@@ -77,16 +77,16 @@ ev_history_class_init (EvHistoryClass *class)
}
void
-ev_history_add_link (EvHistory *history, EvBookmark *bookmark)
+ev_history_add_link (EvHistory *history, EvLink *link)
{
int length;
g_return_if_fail (EV_IS_HISTORY (history));
- g_return_if_fail (EV_IS_BOOKMARK (bookmark));
+ g_return_if_fail (EV_IS_LINK (link));
- g_object_ref (bookmark);
+ g_object_ref (link);
history->priv->links = g_list_append (history->priv->links,
- bookmark);
+ link);
length = g_list_length (history->priv->links);
history->priv->current_index = length - 1;
@@ -97,19 +97,19 @@ ev_history_add_link (EvHistory *history, EvBookmark *bookmark)
void
ev_history_add_page (EvHistory *history, int page)
{
- EvBookmark *bookmark;
+ EvLink *link;
char *title;
g_return_if_fail (EV_IS_HISTORY (history));
title = g_strdup_printf (_("Page %d\n"), page);
- bookmark = ev_bookmark_new_link (title, page);
+ link = ev_link_new_page (title, page);
g_free (title);
- ev_history_add_link (history, bookmark);
+ ev_history_add_link (history, link);
}
-EvBookmark *
+EvLink *
ev_history_get_link_nth (EvHistory *history, int index)
{
GList *l;
@@ -118,7 +118,7 @@ ev_history_get_link_nth (EvHistory *history, int index)
l = g_list_nth (history->priv->links, index);
- return EV_BOOKMARK (l->data);
+ return EV_LINK (l->data);
}
int
diff --git a/shell/ev-history.h b/shell/ev-history.h
index f69cd48..b8cfceb 100644
--- a/shell/ev-history.h
+++ b/shell/ev-history.h
@@ -23,7 +23,7 @@
#include <glib-object.h>
-#include "ev-bookmark.h"
+#include "ev-link.h"
G_BEGIN_DECLS
@@ -54,10 +54,10 @@ struct _EvHistoryClass
GType ev_history_get_type (void);
EvHistory *ev_history_new (void);
void ev_history_add_link (EvHistory *history,
- EvBookmark *bookmark);
+ EvLink *linkk);
void ev_history_add_page (EvHistory *history,
int page);
-EvBookmark *ev_history_get_link_nth (EvHistory *history,
+EvLink *ev_history_get_link_nth (EvHistory *history,
int index);
int ev_history_get_n_links (EvHistory *history);
int ev_history_get_current_index (EvHistory *history);
diff --git a/shell/ev-sidebar-bookmarks.h b/shell/ev-sidebar-bookmarks.h
deleted file mode 100644
index e3f3cc6..0000000
--- a/shell/ev-sidebar-bookmarks.h
+++ /dev/null
@@ -1,63 +0,0 @@
-/* ev-sidebar-bookmarks.h
- * this file is part of evince, a gnome document viewer
- *
- * Copyright (C) 2004 Red Hat, Inc.
- *
- * Author:
- * Jonathan Blandford <jrb@alum.mit.edu>
- *
- * Evince is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * Evince is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
- */
-
-#ifndef __EV_SIDEBAR_BOOKMARKS_H__
-#define __EV_SIDEBAR_BOOKMARKS_H__
-
-#include <gtk/gtkvbox.h>
-#include "ev-document.h"
-
-G_BEGIN_DECLS
-
-typedef struct _EvSidebarBookmarks EvSidebarBookmarks;
-typedef struct _EvSidebarBookmarksClass EvSidebarBookmarksClass;
-typedef struct _EvSidebarBookmarksPrivate EvSidebarBookmarksPrivate;
-
-#define EV_TYPE_SIDEBAR_BOOKMARKS (ev_sidebar_bookmarks_get_type())
-#define EV_SIDEBAR_BOOKMARKS(object) (G_TYPE_CHECK_INSTANCE_CAST((object), EV_TYPE_SIDEBAR_BOOKMARKS, EvSidebarBookmarks))
-#define EV_SIDEBAR_BOOKMARKS_CLASS(klass) (G_TYPE_CHACK_CLASS_CAST((klass), EV_TYPE_SIDEBAR_BOOKMARKS, EvSidebarBookmarksClass))
-#define EV_IS_SIDEBAR_BOOKMARKS(object) (G_TYPE_CHECK_INSTANCE_TYPE((object), EV_TYPE_SIDEBAR_BOOKMARKS))
-#define EV_IS_SIDEBAR_BOOKMARKS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), EV_TYPE_SIDEBAR_BOOKMARKS))
-#define EV_SIDEBAR_BOOKMARKS_GET_CLASS(object) (G_TYPE_INSTANCE_GET_CLASS((object), EV_TYPE_SIDEBAR_BOOKMARKS, EvSidebarBookmarksClass))
-
-struct _EvSidebarBookmarks {
- GtkVBox base_instance;
-
- EvSidebarBookmarksPrivate *priv;
-};
-
-struct _EvSidebarBookmarksClass {
- GtkVBoxClass base_class;
-};
-
-GType ev_sidebar_bookmarks_get_type (void);
-GtkWidget *ev_sidebar_bookmarks_new (void);
-void ev_sidebar_bookmarks_set_document (EvSidebarBookmarks *ev_sidebar_bookmarks,
- EvDocument *document);
-void ev_sidebar_bookmarks_clear_document (EvSidebarBookmarks *sidebar_bookmarks);
-
-G_END_DECLS
-
-#endif /* __EV_SIDEBAR_BOOKMARKS_H__ */
-
-
diff --git a/shell/ev-sidebar-bookmarks.c b/shell/ev-sidebar-links.c
index 5c463b4..4db11b6 100644
--- a/shell/ev-sidebar-bookmarks.c
+++ b/shell/ev-sidebar-links.c
@@ -27,19 +27,19 @@
#include <string.h>
#include <gtk/gtk.h>
-#include "ev-sidebar-bookmarks.h"
-#include "ev-document-bookmarks.h"
+#include "ev-sidebar-links.h"
+#include "ev-document-links.h"
#include "ev-application.h"
/* Amount of time we devote to each iteration of the idle, in microseconds */
#define IDLE_WORK_LENGTH 5000
typedef struct {
- EvDocumentBookmarksIter *bookmarks_iter;
+ EvDocumentLinksIter *links_iter;
GtkTreeIter *tree_iter;
} IdleStackData;
-struct _EvSidebarBookmarksPrivate {
+struct _EvSidebarLinksPrivate {
GtkWidget *tree_view;
GtkTreeModel *model;
EvDocument *current_document;
@@ -48,94 +48,94 @@ struct _EvSidebarBookmarksPrivate {
};
enum {
- BOOKMARKS_COLUMN_MARKUP,
- BOOKMARKS_COLUMN_PAGE_NUM,
- BOOKMARKS_COLUMN_PAGE_VALID,
- BOOKMARKS_COLUMN_BOOKMARK,
- BOOKMARKS_COLUMN_NUM_COLUMNS
+ LINKS_COLUMN_MARKUP,
+ LINKS_COLUMN_PAGE_NUM,
+ LINKS_COLUMN_PAGE_VALID,
+ LINKS_COLUMN_LINK,
+ LINKS_COLUMN_NUM_COLUMNS
};
-static void bookmarks_page_num_func (GtkTreeViewColumn *tree_column,
- GtkCellRenderer *cell,
- GtkTreeModel *tree_model,
- GtkTreeIter *iter,
- gpointer data);
+static void links_page_num_func (GtkTreeViewColumn *tree_column,
+ GtkCellRenderer *cell,
+ GtkTreeModel *tree_model,
+ GtkTreeIter *iter,
+ gpointer data);
-G_DEFINE_TYPE (EvSidebarBookmarks, ev_sidebar_bookmarks, GTK_TYPE_VBOX)
+G_DEFINE_TYPE (EvSidebarLinks, ev_sidebar_links, GTK_TYPE_VBOX)
-#define EV_SIDEBAR_BOOKMARKS_GET_PRIVATE(object) \
- (G_TYPE_INSTANCE_GET_PRIVATE ((object), EV_TYPE_SIDEBAR_BOOKMARKS, EvSidebarBookmarksPrivate))
+#define EV_SIDEBAR_LINKS_GET_PRIVATE(object) \
+ (G_TYPE_INSTANCE_GET_PRIVATE ((object), EV_TYPE_SIDEBAR_LINKS, EvSidebarLinksPrivate))
static void
-ev_sidebar_bookmarks_destroy (GtkObject *object)
+ev_sidebar_links_destroy (GtkObject *object)
{
- EvSidebarBookmarks *ev_sidebar_bookmarks = (EvSidebarBookmarks *) object;
+ EvSidebarLinks *ev_sidebar_links = (EvSidebarLinks *) object;
- g_print ("ev_sidebar_bookmarks_destroy!\n");
- ev_sidebar_bookmarks_clear_document (ev_sidebar_bookmarks);
+ g_print ("ev_sidebar_links_destroy!\n");
+ ev_sidebar_links_clear_document (ev_sidebar_links);
}
static void
-ev_sidebar_bookmarks_class_init (EvSidebarBookmarksClass *ev_sidebar_bookmarks_class)
+ev_sidebar_links_class_init (EvSidebarLinksClass *ev_sidebar_links_class)
{
GObjectClass *g_object_class;
GtkObjectClass *gtk_object_class;
- g_object_class = G_OBJECT_CLASS (ev_sidebar_bookmarks_class);
- gtk_object_class = GTK_OBJECT_CLASS (ev_sidebar_bookmarks_class);
+ g_object_class = G_OBJECT_CLASS (ev_sidebar_links_class);
+ gtk_object_class = GTK_OBJECT_CLASS (ev_sidebar_links_class);
- gtk_object_class->destroy = ev_sidebar_bookmarks_destroy;
+ gtk_object_class->destroy = ev_sidebar_links_destroy;
- g_type_class_add_private (g_object_class, sizeof (EvSidebarBookmarksPrivate));
+ g_type_class_add_private (g_object_class, sizeof (EvSidebarLinksPrivate));
}
static void
selection_changed_cb (GtkTreeSelection *selection,
- EvSidebarBookmarks *ev_sidebar_bookmarks)
+ EvSidebarLinks *ev_sidebar_links)
{
EvDocument *document;
GtkTreeModel *model;
GtkTreeIter iter;
- g_return_if_fail (EV_IS_SIDEBAR_BOOKMARKS (ev_sidebar_bookmarks));
+ g_return_if_fail (EV_IS_SIDEBAR_LINKS (ev_sidebar_links));
- document = EV_DOCUMENT (ev_sidebar_bookmarks->priv->current_document);
- g_return_if_fail (ev_sidebar_bookmarks->priv->current_document != NULL);
+ document = EV_DOCUMENT (ev_sidebar_links->priv->current_document);
+ g_return_if_fail (ev_sidebar_links->priv->current_document != NULL);
if (gtk_tree_selection_get_selected (selection, &model, &iter)) {
- EvBookmark *bookmark;
+ EvLink *link;
EvApplication *app;
GtkWidget *window;
GValue value = {0, };
gtk_tree_model_get_value (model, &iter,
- BOOKMARKS_COLUMN_BOOKMARK, &value);
+ LINKS_COLUMN_LINK, &value);
- bookmark = EV_BOOKMARK (g_value_get_object (&value));
- g_return_if_fail (bookmark != NULL);
+ link = EV_LINK (g_value_get_object (&value));
+ g_return_if_fail (link != NULL);
- window = gtk_widget_get_ancestor (GTK_WIDGET (ev_sidebar_bookmarks),
+ window = gtk_widget_get_ancestor (GTK_WIDGET (ev_sidebar_links),
EV_TYPE_WINDOW);
if (window) {
app = ev_application_get_instance ();
- ev_application_open_bookmark (app, EV_WINDOW (window),
- bookmark, NULL);
+ ev_application_open_link (app, EV_WINDOW (window),
+ link, NULL);
}
}
}
static void
-ev_sidebar_bookmarks_construct (EvSidebarBookmarks *ev_sidebar_bookmarks)
+ev_sidebar_links_construct (EvSidebarLinks *ev_sidebar_links)
{
- EvSidebarBookmarksPrivate *priv;
+ EvSidebarLinksPrivate *priv;
GtkWidget *swindow;
GtkTreeViewColumn *column;
GtkCellRenderer *renderer;
GtkTreeSelection *selection;
- priv = ev_sidebar_bookmarks->priv;
- priv->model = (GtkTreeModel *) gtk_tree_store_new (BOOKMARKS_COLUMN_NUM_COLUMNS,
+ priv = ev_sidebar_links->priv;
+ priv->model = (GtkTreeModel *) gtk_tree_store_new (LINKS_COLUMN_NUM_COLUMNS,
G_TYPE_STRING,
G_TYPE_INT,
G_TYPE_BOOLEAN,
@@ -155,8 +155,8 @@ ev_sidebar_bookmarks_construct (EvSidebarBookmarks *ev_sidebar_bookmarks)
gtk_container_add (GTK_CONTAINER (swindow), priv->tree_view);
gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (priv->tree_view), TRUE);
- gtk_box_pack_start (GTK_BOX (ev_sidebar_bookmarks), swindow, TRUE, TRUE, 0);
- gtk_widget_show_all (GTK_WIDGET (ev_sidebar_bookmarks));
+ gtk_box_pack_start (GTK_BOX (ev_sidebar_links), swindow, TRUE, TRUE, 0);
+ gtk_widget_show_all (GTK_WIDGET (ev_sidebar_links));
column = gtk_tree_view_column_new ();
gtk_tree_view_column_set_expand (GTK_TREE_VIEW_COLUMN (column), TRUE);
@@ -168,43 +168,43 @@ ev_sidebar_bookmarks_construct (EvSidebarBookmarks *ev_sidebar_bookmarks)
NULL);
gtk_tree_view_column_pack_start (GTK_TREE_VIEW_COLUMN (column), renderer, TRUE);
gtk_tree_view_column_set_attributes (GTK_TREE_VIEW_COLUMN (column), renderer,
- "markup", BOOKMARKS_COLUMN_MARKUP,
+ "markup", LINKS_COLUMN_MARKUP,
NULL);
renderer = gtk_cell_renderer_text_new ();
gtk_tree_view_column_pack_end (GTK_TREE_VIEW_COLUMN (column), renderer, FALSE);
gtk_tree_view_column_set_cell_data_func (GTK_TREE_VIEW_COLUMN (column), renderer,
- (GtkTreeCellDataFunc) bookmarks_page_num_func,
+ (GtkTreeCellDataFunc) links_page_num_func,
NULL, NULL);
selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (priv->tree_view));
g_signal_connect (selection, "changed",
G_CALLBACK (selection_changed_cb),
- ev_sidebar_bookmarks);
+ ev_sidebar_links);
}
static void
-ev_sidebar_bookmarks_init (EvSidebarBookmarks *ev_sidebar_bookmarks)
+ev_sidebar_links_init (EvSidebarLinks *ev_sidebar_links)
{
- ev_sidebar_bookmarks->priv = EV_SIDEBAR_BOOKMARKS_GET_PRIVATE (ev_sidebar_bookmarks);
+ ev_sidebar_links->priv = EV_SIDEBAR_LINKS_GET_PRIVATE (ev_sidebar_links);
- ev_sidebar_bookmarks_construct (ev_sidebar_bookmarks);
+ ev_sidebar_links_construct (ev_sidebar_links);
}
static void
-bookmarks_page_num_func (GtkTreeViewColumn *tree_column,
- GtkCellRenderer *cell,
- GtkTreeModel *tree_model,
- GtkTreeIter *iter,
- gpointer data)
+links_page_num_func (GtkTreeViewColumn *tree_column,
+ GtkCellRenderer *cell,
+ GtkTreeModel *tree_model,
+ GtkTreeIter *iter,
+ gpointer data)
{
int page_num;
gboolean page_valid;
gtk_tree_model_get (tree_model, iter,
- BOOKMARKS_COLUMN_PAGE_NUM, &page_num,
- BOOKMARKS_COLUMN_PAGE_VALID, &page_valid,
+ LINKS_COLUMN_PAGE_NUM, &page_num,
+ LINKS_COLUMN_PAGE_VALID, &page_valid,
-1);
if (page_valid) {
@@ -224,69 +224,69 @@ bookmarks_page_num_func (GtkTreeViewColumn *tree_column,
/* Public Functions */
GtkWidget *
-ev_sidebar_bookmarks_new (void)
+ev_sidebar_links_new (void)
{
- GtkWidget *ev_sidebar_bookmarks;
+ GtkWidget *ev_sidebar_links;
- ev_sidebar_bookmarks = g_object_new (EV_TYPE_SIDEBAR_BOOKMARKS, NULL);
+ ev_sidebar_links = g_object_new (EV_TYPE_SIDEBAR_LINKS, NULL);
- return ev_sidebar_bookmarks;
+ return ev_sidebar_links;
}
static void
stack_data_free (IdleStackData *stack_data,
- EvDocumentBookmarks *document_bookmarks)
+ EvDocumentLinks *document_links)
{
g_assert (stack_data);
if (stack_data->tree_iter)
gtk_tree_iter_free (stack_data->tree_iter);
- if (stack_data->bookmarks_iter)
- ev_document_bookmarks_free_iter (document_bookmarks, stack_data->bookmarks_iter);
+ if (stack_data->links_iter)
+ ev_document_links_free_iter (document_links, stack_data->links_iter);
g_free (stack_data);
}
static gboolean
-do_one_iteration (EvSidebarBookmarks *ev_sidebar_bookmarks)
+do_one_iteration (EvSidebarLinks *ev_sidebar_links)
{
- EvSidebarBookmarksPrivate *priv = ev_sidebar_bookmarks->priv;
- EvBookmark *bookmark;
+ EvSidebarLinksPrivate *priv = ev_sidebar_links->priv;
+ EvLink *link;
IdleStackData *stack_data;
GtkTreeIter tree_iter;
- EvDocumentBookmarksIter *child_iter;
+ EvDocumentLinksIter *child_iter;
gint page;
g_assert (priv->idle_stack);
stack_data = (IdleStackData *) priv->idle_stack->data;
- bookmark = ev_document_bookmarks_get_bookmark
- (EV_DOCUMENT_BOOKMARKS (priv->current_document),
- stack_data->bookmarks_iter);
- if (bookmark == NULL) {
+ link = ev_document_links_get_link
+ (EV_DOCUMENT_LINKS (priv->current_document),
+ stack_data->links_iter);
+ if (link == NULL) {
g_warning ("mismatch in model. No values available at current level.\n");
return FALSE;
}
- page = ev_bookmark_get_page (bookmark);
+ page = ev_link_get_page (link);
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, ev_bookmark_get_title (bookmark),
- BOOKMARKS_COLUMN_PAGE_NUM, page,
+ LINKS_COLUMN_MARKUP, ev_link_get_title (link),
+ LINKS_COLUMN_PAGE_NUM, page,
/* FIXME: Handle links for real. */
- BOOKMARKS_COLUMN_PAGE_VALID, (page >= 0),
- BOOKMARKS_COLUMN_BOOKMARK, bookmark,
+ LINKS_COLUMN_PAGE_VALID, (page >= 0),
+ LINKS_COLUMN_LINK, link,
-1);
- g_object_unref (bookmark);
+ g_object_unref (link);
- child_iter = ev_document_bookmarks_get_child (EV_DOCUMENT_BOOKMARKS (priv->current_document),
- stack_data->bookmarks_iter);
+ child_iter = ev_document_links_get_child (EV_DOCUMENT_LINKS (priv->current_document),
+ stack_data->links_iter);
if (child_iter) {
IdleStackData *child_stack_data;
child_stack_data = g_new0 (IdleStackData, 1);
child_stack_data->tree_iter = gtk_tree_iter_copy (&tree_iter);
- child_stack_data->bookmarks_iter = child_iter;
+ child_stack_data->links_iter = child_iter;
priv->idle_stack = g_list_prepend (priv->idle_stack, child_stack_data);
return TRUE;
@@ -294,13 +294,13 @@ do_one_iteration (EvSidebarBookmarks *ev_sidebar_bookmarks)
/* We don't have children, so we need to walk to the next node */
while (TRUE) {
- if (ev_document_bookmarks_next (EV_DOCUMENT_BOOKMARKS (priv->current_document),
- stack_data->bookmarks_iter))
+ if (ev_document_links_next (EV_DOCUMENT_LINKS (priv->current_document),
+ stack_data->links_iter))
return TRUE;
/* We're done with this level. Pop it off the idle stack and go
* to the next level */
- stack_data_free (stack_data, EV_DOCUMENT_BOOKMARKS (priv->current_document));
+ stack_data_free (stack_data, EV_DOCUMENT_LINKS (priv->current_document));
priv->idle_stack = g_list_delete_link (priv->idle_stack, priv->idle_stack);
if (priv->idle_stack == NULL)
return FALSE;
@@ -309,14 +309,14 @@ do_one_iteration (EvSidebarBookmarks *ev_sidebar_bookmarks)
}
static gboolean
-populate_bookmarks_idle (gpointer data)
+populate_links_idle (gpointer data)
{
GTimer *timer;
gint i;
gulong microseconds = 0;
- EvSidebarBookmarks *ev_sidebar_bookmarks = (EvSidebarBookmarks *)data;
- EvSidebarBookmarksPrivate *priv = ev_sidebar_bookmarks->priv;
+ EvSidebarLinks *ev_sidebar_links = (EvSidebarLinks *)data;
+ EvSidebarLinksPrivate *priv = ev_sidebar_links->priv;
if (priv->idle_stack == NULL) {
priv->idle_id = 0;
@@ -329,7 +329,7 @@ populate_bookmarks_idle (gpointer data)
timer = g_timer_new ();
i = 0;
g_timer_start (timer);
- while (do_one_iteration (ev_sidebar_bookmarks)) {
+ while (do_one_iteration (ev_sidebar_links)) {
i++;
g_timer_elapsed (timer, &microseconds);
if (microseconds > IDLE_WORK_LENGTH)
@@ -343,13 +343,13 @@ populate_bookmarks_idle (gpointer data)
}
void
-ev_sidebar_bookmarks_clear_document (EvSidebarBookmarks *sidebar_bookmarks)
+ev_sidebar_links_clear_document (EvSidebarLinks *sidebar_links)
{
- EvSidebarBookmarksPrivate *priv;
+ EvSidebarLinksPrivate *priv;
- g_return_if_fail (EV_IS_SIDEBAR_BOOKMARKS (sidebar_bookmarks));
+ g_return_if_fail (EV_IS_SIDEBAR_LINKS (sidebar_links));
- priv = sidebar_bookmarks->priv;
+ priv = sidebar_links->priv;
if (priv->current_document) {
g_object_unref (priv->current_document);
priv->current_document = NULL;
@@ -368,31 +368,31 @@ ev_sidebar_bookmarks_clear_document (EvSidebarBookmarks *sidebar_bookmarks)
}
void
-ev_sidebar_bookmarks_set_document (EvSidebarBookmarks *sidebar_bookmarks,
- EvDocument *document)
+ev_sidebar_links_set_document (EvSidebarLinks *sidebar_links,
+ EvDocument *document)
{
- EvSidebarBookmarksPrivate *priv;
- EvDocumentBookmarksIter *bookmarks_iter;
+ EvSidebarLinksPrivate *priv;
+ EvDocumentLinksIter *links_iter;
- g_return_if_fail (EV_IS_SIDEBAR_BOOKMARKS (sidebar_bookmarks));
+ g_return_if_fail (EV_IS_SIDEBAR_LINKS (sidebar_links));
g_return_if_fail (EV_IS_DOCUMENT (document));
- priv = sidebar_bookmarks->priv;
+ priv = sidebar_links->priv;
g_object_ref (document);
- ev_sidebar_bookmarks_clear_document (sidebar_bookmarks);
+ ev_sidebar_links_clear_document (sidebar_links);
priv->current_document = document;
- bookmarks_iter = ev_document_bookmarks_begin_read (EV_DOCUMENT_BOOKMARKS (document));
- if (bookmarks_iter) {
+ links_iter = ev_document_links_begin_read (EV_DOCUMENT_LINKS (document));
+ if (links_iter) {
IdleStackData *stack_data;
stack_data = g_new0 (IdleStackData, 1);
- stack_data->bookmarks_iter = bookmarks_iter;
+ stack_data->links_iter = links_iter;
stack_data->tree_iter = NULL;
priv->idle_stack = g_list_prepend (priv->idle_stack, stack_data);
- priv->idle_id = g_idle_add (populate_bookmarks_idle, sidebar_bookmarks);
+ priv->idle_id = g_idle_add (populate_links_idle, sidebar_links);
}
}
diff --git a/shell/ev-sidebar-links.h b/shell/ev-sidebar-links.h
new file mode 100644
index 0000000..59af8bb
--- /dev/null
+++ b/shell/ev-sidebar-links.h
@@ -0,0 +1,63 @@
+/* ev-sidebar-links.h
+ * this file is part of evince, a gnome document viewer
+ *
+ * Copyright (C) 2004 Red Hat, Inc.
+ *
+ * Author:
+ * Jonathan Blandford <jrb@alum.mit.edu>
+ *
+ * Evince is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * Evince is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
+ */
+
+#ifndef __EV_SIDEBAR_LINKS_H__
+#define __EV_SIDEBAR_LINKS_H__
+
+#include <gtk/gtkvbox.h>
+#include "ev-document.h"
+
+G_BEGIN_DECLS
+
+typedef struct _EvSidebarLinks EvSidebarLinks;
+typedef struct _EvSidebarLinksClass EvSidebarLinksClass;
+typedef struct _EvSidebarLinksPrivate EvSidebarLinksPrivate;
+
+#define EV_TYPE_SIDEBAR_LINKS (ev_sidebar_links_get_type())
+#define EV_SIDEBAR_LINKS(object) (G_TYPE_CHECK_INSTANCE_CAST((object), EV_TYPE_SIDEBAR_LINKS, EvSidebarLinks))
+#define EV_SIDEBAR_LINKS_CLASS(klass) (G_TYPE_CHACK_CLASS_CAST((klass), EV_TYPE_SIDEBAR_LINKS, EvSidebarLinksClass))
+#define EV_IS_SIDEBAR_LINKS(object) (G_TYPE_CHECK_INSTANCE_TYPE((object), EV_TYPE_SIDEBAR_LINKS))
+#define EV_IS_SIDEBAR_LINKS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), EV_TYPE_SIDEBAR_LINKS))
+#define EV_SIDEBAR_LINKS_GET_CLASS(object) (G_TYPE_INSTANCE_GET_CLASS((object), EV_TYPE_SIDEBAR_LINKS, EvSidebarLinksClass))
+
+struct _EvSidebarLinks {
+ GtkVBox base_instance;
+
+ EvSidebarLinksPrivate *priv;
+};
+
+struct _EvSidebarLinksClass {
+ GtkVBoxClass base_class;
+};
+
+GType ev_sidebar_links_get_type (void);
+GtkWidget *ev_sidebar_links_new (void);
+void ev_sidebar_links_set_document (EvSidebarLinks *ev_sidebar_links,
+ EvDocument *document);
+void ev_sidebar_links_clear_document (EvSidebarLinks *sidebar_links);
+
+G_END_DECLS
+
+#endif /* __EV_SIDEBAR_LINKS_H__ */
+
+
diff --git a/shell/ev-sidebar.c b/shell/ev-sidebar.c
index f042f0c..d21a13a 100644
--- a/shell/ev-sidebar.c
+++ b/shell/ev-sidebar.c
@@ -29,8 +29,8 @@
#include "ev-sidebar.h"
#include "ev-document-thumbnails.h"
-#include "ev-document-bookmarks.h"
-#include "ev-sidebar-bookmarks.h"
+#include "ev-document-links.h"
+#include "ev-sidebar-links.h"
#include "ev-sidebar-thumbnails.h"
typedef struct
@@ -207,18 +207,15 @@ ev_sidebar_set_document (EvSidebar *sidebar,
PAGE_COLUMN_MAIN_WIDGET, &widget,
-1);
- if (EV_IS_SIDEBAR_BOOKMARKS (widget)
- && EV_IS_DOCUMENT_BOOKMARKS (document)
- && ev_document_bookmarks_has_document_bookmarks (EV_DOCUMENT_BOOKMARKS (document)))
- ev_sidebar_bookmarks_set_document (EV_SIDEBAR_BOOKMARKS (widget),
- document);
+ if (EV_IS_SIDEBAR_LINKS (widget)
+ && EV_IS_DOCUMENT_LINKS (document)
+ && ev_document_links_has_document_links (EV_DOCUMENT_LINKS (document)))
+ ev_sidebar_links_set_document (EV_SIDEBAR_LINKS (widget),
+ document);
else if (EV_IS_SIDEBAR_THUMBNAILS (widget) &&
EV_IS_DOCUMENT_THUMBNAILS (document))
ev_sidebar_thumbnails_set_document (EV_SIDEBAR_THUMBNAILS (widget),
document);
-
-
-
}
diff --git a/shell/ev-view.c b/shell/ev-view.c
index 678770b..2b04c87 100644
--- a/shell/ev-view.c
+++ b/shell/ev-view.c
@@ -930,35 +930,35 @@ set_document_page (EvView *view, int page)
}
static void
-go_to_bookmark (EvView *view, EvBookmark *bookmark)
+go_to_link (EvView *view, EvLink *link)
{
- EvBookmarkType type;
+ EvLinkType type;
int page;
- type = ev_bookmark_get_bookmark_type (bookmark);
+ type = ev_link_get_link_type (link);
- if (type == EV_BOOKMARK_TYPE_LINK) {
- page = ev_bookmark_get_page (bookmark);
+ if (type == EV_LINK_TYPE_PAGE) {
+ page = ev_link_get_page (link);
set_document_page (view, page);
}
}
void
-ev_view_go_to_bookmark (EvView *view, EvBookmark *bookmark)
+ev_view_go_to_link (EvView *view, EvLink *link)
{
- go_to_bookmark (view, bookmark);
- ev_history_add_link (view->history, bookmark);
+ go_to_link (view, link);
+ ev_history_add_link (view->history, link);
}
static void
go_to_index (EvView *view, int index)
{
- EvBookmark *bookmark;
+ EvLink *link;
- bookmark = ev_history_get_link_nth (view->history, index);
- g_return_if_fail (bookmark != NULL);
+ link = ev_history_get_link_nth (view->history, index);
+ g_return_if_fail (link != NULL);
- go_to_bookmark (view, bookmark);
+ go_to_link (view, link);
}
void
diff --git a/shell/ev-view.h b/shell/ev-view.h
index 067873b..9390263 100644
--- a/shell/ev-view.h
+++ b/shell/ev-view.h
@@ -23,7 +23,7 @@
#include <gtk/gtkwidget.h>
#include "ev-document.h"
-#include "ev-bookmark.h"
+#include "ev-link.h"
G_BEGIN_DECLS
@@ -47,8 +47,8 @@ void ev_view_select_all (EvView *view);
/* Navigation */
void ev_view_go_back (EvView *view);
void ev_view_go_forward (EvView *view);
-void ev_view_go_to_bookmark (EvView *view,
- EvBookmark *bookmark);
+void ev_view_go_to_link (EvView *view,
+ EvLink *link);
void ev_view_set_page (EvView *view,
int page);
int ev_view_get_page (EvView *view);
diff --git a/shell/ev-window.c b/shell/ev-window.c
index 0f26863..f4a9288 100644
--- a/shell/ev-window.c
+++ b/shell/ev-window.c
@@ -32,7 +32,7 @@
#include "ev-navigation-action.h"
#include "ev-page-action.h"
#include "ev-sidebar.h"
-#include "ev-sidebar-bookmarks.h"
+#include "ev-sidebar-links.h"
#include "ev-sidebar-thumbnails.h"
#include "ev-view.h"
#include "ev-print-job.h"
@@ -191,9 +191,9 @@ update_action_sensitivity (EvWindow *ev_window)
}
void
-ev_window_open_bookmark (EvWindow *ev_window, EvBookmark *bookmark)
+ev_window_open_link (EvWindow *ev_window, EvLink *link)
{
- ev_view_go_to_bookmark (EV_VIEW (ev_window->priv->view), bookmark);
+ ev_view_go_to_link (EV_VIEW (ev_window->priv->view), link);
}
gboolean
@@ -1452,11 +1452,11 @@ ev_window_init (EvWindow *ev_window)
ev_window->priv->sidebar);
/* Stub sidebar, for now */
- sidebar_widget = ev_sidebar_bookmarks_new ();
+ sidebar_widget = ev_sidebar_links_new ();
gtk_widget_show (sidebar_widget);
ev_sidebar_add_page (EV_SIDEBAR (ev_window->priv->sidebar),
- "bookmarks",
- _("Bookmarks"),
+ "index",
+ _("Index"),
sidebar_widget);
sidebar_widget = ev_sidebar_thumbnails_new ();
diff --git a/shell/ev-window.h b/shell/ev-window.h
index ebd1fc4..97e0e02 100644
--- a/shell/ev-window.h
+++ b/shell/ev-window.h
@@ -26,7 +26,7 @@
#include <glib-object.h>
#include <gtk/gtkwindow.h>
-#include "ev-bookmark.h"
+#include "ev-link.h"
G_BEGIN_DECLS
@@ -54,11 +54,12 @@ struct _EvWindowClass {
const char *string);
};
-GType ev_window_get_type (void);
-void ev_window_open (EvWindow *ev_window, const char *uri);
-void ev_window_open_bookmark (EvWindow *ev_window,
- EvBookmark *bookmark);
-gboolean ev_window_is_empty (const EvWindow *ev_window);
+GType ev_window_get_type (void);
+void ev_window_open (EvWindow *ev_window,
+ const char *uri);
+void ev_window_open_link (EvWindow *ev_window,
+ EvLink *link);
+gboolean ev_window_is_empty (const EvWindow *ev_window);
G_END_DECLS