aboutsummaryrefslogtreecommitdiffstats
path: root/shell/importer/evolution-importer.c
diff options
context:
space:
mode:
authorJP Rosevear <jpr@ximian.com>2004-02-05 05:08:31 +0800
committerJP Rosevear <jpr@src.gnome.org>2004-02-05 05:08:31 +0800
commit7a316616d6857334adcca14ae0cd8029128cb672 (patch)
tree20d7685213dbf4b8579d90e9e6296e24830a7c0b /shell/importer/evolution-importer.c
parent8360a36e2d24298cdbc5ad7d13c81b8b76f2a3e0 (diff)
downloadgsoc2013-evolution-7a316616d6857334adcca14ae0cd8029128cb672.tar
gsoc2013-evolution-7a316616d6857334adcca14ae0cd8029128cb672.tar.gz
gsoc2013-evolution-7a316616d6857334adcca14ae0cd8029128cb672.tar.bz2
gsoc2013-evolution-7a316616d6857334adcca14ae0cd8029128cb672.tar.lz
gsoc2013-evolution-7a316616d6857334adcca14ae0cd8029128cb672.tar.xz
gsoc2013-evolution-7a316616d6857334adcca14ae0cd8029128cb672.tar.zst
gsoc2013-evolution-7a316616d6857334adcca14ae0cd8029128cb672.zip
add extra page
2004-02-04 JP Rosevear <jpr@ximian.com> * importer/import.glade: add extra page * importer/evolution-importer.h: update protos * importer/evolution-importer.c: hold the createControl function (impl_GNOME_Evolution_Importer_createControl): implement (impl_GNOME_Evolution_Importer_loadFile): remove dead args * importer/evolution-importer-client.h: update/add protos * importer/evolution-importer-client.c (evolution_importer_client_create_control): wrapper (evolution_importer_client_load_file): we don't take physical_uri and folder_type as args any more * importer/GNOME_Evolution_Importer.idl: add createControl method and remove extraneous loadFile args * e-shell-window-commands.c (command_import): uncomment * e-shell-importer.h: update proto * e-shell-importer.c: remove DEPRECATED hack and tidy includes (get_iid_for_filetype): use query define (start_import): we don't take a file name and client directly now (create_plugin_menu): user query define (importer_dest_page_new): create vbox (import_druid_finish): we no longer do folder selection here (next_file_page): create the client here (prepare_dest_page): show the importer control (next_dest_page): skip to the finish (back_finish_page): back to the destination page (e_shell_importer_start_import): set up the destination page * Makefile.am: build import files again svn path=/trunk/; revision=24619
Diffstat (limited to 'shell/importer/evolution-importer.c')
-rw-r--r--shell/importer/evolution-importer.c28
1 files changed, 23 insertions, 5 deletions
diff --git a/shell/importer/evolution-importer.c b/shell/importer/evolution-importer.c
index cd419b4ca9..430e1b2da8 100644
--- a/shell/importer/evolution-importer.c
+++ b/shell/importer/evolution-importer.c
@@ -35,6 +35,7 @@
static BonoboObjectClass *parent_class = NULL;
struct _EvolutionImporterPrivate {
+ EvolutionImporterCreateControlFn create_control_fn;
EvolutionImporterLoadFileFn load_file_fn;
EvolutionImporterSupportFormatFn support_format_fn;
EvolutionImporterProcessItemFn process_item_fn;
@@ -50,6 +51,21 @@ evolution_importer_from_servant (PortableServer_Servant servant)
return EVOLUTION_IMPORTER (bonobo_object_from_servant (servant));
}
+static void
+impl_GNOME_Evolution_Importer_createControl (PortableServer_Servant servant,
+ Bonobo_Control *control,
+ CORBA_Environment *ev)
+{
+ EvolutionImporter *importer;
+ EvolutionImporterPrivate *priv;
+
+ importer = evolution_importer_from_servant (servant);
+ priv = importer->priv;
+
+ if (priv->create_control_fn != NULL)
+ (priv->create_control_fn) (importer, control, priv->closure);
+}
+
static CORBA_boolean
impl_GNOME_Evolution_Importer_supportFormat (PortableServer_Servant servant,
const CORBA_char *filename,
@@ -71,8 +87,6 @@ impl_GNOME_Evolution_Importer_supportFormat (PortableServer_Servant servant,
static CORBA_boolean
impl_GNOME_Evolution_Importer_loadFile (PortableServer_Servant servant,
const CORBA_char *filename,
- const CORBA_char *physical_uri,
- const CORBA_char *folder_type,
CORBA_Environment *ev)
{
EvolutionImporter *importer;
@@ -82,7 +96,7 @@ impl_GNOME_Evolution_Importer_loadFile (PortableServer_Servant servant,
priv = importer->priv;
if (priv->load_file_fn != NULL)
- return (priv->load_file_fn) (importer, filename, physical_uri, folder_type, priv->closure);
+ return (priv->load_file_fn) (importer, filename, priv->closure);
else
return FALSE;
}
@@ -152,6 +166,7 @@ evolution_importer_class_init (EvolutionImporterClass *klass)
object_class->finalize = finalise;
parent_class = g_type_class_ref(PARENT_TYPE);
+ epv->createControl = impl_GNOME_Evolution_Importer_createControl;
epv->supportFormat = impl_GNOME_Evolution_Importer_supportFormat;
epv->loadFile = impl_GNOME_Evolution_Importer_loadFile;
epv->processItem = impl_GNOME_Evolution_Importer_processItem;
@@ -172,6 +187,7 @@ evolution_importer_init (EvolutionImporter *importer)
static void
evolution_importer_construct (EvolutionImporter *importer,
+ EvolutionImporterCreateControlFn create_control_fn,
EvolutionImporterSupportFormatFn support_format_fn,
EvolutionImporterLoadFileFn load_file_fn,
EvolutionImporterProcessItemFn process_item_fn,
@@ -187,6 +203,7 @@ evolution_importer_construct (EvolutionImporter *importer,
g_return_if_fail (process_item_fn != NULL);
priv = importer->priv;
+ priv->create_control_fn = create_control_fn;
priv->support_format_fn = support_format_fn;
priv->load_file_fn = load_file_fn;
priv->process_item_fn = process_item_fn;
@@ -209,7 +226,8 @@ evolution_importer_construct (EvolutionImporter *importer,
* Returns: A newly created EvolutionImporter object.
*/
EvolutionImporter *
-evolution_importer_new (EvolutionImporterSupportFormatFn support_format_fn,
+evolution_importer_new (EvolutionImporterCreateControlFn create_control_fn,
+ EvolutionImporterSupportFormatFn support_format_fn,
EvolutionImporterLoadFileFn load_file_fn,
EvolutionImporterProcessItemFn process_item_fn,
EvolutionImporterGetErrorFn get_error_fn,
@@ -218,7 +236,7 @@ evolution_importer_new (EvolutionImporterSupportFormatFn support_format_fn,
EvolutionImporter *importer;
importer = g_object_new(evolution_importer_get_type (), NULL);
- evolution_importer_construct (importer, support_format_fn, load_file_fn,
+ evolution_importer_construct (importer, create_control_fn, support_format_fn, load_file_fn,
process_item_fn, get_error_fn, closure);
return importer;
}