aboutsummaryrefslogtreecommitdiffstats
path: root/shell/evolution-storage.c
diff options
context:
space:
mode:
authorEttore Perazzoli <ettore@src.gnome.org>2002-10-18 04:47:06 +0800
committerEttore Perazzoli <ettore@src.gnome.org>2002-10-18 04:47:06 +0800
commitd91364b0562ad2d80186c8bc5e94a7792989a53d (patch)
treede24f00a6102a69bce5047e26726942ab87e895f /shell/evolution-storage.c
parentd4e1fb42e0e1017919ca21b5b59cc84b38f794f7 (diff)
downloadgsoc2013-evolution-d91364b0562ad2d80186c8bc5e94a7792989a53d.tar
gsoc2013-evolution-d91364b0562ad2d80186c8bc5e94a7792989a53d.tar.gz
gsoc2013-evolution-d91364b0562ad2d80186c8bc5e94a7792989a53d.tar.bz2
gsoc2013-evolution-d91364b0562ad2d80186c8bc5e94a7792989a53d.tar.lz
gsoc2013-evolution-d91364b0562ad2d80186c8bc5e94a7792989a53d.tar.xz
gsoc2013-evolution-d91364b0562ad2d80186c8bc5e94a7792989a53d.tar.zst
gsoc2013-evolution-d91364b0562ad2d80186c8bc5e94a7792989a53d.zip
New, implementation for the cancel_discover_shared_folder virtual method.
* e-corba-storage.c (cancel_discover_shared_folder): New, implementation for the cancel_discover_shared_folder virtual method. (class_init): Install. * evolution-test-component.c (storage_discover_shared_folder_callback): Instead of passing the listener to the timeout function, just pass the storage. Put the listener and the timeout ID on the storage object by using gtk_object_set_data(). (shared_folder_discovery_timeout_callback): Updated accordingly. (storage_cancel_discover_shared_folder_callback): New, callback for the cancel_discover_shared_folder signal. (setup_custom_storage): Connect. * e-shell-shared-folder-picker-dialog.c: New member storage in struct DiscoveryData. While I am at it, rename member user to user_email_address. (discover_folder): Set the storage member. (cleanup_discovery): Unref storage member. (progress_dialog_clicked_callback): New, callback for the "clicked" signal on the dialog. (discover_folder): Connect. * evolution-storage.c (class_init): Install signal "cancel_discover_shared_folder". (impl_Storage_cancelDiscoverSharedFolder): New, implementation for the cancelDiscoverSharedFolder CORBA method; emit "cancel_discover_shared_folder". (evolution_storage_get_epv): Install CORBA method implementation. * evolution-storage.h: Add signal cancel_discover_shared_folder. * e-storage.c (e_storage_cancel_discover_shared_folder): New. * e-storage.h: New virtual method cancel_discover_shared_folder. * Evolution-Storage.idl (cancelDiscoverSharedFolder): New. svn path=/trunk/; revision=18386
Diffstat (limited to 'shell/evolution-storage.c')
-rw-r--r--shell/evolution-storage.c58
1 files changed, 43 insertions, 15 deletions
diff --git a/shell/evolution-storage.c b/shell/evolution-storage.c
index 141feff758..15be4e761e 100644
--- a/shell/evolution-storage.c
+++ b/shell/evolution-storage.c
@@ -83,6 +83,7 @@ enum {
UPDATE_FOLDER,
OPEN_FOLDER,
DISCOVER_SHARED_FOLDER,
+ CANCEL_DISCOVER_SHARED_FOLDER,
REMOVE_SHARED_FOLDER,
SHOW_FOLDER_PROPERTIES,
@@ -506,6 +507,22 @@ impl_Storage_asyncDiscoverSharedFolder (PortableServer_Servant servant,
}
static void
+impl_Storage_cancelDiscoverSharedFolder (PortableServer_Servant servant,
+ const CORBA_char *user,
+ const CORBA_char *folder_name,
+ CORBA_Environment *ev)
+{
+ BonoboObject *bonobo_object;
+ EvolutionStorage *storage;
+
+ bonobo_object = bonobo_object_from_servant (servant);
+ storage = EVOLUTION_STORAGE (bonobo_object);
+
+ gtk_signal_emit (GTK_OBJECT (storage), signals[CANCEL_DISCOVER_SHARED_FOLDER],
+ user, folder_name);
+}
+
+static void
impl_Storage_asyncRemoveSharedFolder (PortableServer_Servant servant,
const CORBA_char *path,
const Bonobo_Listener listener,
@@ -805,6 +822,16 @@ class_init (EvolutionStorageClass *klass)
GTK_TYPE_STRING,
GTK_TYPE_STRING);
+ signals[CANCEL_DISCOVER_SHARED_FOLDER] = gtk_signal_new ("cancel_discover_shared_folder",
+ GTK_RUN_LAST,
+ object_class->type,
+ GTK_SIGNAL_OFFSET (EvolutionStorageClass,
+ cancel_discover_shared_folder),
+ gtk_marshal_NONE__POINTER_POINTER,
+ GTK_TYPE_NONE, 2,
+ GTK_TYPE_STRING,
+ GTK_TYPE_STRING);
+
signals[REMOVE_SHARED_FOLDER] = gtk_signal_new ("remove_shared_folder",
GTK_RUN_LAST,
object_class->type,
@@ -854,21 +881,22 @@ evolution_storage_get_epv (void)
POA_GNOME_Evolution_Storage__epv *epv;
epv = g_new0 (POA_GNOME_Evolution_Storage__epv, 1);
- epv->_get_name = impl_Storage__get_name;
- epv->_get_hasSharedFolders = impl_Storage__get_hasSharedFolders;
- epv->getFolderAtPath = impl_Storage_getFolderAtPath;
- epv->_get_folderList = impl_Storage__get_folderList;
- epv->asyncCreateFolder = impl_Storage_asyncCreateFolder;
- epv->asyncRemoveFolder = impl_Storage_asyncRemoveFolder;
- epv->asyncXferFolder = impl_Storage_asyncXferFolder;
- epv->asyncOpenFolder = impl_Storage_asyncOpenFolder;
- epv->updateFolder = impl_Storage_updateFolder;
- epv->asyncDiscoverSharedFolder = impl_Storage_asyncDiscoverSharedFolder;
- epv->asyncRemoveSharedFolder = impl_Storage_asyncRemoveSharedFolder;
- epv->addListener = impl_Storage_addListener;
- epv->removeListener = impl_Storage_removeListener;
- epv->showFolderProperties = impl_Storage_showFolderProperties;
- epv->_get_folderPropertyItems = impl_Storage__get_folderPropertyItems;
+ epv->_get_name = impl_Storage__get_name;
+ epv->_get_hasSharedFolders = impl_Storage__get_hasSharedFolders;
+ epv->getFolderAtPath = impl_Storage_getFolderAtPath;
+ epv->_get_folderList = impl_Storage__get_folderList;
+ epv->asyncCreateFolder = impl_Storage_asyncCreateFolder;
+ epv->asyncRemoveFolder = impl_Storage_asyncRemoveFolder;
+ epv->asyncXferFolder = impl_Storage_asyncXferFolder;
+ epv->asyncOpenFolder = impl_Storage_asyncOpenFolder;
+ epv->updateFolder = impl_Storage_updateFolder;
+ epv->asyncDiscoverSharedFolder = impl_Storage_asyncDiscoverSharedFolder;
+ epv->cancelDiscoverSharedFolder = impl_Storage_cancelDiscoverSharedFolder;
+ epv->asyncRemoveSharedFolder = impl_Storage_asyncRemoveSharedFolder;
+ epv->addListener = impl_Storage_addListener;
+ epv->removeListener = impl_Storage_removeListener;
+ epv->showFolderProperties = impl_Storage_showFolderProperties;
+ epv->_get_folderPropertyItems = impl_Storage__get_folderPropertyItems;
return epv;
}