aboutsummaryrefslogtreecommitdiffstats
path: root/shell/evolution-storage.c
diff options
context:
space:
mode:
authorIain Holmes <iain@src.gnome.org>2001-03-13 10:26:18 +0800
committerIain Holmes <iain@src.gnome.org>2001-03-13 10:26:18 +0800
commit8c2f3a00ef98717e4203630c8119f2e84d2bb796 (patch)
treef4ec43d8f0e79adffebcfe80de345981a3dbf556 /shell/evolution-storage.c
parentc807d96e58f7a4c6c2c306f6da26a63b608f840b (diff)
downloadgsoc2013-evolution-8c2f3a00ef98717e4203630c8119f2e84d2bb796.tar
gsoc2013-evolution-8c2f3a00ef98717e4203630c8119f2e84d2bb796.tar.gz
gsoc2013-evolution-8c2f3a00ef98717e4203630c8119f2e84d2bb796.tar.bz2
gsoc2013-evolution-8c2f3a00ef98717e4203630c8119f2e84d2bb796.tar.lz
gsoc2013-evolution-8c2f3a00ef98717e4203630c8119f2e84d2bb796.tar.xz
gsoc2013-evolution-8c2f3a00ef98717e4203630c8119f2e84d2bb796.tar.zst
gsoc2013-evolution-8c2f3a00ef98717e4203630c8119f2e84d2bb796.zip
All my changes to get the folder creation working, and the magic Netscape
importer. svn path=/trunk/; revision=8661
Diffstat (limited to 'shell/evolution-storage.c')
-rw-r--r--shell/evolution-storage.c38
1 files changed, 25 insertions, 13 deletions
diff --git a/shell/evolution-storage.c b/shell/evolution-storage.c
index bf02c19110..c3ffad319c 100644
--- a/shell/evolution-storage.c
+++ b/shell/evolution-storage.c
@@ -287,23 +287,12 @@ impl_Storage_async_create_folder (PortableServer_Servant servant,
{
BonoboObject *bonobo_object;
EvolutionStorage *storage;
- int int_result;
- CORBA_any any;
- GNOME_Evolution_Storage_Result corba_result;
bonobo_object = bonobo_object_from_servant (servant);
storage = EVOLUTION_STORAGE (bonobo_object);
- int_result = GNOME_Evolution_Storage_UNSUPPORTED_OPERATION;
gtk_signal_emit (GTK_OBJECT (storage), signals[CREATE_FOLDER],
- path, type, description, parent_physical_uri,
- &int_result);
-
- corba_result = storage_gtk_to_corba_result (int_result);
- any._type = TC_GNOME_Evolution_Storage_Result;
- any._value = &corba_result;
-
- Bonobo_Listener_event (listener, "result", &any, ev);
+ listener, path, type, description, parent_physical_uri);
}
static void
@@ -435,6 +424,29 @@ corba_class_init (void)
vepv->GNOME_Evolution_Storage_epv = evolution_storage_get_epv ();
}
+/* The worst signal marshaller in Scotland */
+typedef void (*GtkSignal_NONE__POINTER_POINTER_POINTER_POINTER_POINTER) (GtkObject *,
+ gpointer, gpointer, gpointer, gpointer, gpointer,
+ gpointer user_data);
+
+static void
+e_marshal_NONE__POINTER_POINTER_POINTER_POINTER_POINTER (GtkObject *object,
+ GtkSignalFunc func,
+ gpointer func_data,
+ GtkArg *args)
+{
+ GtkSignal_NONE__POINTER_POINTER_POINTER_POINTER_POINTER rfunc;
+
+ rfunc = (GtkSignal_NONE__POINTER_POINTER_POINTER_POINTER_POINTER) func;
+ (*rfunc) (object,
+ GTK_VALUE_POINTER (args[0]),
+ GTK_VALUE_POINTER (args[1]),
+ GTK_VALUE_POINTER (args[2]),
+ GTK_VALUE_POINTER (args[3]),
+ GTK_VALUE_POINTER (args[4]),
+ func_data);
+}
+
static void
class_init (EvolutionStorageClass *klass)
{
@@ -450,7 +462,7 @@ class_init (EvolutionStorageClass *klass)
object_class->type,
GTK_SIGNAL_OFFSET (EvolutionStorageClass,
create_folder),
- e_marshal_INT__POINTER_POINTER_POINTER_POINTER,
+ e_marshal_NONE__POINTER_POINTER_POINTER_POINTER_POINTER,
GTK_TYPE_INT, 4,
GTK_TYPE_STRING,
GTK_TYPE_STRING,