diff options
author | bertrand <Bertrand.Guiheneuf@aful.org> | 1999-08-12 06:34:09 +0800 |
---|---|---|
committer | Bertrand Guiheneuf <bertrand@src.gnome.org> | 1999-08-12 06:34:09 +0800 |
commit | a478ee7e9d44ea7947b2dc51fcf5d7f09735ee52 (patch) | |
tree | 16013fe0bf49a83f311bd25c6c603d1a29e5277a /camel/camel-provider.h | |
parent | 33ffe9aadcef483a4900cc65fc9e840220951e3c (diff) | |
download | gsoc2013-evolution-a478ee7e9d44ea7947b2dc51fcf5d7f09735ee52.tar.gz gsoc2013-evolution-a478ee7e9d44ea7947b2dc51fcf5d7f09735ee52.tar.zst gsoc2013-evolution-a478ee7e9d44ea7947b2dc51fcf5d7f09735ee52.zip |
new file. MH provider registration stuff.
1999-08-12 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/providers/MH/camel-mh-provider.c:
new file. MH provider registration stuff.
* camel/camel-provider.c (camel_provider_register_as_module):
load a provider from a shared object (plugin).
(camel_provider_register): register a provider
"by hand". Used for statically defined providers.
* tests/test7.c: new test.
tests providers loading framework.
Providers modules loading Works !!! :))))
svn path=/trunk/; revision=1105
Diffstat (limited to 'camel/camel-provider.h')
-rw-r--r-- | camel/camel-provider.h | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/camel/camel-provider.h b/camel/camel-provider.h index 54b9ef2a2a..3099efa265 100644 --- a/camel/camel-provider.h +++ b/camel/camel-provider.h @@ -1,5 +1,5 @@ /* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ -/* camel-provider.h : provider management */ +/* camel-provider.h : provider definition */ /* * @@ -31,6 +31,11 @@ extern "C" { #pragma } #endif /* __cplusplus }*/ +#include <gtk/gtk.h> +#include <gmodule.h> + +#define CAMEL_PROVIDER(obj) (CamelProvider *)(obj) + typedef enum { PROVIDER_STORE, PROVIDER_TRANSPORT @@ -40,11 +45,15 @@ typedef enum { typedef struct { GtkType object_type; /* used to create instance of the provider */ ProviderType provider_type; /* is a store or a transport */ - gchar *protocol; /* name of the protocol ("imap"/"smtp"/"mh" ...) */ - gchar *provider_name; /* name of the provider ("Raymond the imap provider") */ - gchar *description; /* Useful when multiple providers are available for a same protocol */ + gchar *protocol; /* name of the protocol ("imap"/"smtp"/"mh" ...) */ + gchar *name; /* name of the provider ("Raymond the imap provider") */ + gchar *description; /* Useful when multiple providers are available for a same protocol */ + + GModule *gmodule; } CamelProvider; +void camel_provider_register (CamelProvider *provider); +const CamelProvider *camel_provider_register_as_module (const gchar *module_path); #ifdef __cplusplus |