X-Git-Url: https://www.fi.muni.cz/~kas/git//home/kas/public_html/git/?a=blobdiff_plain;f=shell%2Fev-dualscreen.c;h=d80f74b36d6290183a1a30b47b78d4c632035a80;hb=69aaec8ae6f35af108718e904674e07589ebf302;hp=7f60546556e797cb8d7af1695654529064ab4b02;hpb=ffc1f12a9dd407c4924960276a018ec785c3740b;p=evince.git diff --git a/shell/ev-dualscreen.c b/shell/ev-dualscreen.c index 7f605465..d80f74b3 100644 --- a/shell/ev-dualscreen.c +++ b/shell/ev-dualscreen.c @@ -28,6 +28,8 @@ #include "ev-window.h" #include "ev-view.h" #include "ev-utils.h" +#include "ev-sidebar.h" +#include "ev-sidebar-thumbnails.h" struct _EvDSCWindowPrivate { GtkWidget *main_box; @@ -239,22 +241,46 @@ ev_dscwindow_init (EvDSCWindow *ev_dscwindow) GtkWidget *h = gtk_hpaned_new (); GtkWidget *v = gtk_vbox_new (FALSE, 0); - ev_dscwindow->priv->overview_scrolled_window = GTK_WIDGET (g_object_new ( + ev_dscwindow->priv->model = ev_document_model_new (); + + ev_dscwindow->priv->overview = ev_sidebar_new (); + ev_sidebar_set_model (EV_SIDEBAR (ev_dscwindow->priv->overview), + ev_dscwindow->priv->model); + gtk_paned_pack1 (GTK_PANED (h), + ev_dscwindow->priv->overview, FALSE, FALSE); + gtk_widget_show (ev_dscwindow->priv->overview); + + /* Stub sidebar, for now */ + + GtkWidget *sidebar_widget; + sidebar_widget = ev_sidebar_thumbnails_new (); + /*ev_window->priv->sidebar_thumbs = sidebar_widget;*/ + /*g_signal_connect (sidebar_widget, + "notify::main-widget", + G_CALLBACK (sidebar_page_main_widget_update_cb), + ev_window); + sidebar_page_main_widget_update_cb (G_OBJECT (sidebar_widget), NULL, ev_window);*/ + gtk_widget_show (sidebar_widget); + ev_sidebar_add_page (EV_SIDEBAR (ev_dscwindow->priv->overview), + sidebar_widget); + +/* ev_dscwindow->priv->overview_scrolled_window = GTK_WIDGET (g_object_new ( GTK_TYPE_SCROLLED_WINDOW, "shadow-type", GTK_SHADOW_IN, NULL)); gtk_box_pack_start (GTK_BOX (v), ev_dscwindow->priv->overview_scrolled_window, TRUE, TRUE, 0); - ev_dscwindow->priv->model = ev_document_model_new (); + ev_dscwindow->priv->overview = ev_view_new (); ev_view_set_page_cache_size (EV_VIEW (ev_dscwindow->priv->overview), PAGE_CACHE_SIZE); - ev_view_set_model (EV_VIEW (ev_dscwindow->priv->overview), ev_dscwindow->priv->model); + ev_view_set_model (EV_VIEW (ev_dscwindow->priv->overview), ev_dscwindow->priv->model);*/ + ev_document_model_set_continuous (ev_dscwindow->priv->model, TRUE); ev_document_model_set_dual_page (ev_dscwindow->priv->model, FALSE); ev_document_model_set_sizing_mode (ev_dscwindow->priv->model, EV_SIZING_BEST_FIT); - gtk_container_add (GTK_CONTAINER (ev_dscwindow->priv->overview_scrolled_window), +/* gtk_container_add (GTK_CONTAINER (ev_dscwindow->priv->overview_scrolled_window), ev_dscwindow->priv->overview); - + */ GtkWidget *e = gtk_expander_new (_("Expensive features")); gtk_expander_set_expanded (GTK_EXPANDER (e), TRUE); @@ -283,28 +309,21 @@ ev_dscwindow_init (EvDSCWindow *ev_dscwindow) gtk_box_pack_end (GTK_BOX (v), e, FALSE, TRUE, 0); gtk_paned_add1 (GTK_PANED (h), v); -/* - priv->notesview_scrolled_window = GTK_WIDGET (g_object_new ( + ev_dscwindow->priv->notesview_scrolled_window = GTK_WIDGET (g_object_new ( GTK_TYPE_SCROLLED_WINDOW, "shadow-type", GTK_SHADOW_IN, NULL)); - gtk_paned_add2 (GTK_PANED (h), priv->notesview_scrolled_window); - - priv->notesview = ev_view_new (); - g_object_ref (priv->notesview); - ev_view_set_screen_dpi (EV_VIEW (priv->notesview), - get_screen_dpi (GTK_WINDOW (self))); -+ gtk_container_add (GTK_CONTAINER (priv->notesview_scrolled_window), -+ priv->notesview); -+ -+ ev_view_set_continuous (EV_VIEW (priv->notesview), FALSE); -+ ev_view_set_dual_page (EV_VIEW (priv->notesview), FALSE); -+ ev_view_set_sizing_mode (EV_VIEW (priv->notesview), EV_SIZING_BEST_FIT); -+ } -+ -+ gtk_paned_set_position (GTK_PANED (h), 400); + gtk_paned_add2 (GTK_PANED (h), ev_dscwindow->priv->notesview_scrolled_window); + + ev_dscwindow->priv->notesview = ev_view_new (); + g_object_ref (ev_dscwindow->priv->notesview); + gtk_container_add (GTK_CONTAINER (ev_dscwindow->priv->notesview_scrolled_window), + ev_dscwindow->priv->notesview); + ev_view_set_model (EV_VIEW (ev_dscwindow->priv->notesview), ev_dscwindow->priv->model); + + gtk_paned_set_position (GTK_PANED (h), 400); gtk_widget_show_all (h); -+ gtk_container_add (GTK_CONTAINER (self), h); -+ -+ /* fallback if we have >2 monitors (see window placement) */ + gtk_container_add (GTK_CONTAINER (ev_dscwindow), h); + +/* fallback if we have >2 monitors (see window placement) */ /*+ gtk_window_set_default_size (GTK_WINDOW (self), 800, 600); + + g_signal_connect (h, "notify::position",