[Xfce4-commits] <ristretto:ristretto-0.0> Add popup menu for the image-viewer

Stephan Arts noreply at xfce.org
Sun Oct 23 19:17:32 CEST 2011


Updating branch refs/heads/ristretto-0.0
         to b318158146c7beeadb5337b2e4d1e8400b5b7473 (commit)
       from e3d9c8c54eafc7110139d1bd4d4b1bc04a1110d4 (commit)

commit b318158146c7beeadb5337b2e4d1e8400b5b7473
Author: Stephan Arts <stephan at xfce.org>
Date:   Fri Sep 4 19:04:34 2009 +0200

    Add popup menu for the image-viewer

 ChangeLog              |    5 +++++
 src/main_window.c      |   31 ++++++++++++++++++++++++++++---
 src/main_window_ui.xml |   15 +++++++++++++++
 3 files changed, 48 insertions(+), 3 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index c47ee18..81f6c09 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,10 @@
 2009-09-04  Stephan Arts <stephan at xfce.org>
 
+	* src/main_window.c,
+	  src/main_window_ui.xml: Add popup-menu for the image-viewer
+
+2009-09-04  Stephan Arts <stephan at xfce.org>
+
 	* src/image_list.c: Emit 'iterator-changed' signal 
 	  on all iterators when the sort-function changes
 
diff --git a/src/main_window.c b/src/main_window.c
index dfbd7bc..7a5044a 100644
--- a/src/main_window.c
+++ b/src/main_window.c
@@ -74,7 +74,7 @@ struct _RsttoMainWindowPriv
     GtkWidget *menubar;
     GtkWidget *toolbar;
     GtkWidget *image_list_toolbar;
-    GtkWidget *image_list_toolbar_menu;
+    GtkWidget *image_viewer_menu;
     GtkWidget *position_menu;
     GtkWidget *picture_viewer;
     GtkWidget *p_viewer_s_window;
@@ -462,7 +462,7 @@ rstto_main_window_init (RsttoMainWindow *window)
     window->priv->menubar = gtk_ui_manager_get_widget (window->priv->ui_manager, "/main-menu");
     window->priv->toolbar = gtk_ui_manager_get_widget (window->priv->ui_manager, "/file-toolbar");
     window->priv->image_list_toolbar = gtk_ui_manager_get_widget (window->priv->ui_manager, "/navigation-toolbar");
-    window->priv->image_list_toolbar_menu = gtk_ui_manager_get_widget (window->priv->ui_manager, "/tb-menu");
+    window->priv->image_viewer_menu = gtk_ui_manager_get_widget (window->priv->ui_manager, "/image-viewer-menu");
     window->priv->position_menu = gtk_ui_manager_get_widget (window->priv->ui_manager, "/navigation-toolbar-menu");
 
     
@@ -487,6 +487,8 @@ rstto_main_window_init (RsttoMainWindow *window)
     window->priv->p_viewer_s_window = gtk_scrolled_window_new (NULL, NULL);
     gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (window->priv->p_viewer_s_window), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
     gtk_container_add (GTK_CONTAINER (window->priv->p_viewer_s_window), window->priv->picture_viewer);
+
+    rstto_picture_viewer_set_menu (RSTTO_PICTURE_VIEWER (window->priv->picture_viewer), window->priv->image_viewer_menu);
     window->priv->thumbnailbar = rstto_thumbnail_bar_new (NULL);
 
     window->priv->hpaned_left = gtk_hpaned_new();
@@ -820,6 +822,14 @@ rstto_main_window_update_buttons (RsttoMainWindow *window)
             gtk_widget_set_sensitive (gtk_ui_manager_get_widget (window->priv->ui_manager, "/navigation-toolbar/zoom-100"), FALSE);
             gtk_widget_set_sensitive (gtk_ui_manager_get_widget (window->priv->ui_manager, "/navigation-toolbar/rotate-ccw"), FALSE);
             gtk_widget_set_sensitive (gtk_ui_manager_get_widget (window->priv->ui_manager, "/navigation-toolbar/rotate-cw"), FALSE);
+
+            /* Image Viewer popup-menu */
+            gtk_widget_set_sensitive ( gtk_ui_manager_get_widget ( window->priv->ui_manager, "/image-viewer-menu/close"), FALSE);
+            gtk_widget_set_sensitive ( gtk_ui_manager_get_widget ( window->priv->ui_manager, "/image-viewer-menu/open-with-menu"), FALSE);
+            gtk_widget_set_sensitive ( gtk_ui_manager_get_widget ( window->priv->ui_manager, "/image-viewer-menu/zoom-in"), FALSE);
+            gtk_widget_set_sensitive ( gtk_ui_manager_get_widget ( window->priv->ui_manager, "/image-viewer-menu/zoom-out"), FALSE);
+            gtk_widget_set_sensitive ( gtk_ui_manager_get_widget ( window->priv->ui_manager, "/image-viewer-menu/zoom-100"), FALSE);
+            gtk_widget_set_sensitive ( gtk_ui_manager_get_widget ( window->priv->ui_manager, "/image-viewer-menu/zoom-fit"), FALSE);
             break;
         case 1: 
             gtk_widget_set_sensitive ( gtk_ui_manager_get_widget ( window->priv->ui_manager, "/main-menu/file-menu/save-copy"), TRUE);
