Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/shell/ev-sidebar.c
diff options
context:
space:
mode:
authorAnders Carlsson <andersca@gnome.org>2004-12-22 20:54:22 (GMT)
committer Anders Carlsson <andersca@src.gnome.org>2004-12-22 20:54:22 (GMT)
commitca0836cb912f3b88834cae97774079314727c6e2 (patch)
tree811a2c5b04a9cf17933994f65ad95d2bc2cded6b /shell/ev-sidebar.c
parentf396b95d8d10ceb3824bf00405a04b6104fea883 (diff)
Add thumbnail support.
2004-12-22 Anders Carlsson <andersca@gnome.org> * backend/Makefile.am: * backend/ev-document-thumbnails.c: (ev_document_thumbnails_get_type), (ev_document_thumbnails_get_thumbnail): * backend/ev-document-thumbnails.h: * pixbuf/pixbuf-document.c: (G_DEFINE_TYPE_WITH_CODE), (pixbuf_document_thumbnails_get_thumbnail), (pixbuf_document_document_thumbnails_iface_init): * shell/Makefile.am: * shell/ev-sidebar-thumbnails.c: (ev_sidebar_thumbnails_destroy), (ev_sidebar_thumbnails_class_init), (ev_sidebar_thumbnails_init), (populate_thumbnails), (ev_sidebar_thumbnails_set_document): * shell/ev-sidebar-thumbnails.h: * shell/ev-sidebar.c: (ev_sidebar_init), (ev_sidebar_add_page), (ev_sidebar_set_document): * shell/ev-utils.c: (gaussian), (create_blur_filter), (create_shadow), (ev_pixbuf_add_shadow): * shell/ev-utils.h: Add thumbnail support.
Diffstat (limited to 'shell/ev-sidebar.c')
-rw-r--r--shell/ev-sidebar.c17
1 files changed, 15 insertions, 2 deletions
diff --git a/shell/ev-sidebar.c b/shell/ev-sidebar.c
index 780f9f6..98beaa5 100644
--- a/shell/ev-sidebar.c
+++ b/shell/ev-sidebar.c
@@ -28,7 +28,9 @@
#include <gtk/gtk.h>
#include "ev-sidebar.h"
+#include "ev-document-thumbnails.h"
#include "ev-sidebar-bookmarks.h"
+#include "ev-sidebar-thumbnails.h"
typedef struct
{
@@ -77,7 +79,7 @@ ev_sidebar_init (EvSidebar *ev_sidebar)
{
GtkWidget *hbox;
GtkCellRenderer *renderer;
-
+
ev_sidebar->priv = EV_SIDEBAR_GET_PRIVATE (ev_sidebar);
gtk_box_set_spacing (GTK_BOX (ev_sidebar), 6);
@@ -100,6 +102,7 @@ ev_sidebar_init (EvSidebar *ev_sidebar)
gtk_box_pack_start (GTK_BOX (hbox),
ev_sidebar->priv->option_menu,
FALSE, FALSE, 0);
+
renderer = gtk_cell_renderer_text_new ();
gtk_cell_layout_pack_start (GTK_CELL_LAYOUT (ev_sidebar->priv->option_menu),
renderer, TRUE);
@@ -172,6 +175,10 @@ ev_sidebar_add_page (EvSidebar *ev_sidebar,
PAGE_COLUMN_MAIN_WIDGET, main_widget,
PAGE_COLUMN_NOTEBOOK_INDEX, index,
-1);
+
+ /* Set the first item added as active */
+ if (gtk_combo_box_get_active (GTK_COMBO_BOX (ev_sidebar->priv->option_menu)))
+ gtk_combo_box_set_active (GTK_COMBO_BOX (ev_sidebar->priv->option_menu), 0);
}
void
@@ -204,7 +211,13 @@ ev_sidebar_set_document (EvSidebar *sidebar,
&& ev_bookmarks_has_bookmarks (document)... */
ev_sidebar_bookmarks_set_document (EV_SIDEBAR_BOOKMARKS (widget),
document);
- /* else if EV_IS_SIDEBAR_THUMBNAILS... */
+ else if (EV_IS_SIDEBAR_THUMBNAILS (widget) &&
+ EV_IS_DOCUMENT_THUMBNAILS (document))
+ ev_sidebar_thumbnails_set_document (EV_SIDEBAR_THUMBNAILS (widget),
+ document);
+
+
+
}