From a9decdd87985fd66f202aa118d5e81d774734420 Mon Sep 17 00:00:00 2001 From: Dan Winship Date: Mon, 1 Oct 2001 19:43:14 +0000 Subject: Fix up the provider flags to specify things more completely so we don't * camel-provider.h: Fix up the provider flags to specify things more completely so we don't have to hardcode provider names in the mailer. * providers/local/camel-local-provider.c: MH, mbox, and Maildir are LOCAL. MH and mbox are no longer STORAGE by the new definition. * camel-session.c (vee_provider): The vfolder store is a STORAGE. svn path=/trunk/; revision=13276 --- camel/ChangeLog | 12 ++++++++++++ camel/camel-provider.h | 20 +++++++++++++++----- camel/camel-session.c | 2 +- camel/providers/local/camel-local-provider.c | 7 ++++--- 4 files changed, 32 insertions(+), 9 deletions(-) (limited to 'camel') diff --git a/camel/ChangeLog b/camel/ChangeLog index 3c0f4281d6..4b98d3d9b3 100644 --- a/camel/ChangeLog +++ b/camel/ChangeLog @@ -1,3 +1,15 @@ +2001-10-01 Dan Winship + + * camel-provider.h: Fix up the provider flags to specify things + more completely so we don't have to hardcode provider names in the + mailer. + + * providers/local/camel-local-provider.c: MH, mbox, and Maildir + are LOCAL. MH and mbox are no longer STORAGE by the new + definition. + + * camel-session.c (vee_provider): The vfolder store is a STORAGE. + 2001-10-01 Dan Winship * providers/local/camel-local-store.c (construct): Don't munge the diff --git a/camel/camel-provider.h b/camel/camel-provider.h index ee4a98fc9d..c995b29229 100644 --- a/camel/camel-provider.h +++ b/camel/camel-provider.h @@ -48,13 +48,23 @@ typedef enum { extern char *camel_provider_type_name[CAMEL_NUM_PROVIDER_TYPES]; -/* _IS_SOURCE means the user can get mail from there. - * _IS_STORAGE means the user can read mail from there. +/* Provider flags: + * + * _IS_REMOTE the provider works with remote data + * _IS_LOCAL it can be used as a backend for local folder + * tree folders. (*Not* just the opposite of _IS_REMOTE) + * _IS_SOURCE mail arrives there, so it should be offered as an + * option in the mail config dialog. + * _IS_STORAGE mail is stored there. it will appear in the folder tree. + * _IS_EXTERNAL it appears in the folder tree but is not created by + * the mail component. */ #define CAMEL_PROVIDER_IS_REMOTE (1 << 0) -#define CAMEL_PROVIDER_IS_SOURCE (1 << 1) -#define CAMEL_PROVIDER_IS_STORAGE (1 << 2) -#define CAMEL_PROVIDER_SUPPORTS_SSL (1 << 3) +#define CAMEL_PROVIDER_IS_LOCAL (1 << 1) +#define CAMEL_PROVIDER_IS_EXTERNAL (1 << 2) +#define CAMEL_PROVIDER_IS_SOURCE (1 << 3) +#define CAMEL_PROVIDER_IS_STORAGE (1 << 4) +#define CAMEL_PROVIDER_SUPPORTS_SSL (1 << 5) /* Flags for url_flags. "ALLOW" means the config dialog will let diff --git a/camel/camel-session.c b/camel/camel-session.c index e30f82d955..49fcc0b926 100644 --- a/camel/camel-session.c +++ b/camel/camel-session.c @@ -79,7 +79,7 @@ static CamelProvider vee_provider = { "vfolder", - 0, /* flags */ + CAMEL_PROVIDER_IS_STORAGE, 0, /* url_flags */ diff --git a/camel/providers/local/camel-local-provider.c b/camel/providers/local/camel-local-provider.c index 2ee5ea27ba..adda3676cd 100644 --- a/camel/providers/local/camel-local-provider.c +++ b/camel/providers/local/camel-local-provider.c @@ -40,7 +40,7 @@ static CamelProvider mh_provider = { N_("MH-format mail directories"), N_("For storing local mail in MH-like mail directories."), "mail", - CAMEL_PROVIDER_IS_STORAGE, + CAMEL_PROVIDER_IS_LOCAL, CAMEL_URL_NEED_PATH | CAMEL_URL_PATH_IS_ABSOLUTE, /* ... */ }; @@ -50,7 +50,7 @@ static CamelProvider mbox_provider = { N_("Local delivery"), N_("For retrieving local mail from standard mbox formated spools."), "mail", - CAMEL_PROVIDER_IS_SOURCE | CAMEL_PROVIDER_IS_STORAGE, + CAMEL_PROVIDER_IS_SOURCE | CAMEL_PROVIDER_IS_LOCAL, CAMEL_URL_NEED_PATH | CAMEL_URL_PATH_IS_ABSOLUTE, /* ... */ }; @@ -66,7 +66,8 @@ static CamelProvider maildir_provider = { N_("Qmail maildir-format mail files"), N_("For storing local mail in qmail maildir directories."), "mail", - CAMEL_PROVIDER_IS_SOURCE | CAMEL_PROVIDER_IS_STORAGE, + CAMEL_PROVIDER_IS_SOURCE | CAMEL_PROVIDER_IS_STORAGE | + CAMEL_PROVIDER_IS_LOCAL, CAMEL_URL_NEED_PATH | CAMEL_URL_PATH_IS_ABSOLUTE, local_conf_entries, /* ... */ -- cgit v1.2.3