@@ -869,6 +879,14 @@ rstto_main_window_update_buttons (RsttoMainWindow *window)
             gtk_widget_set_sensitive (gtk_ui_manager_get_widget (window->priv->ui_manager, "/navigation-toolbar/zoom-100"), TRUE);
             gtk_widget_set_sensitive (gtk_ui_manager_get_widget (window->priv->ui_manager, "/navigation-toolbar/rotate-ccw"), TRUE);
             gtk_widget_set_sensitive (gtk_ui_manager_get_widget (window->priv->ui_manager, "/navigation-toolbar/rotate-cw"), TRUE);
+
+            /* Image Viewer popup-menu */
+            gtk_widget_set_sensitive ( gtk_ui_manager_get_widget ( window->priv->ui_manager, "/image-viewer-menu/close"), TRUE);
+            gtk_widget_set_sensitive ( gtk_ui_manager_get_widget ( window->priv->ui_manager, "/image-viewer-menu/open-with-menu"), TRUE);
+            gtk_widget_set_sensitive ( gtk_ui_manager_get_widget ( window->priv->ui_manager, "/image-viewer-menu/zoom-in"), TRUE);
+            gtk_widget_set_sensitive ( gtk_ui_manager_get_widget ( window->priv->ui_manager, "/image-viewer-menu/zoom-out"), TRUE);
+            gtk_widget_set_sensitive ( gtk_ui_manager_get_widget ( window->priv->ui_manager, "/image-viewer-menu/zoom-100"), TRUE);
+            gtk_widget_set_sensitive ( gtk_ui_manager_get_widget ( window->priv->ui_manager, "/image-viewer-menu/zoom-fit"), TRUE);
             break;
         default: 
             gtk_widget_set_sensitive ( gtk_ui_manager_get_widget ( window->priv->ui_manager, "/main-menu/file-menu/save-copy"), TRUE);
@@ -904,6 +922,13 @@ rstto_main_window_update_buttons (RsttoMainWindow *window)
             gtk_widget_set_sensitive (gtk_ui_manager_get_widget (window->priv->ui_manager, "/navigation-toolbar/zoom-100"), TRUE);
             gtk_widget_set_sensitive (gtk_ui_manager_get_widget (window->priv->ui_manager, "/navigation-toolbar/rotate-ccw"), TRUE);
             gtk_widget_set_sensitive (gtk_ui_manager_get_widget (window->priv->ui_manager, "/navigation-toolbar/rotate-cw"), TRUE);
+
+            gtk_widget_set_sensitive ( gtk_ui_manager_get_widget ( window->priv->ui_manager, "/image-viewer-menu/close"), TRUE);
+            gtk_widget_set_sensitive ( gtk_ui_manager_get_widget ( window->priv->ui_manager, "/image-viewer-menu/open-with-menu"), TRUE);
+            gtk_widget_set_sensitive ( gtk_ui_manager_get_widget ( window->priv->ui_manager, "/image-viewer-menu/zoom-in"), TRUE);
+            gtk_widget_set_sensitive ( gtk_ui_manager_get_widget ( window->priv->ui_manager, "/image-viewer-menu/zoom-out"), TRUE);
+            gtk_widget_set_sensitive ( gtk_ui_manager_get_widget ( window->priv->ui_manager, "/image-viewer-menu/zoom-100"), TRUE);
+            gtk_widget_set_sensitive ( gtk_ui_manager_get_widget ( window->priv->ui_manager, "/image-viewer-menu/zoom-fit"), TRUE);
             break;
     }
 }
@@ -1966,7 +1991,7 @@ cb_rstto_main_window_open_folder (GtkWidget *widget, RsttoMainWindow *window)
         gtk_file_chooser_set_current_folder_uri (GTK_FILE_CHOOSER (dialog), g_value_get_string (&current_uri_val));
 
     response = gtk_dialog_run(GTK_DIALOG(dialog));
-    if(response == GTK_RESPONSE_OK)
+    if(response == GTK_RESPONSE_ACCEPT)
     {
         gtk_widget_hide(dialog);
         file = gtk_file_chooser_get_file (GTK_FILE_CHOOSER (dialog));
diff --git a/src/main_window_ui.xml b/src/main_window_ui.xml
index d6e4237..e82e5e5 100644
--- a/src/main_window_ui.xml
+++ b/src/main_window_ui.xml
@@ -78,6 +78,21 @@
         </menu>
     </popup>
 
+    <popup name="image-viewer-menu">
+        <menuitem action="open"/>
+        <menuitem action="open-folder"/>
+        <menuitem action="close"/>
+        <separator/>
+        <menu action="open-with-menu">
+            <placeholder name="open-with-apps" />
+        </menu>
+        <separator/>
+        <menuitem action="zoom-in"/>
+        <menuitem action="zoom-out"/>
+        <menuitem action="zoom-100"/>
+        <menuitem action="zoom-fit"/>
+    </popup>
+
     <!--
 
     -->


More information about the Xfce4-commits mailing list