From d35a3f652b8059e20e6dbe53f5f136bdf7f2f354 Mon Sep 17 00:00:00 2001 From: Chris Toshok Date: Fri, 11 May 2001 23:59:32 +0000 Subject: add RemoveFolder menu item and verb. (folder_context_menu_remove_cb): new 2001-05-11 Chris Toshok * e-storage-set-view.c (populate_folder_context_menu_with_common_items): add RemoveFolder menu item and verb. (folder_context_menu_remove_cb): new function, call e_storage_set_async_remove_folder. (remove_cb): callack for e_storage_set_async_remove_folder. * evolution-shell-component-client.c (evolution_shell_component_client_populate_folder_context_menu): fix prototype to reflect Component -> Container. * evolution-shell-component-client.h: same. svn path=/trunk/; revision=9778 --- shell/ChangeLog | 15 +++++++++++++++ shell/e-storage-set-view.c | 26 ++++++++++++++++++++++++++ shell/evolution-shell-component-client.c | 14 +++++++------- shell/evolution-shell-component-client.h | 4 +++- 4 files changed, 51 insertions(+), 8 deletions(-) diff --git a/shell/ChangeLog b/shell/ChangeLog index c3e1404f4f..d4be2f31af 100644 --- a/shell/ChangeLog +++ b/shell/ChangeLog @@ -1,3 +1,18 @@ +2001-05-11 Chris Toshok + + * e-storage-set-view.c + (populate_folder_context_menu_with_common_items): add RemoveFolder + menu item and verb. + (folder_context_menu_remove_cb): new function, call + e_storage_set_async_remove_folder. + (remove_cb): callack for e_storage_set_async_remove_folder. + + * evolution-shell-component-client.c + (evolution_shell_component_client_populate_folder_context_menu): + fix prototype to reflect Component -> Container. + + * evolution-shell-component-client.h: same. + 2001-05-11 Chris Toshok * evolution-shell-component.h diff --git a/shell/e-storage-set-view.c b/shell/e-storage-set-view.c index 2a51735854..8b9d054361 100644 --- a/shell/e-storage-set-view.c +++ b/shell/e-storage-set-view.c @@ -646,6 +646,27 @@ folder_context_menu_activate_cb (BonoboUIComponent *uih, priv->selected_row_path); } +static void +remove_cb(EStorageSet *storage_set, EStorageResult result, void *data) +{ + g_print ("remove_cb: %d\n", result); +} + +static void +folder_context_menu_remove_cb (BonoboUIComponent *uih, + void *data, + const char *path) +{ + EStorageSetView *storage_set_view; + EStorageSetViewPrivate *priv; + + storage_set_view = E_STORAGE_SET_VIEW (data); + priv = storage_set_view->priv; + + e_storage_set_async_remove_folder (priv->storage_set, priv->selected_row_path, + remove_cb, storage_set_view); +} + static void populate_folder_context_menu_with_common_items (EStorageSetView *storage_set_view, BonoboUIComponent *uih) @@ -653,6 +674,7 @@ populate_folder_context_menu_with_common_items (EStorageSetView *storage_set_vie static char popup_xml[] = "\n" " \n" + " \n" " \n" #ifdef DEBUG_XML " \n" @@ -664,6 +686,10 @@ populate_folder_context_menu_with_common_items (EStorageSetView *storage_set_vie folder_context_menu_activate_cb, storage_set_view); + bonobo_ui_component_add_verb (uih, "RemoveFolder", + folder_context_menu_remove_cb, + storage_set_view); + bonobo_ui_component_set_translate (uih, "/popups/folderPopup", popup_xml, NULL); } diff --git a/shell/evolution-shell-component-client.c b/shell/evolution-shell-component-client.c index 8a9f0ea67c..f8e00de066 100644 --- a/shell/evolution-shell-component-client.c +++ b/shell/evolution-shell-component-client.c @@ -707,11 +707,11 @@ evolution_shell_component_client_async_xfer_folder (EvolutionShellComponentClien void evolution_shell_component_client_populate_folder_context_menu (EvolutionShellComponentClient *shell_component_client, - BonoboUIComponent *uih, + BonoboUIContainer *container, const char *physical_uri, const char *type) { - Bonobo_UIContainer corba_uih; + Bonobo_UIContainer corba_container; EvolutionShellComponentClientPrivate *priv; GNOME_Evolution_ShellComponent corba_shell_component; CORBA_Environment ev; @@ -726,13 +726,13 @@ evolution_shell_component_client_populate_folder_context_menu (EvolutionShellCom CORBA_exception_init (&ev); corba_shell_component = bonobo_object_corba_objref (BONOBO_OBJECT (shell_component_client)); - corba_uih = bonobo_object_corba_objref (BONOBO_OBJECT (uih)); + corba_container = bonobo_object_corba_objref (BONOBO_OBJECT (container)); GNOME_Evolution_ShellComponent_populateFolderContextMenu (corba_shell_component, - corba_uih, - physical_uri, - type, - &ev); + corba_container, + physical_uri, + type, + &ev); CORBA_exception_free (&ev); } diff --git a/shell/evolution-shell-component-client.h b/shell/evolution-shell-component-client.h index e781a0c74c..9fd52f7eca 100644 --- a/shell/evolution-shell-component-client.h +++ b/shell/evolution-shell-component-client.h @@ -25,6 +25,8 @@ #define EVOLUTION_SHELL_COMPONENT_CLIENT_H #include +#include +#include #include "evolution-shell-component.h" @@ -107,7 +109,7 @@ void evolution_shell_component_client_async_xfer_folder (EvolutionShellCompo void *data); void evolution_shell_component_client_populate_folder_context_menu (EvolutionShellComponentClient *shell_component_client, - BonoboUIComponent *uih, + BonoboUIContainer *container, const char *physical_uri, const char *type); -- cgit v1.2.3