GtkWidget *image;
ev_sidebar->priv = EV_SIDEBAR_GET_PRIVATE (ev_sidebar);
- gtk_box_set_spacing (GTK_BOX (ev_sidebar), 6);
/* data model */
ev_sidebar->priv->page_model = (GtkTreeModel *)
ev_sidebar->priv->label = gtk_label_new ("");
gtk_box_pack_start (GTK_BOX (select_hbox),
ev_sidebar->priv->label,
- TRUE, FALSE, 0);
+ FALSE, FALSE, 0);
gtk_widget_show (ev_sidebar->priv->label);
arrow = gtk_arrow_new (GTK_ARROW_DOWN, GTK_SHADOW_NONE);
gtk_container_add (GTK_CONTAINER (select_button), select_hbox);
gtk_widget_show (select_hbox);
- gtk_box_pack_start (GTK_BOX (hbox), select_button, FALSE, FALSE, 0);
+ gtk_box_pack_start (GTK_BOX (hbox), select_button, TRUE, TRUE, 0);
gtk_widget_show (select_button);
close_button = gtk_button_new ();
result;
result = gtk_tree_model_iter_next (priv->page_model, &iter)) {
GtkWidget *widget;
+ GtkWidget *menu_widget;
gtk_tree_model_get (priv->page_model, &iter,
PAGE_COLUMN_MAIN_WIDGET, &widget,
+ PAGE_COLUMN_MENU_ITEM, &menu_widget,
-1);
- 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);
+
+ if (EV_IS_SIDEBAR_LINKS (widget)) {
+ if (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);
+ continue;
+ } else {
+ gtk_widget_set_sensitive (menu_widget, FALSE);
+ }
+ }
+
+ if (EV_IS_SIDEBAR_THUMBNAILS (widget)) {
+ if (EV_IS_DOCUMENT_THUMBNAILS (document) &&
+ (ev_document_get_n_pages (document) > 1)) {
+ ev_sidebar_thumbnails_set_document (EV_SIDEBAR_THUMBNAILS (widget), document);
+ continue;
+ } else {
+ gtk_widget_set_sensitive (menu_widget, FALSE);
+ }
}
}
}
+
+gboolean
+ev_sidebar_supports_document (EvSidebar *ev_sidebar,
+ EvDocument *document)
+{
+ gboolean need_thumbnails;
+ gboolean need_index;
+
+ need_thumbnails = EV_IS_DOCUMENT_THUMBNAILS (document) && (ev_document_get_n_pages (document) > 1);
+ need_index = (EV_IS_DOCUMENT_LINKS (document));
+
+ return need_thumbnails || need_index;
+}
+
+
+