Re: [evolution-patches] Possible fix for removal of duplicated files in evolution/e-util
- From: "simon.zheng" <Simon Zheng Sun COM>
- To: Harish Krishnaswamy <kharish novell com>
- Cc: "evolution-patches gnome org" <evolution-patches gnome org>
- Subject: Re: [evolution-patches] Possible fix for removal of duplicated files in evolution/e-util
- Date: Thu, 22 Dec 2005 17:26:44 +0800
On Tue, 2005-12-20 at 11:06 +0530, Parthasarathi Susarla wrote:
> On Mon, 2005-12-19 at 14:01 +0000, Tor Lillqvist wrote:
> > må 2004-12-20 klockan 20:04 +0800 skrev Simon.Zheng:
> > > > I'm all for this, good work!
> > > >
> > > Does it mean these patches can be check in?
> >
> > No, it means I'm for it ;-) I'll leave it to Harish to decide.
>
> My vote for this too. The sooner done, the better. Harish??
>
Hi Harish,
Tor and sparth has agreed with the attached patches for merging
e-account.c and e-accout-list.c. How about you? Can I commit these
patches firstly?
Thanks,
-Simon
>
> _______________________________________________
> Evolution-patches mailing list
> Evolution-patches gnome org
> http://mail.gnome.org/mailman/listinfo/evolution-patches
? evolution-data-server/libedataserver/a.diff
Index: evolution-data-server/ChangeLog
===================================================================
RCS file: /cvs/gnome/evolution-data-server/ChangeLog,v
retrieving revision 1.350
diff -u -p -r1.350 ChangeLog
--- evolution-data-server/ChangeLog 13 Dec 2005 14:07:16 -0000 1.350
+++ evolution-data-server/ChangeLog 16 Dec 2005 12:01:31 -0000
@@ -1,3 +1,21 @@
+2005-12-15 Simon Zheng <Simon Zheng sun com>
+
+ * libedataserver/e-account-list.c: Since e-util/e-account-list.c
+ in evolution module has been developed further. Merge those
+ changes into libedataserver, and drop e-util/e-account-list.c.
+
+ libedataserver/e-account-list.h: Since e-util/e-account-list.h in
+ evolution module has been developed further. Merge those changes
+ into libedataserver, and drop e-util/e-account-list.h.
+
+ libedataserver/e-account.c: Since e-util/e-account.c in
+ evolution module has been developed further. Merge those changes
+ into libedataserver, and drop e-util/e-account.c.
+
+ libedataserver/e-account.h: Since e-util/e-account.h in
+ evolution module has been developed further. Merge those changes
+ into libedataserver, and drop e-util/e-account.h.
+
2005-12-13 Tor Lillqvist <tml novell com>
* libedataserver/e-uid.c (e_uid_new): Use g_get_host_name() when
Index: evolution-data-server/libedataserver/e-account-list.c
===================================================================
RCS file: /cvs/gnome/evolution-data-server/libedataserver/e-account-list.c,v
retrieving revision 1.4
diff -u -p -r1.4 e-account-list.c
--- evolution-data-server/libedataserver/e-account-list.c 17 Nov 2005 11:38:47 -0000 1.4
+++ evolution-data-server/libedataserver/e-account-list.c 16 Dec 2005 12:01:35 -0000
@@ -292,6 +292,46 @@ e_account_list_save (EAccountList *accou
gconf_client_suggest_sync (account_list->priv->gconf, NULL);
}
+void
+e_account_list_prune_proxies (EAccountList *account_list)
+{
+ EAccount *account;
+ EIterator *iter;
+
+ for (iter = e_list_get_iterator (E_LIST (account_list));
+ e_iterator_is_valid (iter);
+ e_iterator_next (iter)) {
+ account = (EAccount *)e_iterator_get (iter);
+ if (account->parent_uid)
+ e_account_list_remove (account_list, account);
+ }
+
+ e_account_list_save (account_list);
+ g_object_unref (iter);
+}
+
+void
+e_account_list_remove_account_proxies (EAccountList *accounts, EAccount *account)
+{
+ EAccount *child_account;
+
+ while ( (child_account = (EAccount *)e_account_list_find (accounts, E_ACCOUNT_FIND_PARENT_UID, account->uid))) {
+ e_account_list_remove (accounts, child_account);
+ child_account = NULL;
+ }
+
+ e_account_list_save (accounts);
+}
+
+int
+e_account_list_account_has_proxies (EAccountList *accounts, EAccount *account)
+{
+ if (e_account_list_find (accounts, E_ACCOUNT_FIND_PARENT_UID, account->uid))
+ return TRUE;
+
+ return FALSE;
+}
+
/**
* e_account_list_add:
* @accounts:
@@ -450,6 +490,10 @@ e_account_list_find(EAccountList *accoun
case E_ACCOUNT_FIND_ID_ADDRESS:
if (account->id)
found = g_ascii_strcasecmp(account->id->address, key) == 0;
+ break;
+ case E_ACCOUNT_FIND_PARENT_UID:
+ if (account->parent_uid)
+ found = strcmp(account->parent_uid, key) == 0;
break;
}
Index: evolution-data-server/libedataserver/e-account-list.h
===================================================================
RCS file: /cvs/gnome/evolution-data-server/libedataserver/e-account-list.h,v
retrieving revision 1.3
diff -u -p -r1.3 e-account-list.h
--- evolution-data-server/libedataserver/e-account-list.h 31 Aug 2005 04:26:10 -0000 1.3
+++ evolution-data-server/libedataserver/e-account-list.h 16 Dec 2005 12:01:35 -0000
@@ -40,9 +40,10 @@ typedef enum _e_account_find_t {
E_ACCOUNT_FIND_UID,
E_ACCOUNT_FIND_ID_NAME,
E_ACCOUNT_FIND_ID_ADDRESS,
+ E_ACCOUNT_FIND_PARENT_UID,
} e_account_find_t;
-typedef struct {
+typedef struct _EAccountList {
EList parent_object;
EAccountListPrivate *priv;
@@ -73,6 +74,10 @@ void e_account_list_remove
const EAccount *e_account_list_get_default(EAccountList *);
void e_account_list_set_default(EAccountList *, EAccount *);
const EAccount *e_account_list_find (EAccountList *, e_account_find_t type, const char *key);
+
+void e_account_list_prune_proxies (EAccountList *);
+void e_account_list_remove_account_proxies (EAccountList *, EAccount *);
+int e_account_list_account_has_proxies (EAccountList *, EAccount *);
G_END_DECLS
Index: evolution-data-server/libedataserver/e-account.c
===================================================================
RCS file: /cvs/gnome/evolution-data-server/libedataserver/e-account.c,v
retrieving revision 1.4
diff -u -p -r1.4 e-account.c
--- evolution-data-server/libedataserver/e-account.c 17 Nov 2005 11:38:47 -0000 1.4
+++ evolution-data-server/libedataserver/e-account.c 16 Dec 2005 12:01:35 -0000
@@ -31,10 +31,56 @@
#include <libxml/tree.h>
#include <libxml/xmlmemory.h>
+#include <gconf/gconf-client.h>
+
+#define d(x)
+
+enum {
+ CHANGED,
+ LAST_SIGNAL
+};
+
+static guint signals[LAST_SIGNAL];
+
static void finalize (GObject *);
G_DEFINE_TYPE (EAccount, e_account, G_TYPE_OBJECT);
+/*
+lock mail accounts Relatively difficult -- involves redesign of the XML blobs which describe accounts
+disable adding mail accounts Simple -- can be done with just a Gconf key and some UI work to make assoc. widgets unavailable
+disable editing mail accounts Relatively difficult -- involves redesign of the XML blobs which describe accounts
+disable removing mail accounts
+lock default character encoding Simple -- Gconf key + a little UI work to desensitize widgets, etc
+disable free busy publishing
+disable specific mime types (from being viewed) 90% done already (Unknown MIME types still pose a problem)
+lock image loading preference
+lock junk mail filtering settings
+** junk mail per account
+lock work week
+lock first day of work week
+lock working hours
+disable forward as icalendar
+lock color options for tasks
+lock default contact filing format
+* forbid signatures Simple -- can be done with just a Gconf key and some UI work to make assoc. widgets unavailable
+* lock user to having 1 specific signature Simple -- can be done with just a Gconf key and some UI work to make assoc. widgets unavailable
+* forbid adding/removing signatures Simple -- can be done with just a Gconf key and some UI work to make assoc. widgets unavailable
+* lock each account to a certain signature Relatively difficult -- involved redesign of the XML blobs which describe accounts
+* set default folders
+set trash emptying frequency
+* lock displayed mail headers Simple -- can be done with just a Gconf key and some UI work to make assoc. widgets unavailable
+* lock authentication type (for incoming mail) Relatively difficult -- involves redesign of the XML blobs which describe accounts
+* lock authentication type (for outgoing mail) Relatively difficult -- involves redesign of the XML blobs which describe accounts
+* lock minimum check mail on server frequency Simple -- can be done with just a Gconf key and some UI work to make assoc. widgets unavailable
+** lock save password
+* require ssl always Relatively difficult -- involves redesign of the XML blobs which describe accounts
+** lock imap subscribed folder option
+** lock filtering of inbox
+** lock source account/options
+** lock destination account/options
+*/
+
static void
e_account_class_init (EAccountClass *account_class)
{
@@ -42,6 +88,16 @@ e_account_class_init (EAccountClass *acc
/* virtual method override */
object_class->finalize = finalize;
+
+ signals[CHANGED] =
+ g_signal_new("changed",
+ G_OBJECT_CLASS_TYPE (object_class),
+ G_SIGNAL_RUN_LAST,
+ G_STRUCT_OFFSET (EAccountClass, changed),
+ NULL, NULL,
+ g_cclosure_marshal_VOID__INT,
+ G_TYPE_NONE, 1,
+ G_TYPE_INT);
}
static void
@@ -50,6 +106,11 @@ e_account_init (EAccount *account)
account->id = g_new0 (EAccountIdentity, 1);
account->source = g_new0 (EAccountService, 1);
account->transport = g_new0 (EAccountService, 1);
+
+ account->parent_uid = NULL;
+
+ account->source->auto_check = FALSE;
+ account->source->auto_check_time = 10;
}
static void
@@ -62,6 +123,7 @@ identity_destroy (EAccountIdentity *id)
g_free (id->address);
g_free (id->reply_to);
g_free (id->organization);
+ g_free (id->sig_uid);
g_free (id);
}
@@ -99,6 +161,8 @@ finalize (GObject *object)
g_free (account->smime_sign_key);
g_free (account->smime_encrypt_key);
+ g_free (account->parent_uid);
+
G_OBJECT_CLASS (e_account_parent_class)->finalize (object);
}
@@ -182,45 +246,101 @@ xml_set_int (xmlNodePtr node, const char
static gboolean
xml_set_prop (xmlNodePtr node, const char *name, char **val)
{
- char *buf, *new_val;
+ char *buf;
+ int res;
buf = xmlGetProp (node, name);
- new_val = g_strdup (buf);
- xmlFree (buf);
-
- /* We can use strcmp here whether the value is UTF8 or
- * not, since we only care if the bytes changed.
- */
- if (!*val || strcmp (*val, new_val)) {
- g_free (*val);
- *val = new_val;
- return TRUE;
+ if (buf == NULL) {
+ res = (*val != NULL);
+ if (res) {
+ g_free(*val);
+ *val = NULL;
+ }
} else {
- g_free (new_val);
- return FALSE;
+ res = *val == NULL || strcmp(*val, buf) != 0;
+ if (res) {
+ g_free(*val);
+ *val = g_strdup(buf);
+ }
+ xmlFree(buf);
+ }
+
+ return res;
+}
+
+static EAccountReceiptPolicy
+str_to_receipt_policy (const char *str)
+{
+ if (!strcmp (str, "ask"))
+ return E_ACCOUNT_RECEIPT_ASK;
+ if (!strcmp (str, "always"))
+ return E_ACCOUNT_RECEIPT_ALWAYS;
+
+ return E_ACCOUNT_RECEIPT_NEVER;
+}
+
+static char*
+receipt_policy_to_str (EAccountReceiptPolicy val)
+{
+ char *ret = 0;
+
+ switch (val) {
+ case E_ACCOUNT_RECEIPT_NEVER:
+ ret = "never";
+ break;
+ case E_ACCOUNT_RECEIPT_ASK:
+ ret = "ask";
+ break;
+ case E_ACCOUNT_RECEIPT_ALWAYS:
+ ret = "always";
+ break;
+ }
+
+ return ret;
+}
+
+static gboolean
+xml_set_receipt_policy (xmlNodePtr node, const char *name, EAccountReceiptPolicy *val)
+{
+ EAccountReceiptPolicy new_val;
+ char *buf;
+
+ if ((buf = xmlGetProp (node, name))) {
+ new_val = str_to_receipt_policy (buf);
+ xmlFree (buf);
+
+ if (new_val != *val) {
+ *val = new_val;
+ return TRUE;
+ }
}
+
+ return FALSE;
}
static gboolean
xml_set_content (xmlNodePtr node, char **val)
{
- char *buf, *new_val;
+ char *buf;
+ int res;
- buf = xmlNodeGetContent (node);
- new_val = g_strdup (buf);
- xmlFree (buf);
-
- /* We can use strcmp here whether the value is UTF8 or
- * not, since we only care if the bytes changed.
- */
- if (!*val || strcmp (*val, new_val)) {
- g_free (*val);
- *val = new_val;
- return TRUE;
+ buf = xmlNodeGetContent(node);
+ if (buf == NULL) {
+ res = (*val != NULL);
+ if (res) {
+ g_free(*val);
+ *val = NULL;
+ }
} else {
- g_free (new_val);
- return FALSE;
+ res = *val == NULL || strcmp(*val, buf) != 0;
+ if (res) {
+ g_free(*val);
+ *val = g_strdup(buf);
+ }
+ xmlFree(buf);
}
+
+ return res;
}
static gboolean
@@ -238,8 +358,26 @@ xml_set_identity (xmlNodePtr node, EAcco
else if (!strcmp (node->name, "organization"))
changed |= xml_set_content (node, &id->organization);
else if (!strcmp (node->name, "signature")) {
- changed |= xml_set_bool (node, "auto", &id->auto_signature);
- changed |= xml_set_int (node, "default", &id->def_signature);
+ changed |= xml_set_prop (node, "uid", &id->sig_uid);
+ if (!id->sig_uid) {
+
+ /* WTF is this shit doing here? Migrate is supposed to "handle this" */
+
+ /* set a fake sig uid so the migrate code can handle this */
+ gboolean autogen = FALSE;
+ int sig_id = 0;
+
+ xml_set_bool (node, "auto", &autogen);
+ xml_set_int (node, "default", &sig_id);
+
+ if (autogen) {
+ id->sig_uid = g_strdup ("::0");
+ changed = TRUE;
+ } else if (sig_id) {
+ id->sig_uid = g_strdup_printf ("::%d", sig_id + 1);
+ changed = TRUE;
+ }
+ }
}
}
@@ -320,6 +458,8 @@ e_account_set_from_xml (EAccount *accoun
} else if (!strcmp (node->name, "auto-bcc")) {
changed |= xml_set_bool (node, "always", &account->always_bcc);
changed |= xml_set_content (node, &account->bcc_addrs);
+ } else if (!strcmp (node->name, "receipt-policy")) {
+ changed |= xml_set_receipt_policy (node, "policy", &account->receipt_policy);
} else if (!strcmp (node->name, "pgp")) {
changed |= xml_set_bool (node, "encrypt-to-self", &account->pgp_encrypt_to_self);
changed |= xml_set_bool (node, "always-trust", &account->pgp_always_trust);
@@ -349,11 +489,22 @@ e_account_set_from_xml (EAccount *accoun
}
}
}
+ } else if (!strcmp (node->name, "proxy")) {
+ if (node->children) {
+ for (cur = node->children; cur; cur = cur->next) {
+ if (!strcmp (cur->name, "parent-uid")) {
+ changed |= xml_set_content (cur, &account->parent_uid);
+ break;
+ }
+ }
+ }
}
}
xmlFreeDoc (doc);
+ g_signal_emit(account, signals[CHANGED], 0, -1);
+
return changed;
}
@@ -381,8 +532,7 @@ e_account_import (EAccount *dest, EAccou
dest->id->reply_to = g_strdup (src->id->reply_to);
g_free (dest->id->organization);
dest->id->organization = g_strdup (src->id->organization);
- dest->id->def_signature = src->id->def_signature;
- dest->id->auto_signature = src->id->auto_signature;
+ dest->id->sig_uid = g_strdup (src->id->sig_uid);
g_free (dest->source->url);
dest->source->url = g_strdup (src->source->url);
@@ -409,6 +559,8 @@ e_account_import (EAccount *dest, EAccou
g_free (dest->bcc_addrs);
dest->bcc_addrs = g_strdup (src->bcc_addrs);
+ dest->receipt_policy = src->receipt_policy;
+
g_free (dest->pgp_key);
dest->pgp_key = g_strdup (src->pgp_key);
dest->pgp_encrypt_to_self = src->pgp_encrypt_to_self;
@@ -424,6 +576,8 @@ e_account_import (EAccount *dest, EAccou
dest->smime_encrypt_to_self = src->smime_encrypt_to_self;
g_free (dest->smime_encrypt_key);
dest->smime_encrypt_key = g_strdup (src->smime_encrypt_key);
+
+ g_signal_emit(dest, signals[CHANGED], 0, -1);
}
@@ -463,9 +617,7 @@ e_account_to_xml (EAccount *account)
xmlNewTextChild (id, NULL, "organization", account->id->organization);
node = xmlNewChild (id, NULL, "signature",NULL);
- xmlSetProp (node, "auto", account->id->auto_signature ? "true" : "false");
- sprintf (buf, "%d", account->id->def_signature);
- xmlSetProp (node, "default", buf);
+ xmlSetProp (node, "uid", account->id->sig_uid);
src = xmlNewChild (root, NULL, "source", NULL);
xmlSetProp (src, "save-passwd", account->source->save_passwd ? "true" : "false");
@@ -494,6 +646,9 @@ e_account_to_xml (EAccount *account)
if (account->bcc_addrs)
xmlNewTextChild (node, NULL, "recipients", account->bcc_addrs);
+ node = xmlNewChild (root, NULL, "receipt-policy", NULL);
+ xmlSetProp (node, "policy", receipt_policy_to_str (account->receipt_policy));
+
node = xmlNewChild (root, NULL, "pgp", NULL);
xmlSetProp (node, "encrypt-to-self", account->pgp_encrypt_to_self ? "true" : "false");
xmlSetProp (node, "always-trust", account->pgp_always_trust ? "true" : "false");
@@ -511,6 +666,11 @@ e_account_to_xml (EAccount *account)
if (account->smime_encrypt_key)
xmlNewTextChild (node, NULL, "encrypt-key-id", account->smime_encrypt_key);
+ if (account->parent_uid) {
+ node = xmlNewChild (root, NULL, "proxy", NULL);
+ xmlNewTextChild (node, NULL, "parent-uid", account->parent_uid);
+ }
+
xmlDocDumpMemory (doc, &xmlbuf, &n);
xmlFreeDoc (doc);
@@ -552,4 +712,287 @@ e_account_uid_from_xml (const char *xml)
xmlFreeDoc (doc);
return uid;
+}
+
+enum {
+ EAP_IMAP_SUBSCRIBED = 0,
+ EAP_IMAP_NAMESPACE,
+ EAP_FILTER_INBOX,
+ EAP_FILTER_JUNK,
+ EAP_FORCE_SSL,
+ EAP_LOCK_SIGNATURE,
+ EAP_LOCK_AUTH,
+ EAP_LOCK_AUTOCHECK,
+ EAP_LOCK_DEFAULT_FOLDERS,
+ EAP_LOCK_SAVE_PASSWD,
+ EAP_LOCK_SOURCE,
+ EAP_LOCK_TRANSPORT,
+};
+
+static struct _system_info {
+ const char *key;
+ guint32 perm;
+} system_perms[] = {
+ { "imap_subscribed", 1<<EAP_IMAP_SUBSCRIBED },
+ { "imap_namespace", 1<<EAP_IMAP_NAMESPACE },
+ { "filter_inbox", 1<<EAP_FILTER_INBOX },
+ { "filter_junk", 1<<EAP_FILTER_JUNK },
+ { "ssl", 1<<EAP_FORCE_SSL },
+ { "signature", 1<<EAP_LOCK_SIGNATURE },
+ { "authtype", 1<<EAP_LOCK_AUTH },
+ { "autocheck", 1<<EAP_LOCK_AUTOCHECK },
+ { "default_folders", 1<<EAP_LOCK_DEFAULT_FOLDERS },
+ { "save_passwd" , 1<<EAP_LOCK_SAVE_PASSWD },
+ { "source", 1<<EAP_LOCK_SOURCE },
+ { "transport", 1<<EAP_LOCK_TRANSPORT },
+};
+
+#define TYPE_STRING (1)
+#define TYPE_INT (2)
+#define TYPE_BOOL (3)
+#define TYPE_MASK (0xff)
+#define TYPE_STRUCT (1<<8)
+
+static struct _account_info {
+ guint32 perms;
+ guint32 type;
+ unsigned int offset;
+ unsigned int struct_offset;
+} account_info[E_ACCOUNT_ITEM_LAST] = {
+ { /* E_ACCOUNT_NAME */ 0, TYPE_STRING, G_STRUCT_OFFSET(EAccount, name) },
+
+ { /* E_ACCOUNT_ID_NAME, */ 0, TYPE_STRING|TYPE_STRUCT, G_STRUCT_OFFSET(EAccount, id), G_STRUCT_OFFSET(EAccountIdentity, name) },
+ { /* E_ACCOUNT_ID_ADDRESS, */ 0, TYPE_STRING|TYPE_STRUCT, G_STRUCT_OFFSET(EAccount, id), G_STRUCT_OFFSET(EAccountIdentity, address) },
+ { /* E_ACCOUNT_ID_REPLY_TO, */ 0, TYPE_STRING|TYPE_STRUCT, G_STRUCT_OFFSET(EAccount, id), G_STRUCT_OFFSET(EAccountIdentity, reply_to) },
+ { /* E_ACCOUNT_ID_ORGANIZATION */ 0, TYPE_STRING|TYPE_STRUCT, G_STRUCT_OFFSET(EAccount, id), G_STRUCT_OFFSET(EAccountIdentity, organization) },
+ { /* E_ACCOUNT_ID_SIGNATURE */ 1<<EAP_LOCK_SIGNATURE, TYPE_STRING|TYPE_STRUCT, G_STRUCT_OFFSET(EAccount, id), G_STRUCT_OFFSET(EAccountIdentity, sig_uid) },
+
+ { /* E_ACCOUNT_SOURCE_URL */ 1<<EAP_LOCK_SOURCE, TYPE_STRING|TYPE_STRUCT, G_STRUCT_OFFSET(EAccount, source), G_STRUCT_OFFSET(EAccountService, url) },
+ { /* E_ACCOUNT_SOURCE_KEEP_ON_SERVER */ 0, TYPE_BOOL|TYPE_STRUCT, G_STRUCT_OFFSET(EAccount, source), G_STRUCT_OFFSET(EAccountService, keep_on_server) },
+ { /* E_ACCOUNT_SOURCE_AUTO_CHECK */ 1<<EAP_LOCK_AUTOCHECK, TYPE_BOOL|TYPE_STRUCT, G_STRUCT_OFFSET(EAccount, source), G_STRUCT_OFFSET(EAccountService, auto_check) },
+ { /* E_ACCOUNT_SOURCE_AUTO_CHECK_TIME */ 1<<EAP_LOCK_AUTOCHECK, TYPE_INT|TYPE_STRUCT, G_STRUCT_OFFSET(EAccount, source), G_STRUCT_OFFSET(EAccountService, auto_check_time) },
+ { /* E_ACCOUNT_SOURCE_SAVE_PASSWD */ 1<<EAP_LOCK_SAVE_PASSWD, TYPE_BOOL|TYPE_STRUCT, G_STRUCT_OFFSET(EAccount, source), G_STRUCT_OFFSET(EAccountService, save_passwd) },
+
+ { /* E_ACCOUNT_TRANSPORT_URL */ 1<<EAP_LOCK_TRANSPORT, TYPE_STRING|TYPE_STRUCT, G_STRUCT_OFFSET(EAccount, transport), G_STRUCT_OFFSET(EAccountService, url) },
+ { /* E_ACCOUNT_TRANSPORT_SAVE_PASSWD */ 1<<EAP_LOCK_SAVE_PASSWD, TYPE_BOOL|TYPE_STRUCT, G_STRUCT_OFFSET(EAccount, transport), G_STRUCT_OFFSET(EAccountService, save_passwd) },
+
+ { /* E_ACCOUNT_DRAFTS_FOLDER_URI */ 1<<EAP_LOCK_DEFAULT_FOLDERS, TYPE_STRING, G_STRUCT_OFFSET(EAccount, drafts_folder_uri) },
+ { /* E_ACCOUNT_SENT_FOLDER_URI */ 1<<EAP_LOCK_DEFAULT_FOLDERS, TYPE_STRING, G_STRUCT_OFFSET(EAccount, sent_folder_uri) },
+
+ { /* E_ACCOUNT_CC_ALWAYS */ 0, TYPE_BOOL, G_STRUCT_OFFSET(EAccount, always_cc) },
+ { /* E_ACCOUNT_CC_ADDRS */ 0, TYPE_STRING, G_STRUCT_OFFSET(EAccount, cc_addrs) },
+
+ { /* E_ACCOUNT_BCC_ALWAYS */ 0, TYPE_BOOL, G_STRUCT_OFFSET(EAccount, always_bcc) },
+ { /* E_ACCOUNT_BCC_ADDRS */ 0, TYPE_STRING, G_STRUCT_OFFSET(EAccount, bcc_addrs) },
+
+ { /* E_ACCOUNT_RECEIPT_POLICY */ 0, TYPE_INT, G_STRUCT_OFFSET(EAccount, receipt_policy) },
+
+ { /* E_ACCOUNT_PGP_KEY */ 0, TYPE_STRING, G_STRUCT_OFFSET(EAccount, pgp_key) },
+ { /* E_ACCOUNT_PGP_ENCRYPT_TO_SELF */ 0, TYPE_BOOL, G_STRUCT_OFFSET(EAccount, pgp_encrypt_to_self) },
+ { /* E_ACCOUNT_PGP_ALWAYS_SIGN */ 0, TYPE_BOOL, G_STRUCT_OFFSET(EAccount, pgp_always_sign) },
+ { /* E_ACCOUNT_PGP_NO_IMIP_SIGN */ 0, TYPE_BOOL, G_STRUCT_OFFSET(EAccount, pgp_no_imip_sign) },
+ { /* E_ACCOUNT_PGP_ALWAYS_TRUST */ 0, TYPE_BOOL, G_STRUCT_OFFSET(EAccount, pgp_always_trust) },
+
+ { /* E_ACCOUNT_SMIME_SIGN_KEY */ 0, TYPE_STRING, G_STRUCT_OFFSET(EAccount, smime_sign_key) },
+ { /* E_ACCOUNT_SMIME_ENCRYPT_KEY */ 0, TYPE_STRING, G_STRUCT_OFFSET(EAccount, smime_encrypt_key) },
+ { /* E_ACCOUNT_SMIME_SIGN_DEFAULT */ 0, TYPE_BOOL, G_STRUCT_OFFSET(EAccount, smime_sign_default) },
+ { /* E_ACCOUNT_SMIME_ENCRYPT_TO_SELF */ 0, TYPE_BOOL, G_STRUCT_OFFSET(EAccount, smime_encrypt_to_self) },
+ { /* E_ACCOUNT_SMIME_ENCRYPT_DEFAULT */ 0, TYPE_BOOL, G_STRUCT_OFFSET(EAccount, smime_encrypt_default) },
+
+ { /* E_ACCOUNT_PROXY_PARENT_UID, */ 0, TYPE_STRING, G_STRUCT_OFFSET(EAccount, parent_uid) },
+};
+
+static GHashTable *ea_option_table;
+static GHashTable *ea_system_table;
+static guint32 ea_perms;
+
+static struct _option_info {
+ char *key;
+ guint32 perms;
+} ea_option_list[] = {
+ { "imap_use_lsub", 1<<EAP_IMAP_SUBSCRIBED },
+ { "imap_override_namespace", 1<<EAP_IMAP_NAMESPACE },
+ { "imap_filter", 1<<EAP_FILTER_INBOX },
+ { "imap_filter_junk", 1<<EAP_FILTER_JUNK },
+ { "imap_filter_junk_inbox", 1<<EAP_FILTER_JUNK },
+ { "*_use_ssl", 1<<EAP_FORCE_SSL },
+ { "*_auth", 1<<EAP_LOCK_AUTH },
+};
+
+#define LOCK_BASE "/apps/evolution/lock/mail/accounts"
+
+static void
+ea_setting_notify(GConfClient *gconf, guint cnxn_id, GConfEntry *entry, void *crap)
+{
+ GConfValue *value;
+ char *tkey;
+ struct _system_info *info;
+
+ g_return_if_fail (gconf_entry_get_key (entry) != NULL);
+
+ if (!(value = gconf_entry_get_value (entry)))
+ return;
+
+ tkey = strrchr(entry->key, '/');
+ g_return_if_fail (tkey != NULL);
+
+ info = g_hash_table_lookup(ea_system_table, tkey+1);
+ if (info) {
+ if (gconf_value_get_bool(value))
+ ea_perms |= info->perm;
+ else
+ ea_perms &= ~info->perm;
+ }
+}
+
+static void
+ea_setting_setup(void)
+{
+ GConfClient *gconf = gconf_client_get_default();
+ GConfEntry *entry;
+ GError *err = NULL;
+ int i;
+ char key[64];
+
+ if (ea_option_table != NULL)
+ return;
+
+ ea_option_table = g_hash_table_new(g_str_hash, g_str_equal);
+ for (i=0;i<sizeof(ea_option_list)/sizeof(ea_option_list[0]);i++)
+ g_hash_table_insert(ea_option_table, ea_option_list[i].key, &ea_option_list[i]);
+
+ gconf_client_add_dir(gconf, LOCK_BASE, GCONF_CLIENT_PRELOAD_NONE, NULL);
+
+ ea_system_table = g_hash_table_new(g_str_hash, g_str_equal);
+ for (i=0;i<sizeof(system_perms)/sizeof(system_perms[0]);i++) {
+ g_hash_table_insert(ea_system_table, (char *)system_perms[i].key, &system_perms[i]);
+ sprintf(key, LOCK_BASE "/%s", system_perms[i].key);
+ entry = gconf_client_get_entry(gconf, key, NULL, TRUE, &err);
+ if (entry)
+ ea_setting_notify(gconf, 0, entry, NULL);
+ gconf_entry_free(entry);
+ }
+
+ if (err) {
+ g_warning("Could not load account lock settings: %s", err->message);
+ g_error_free(err);
+ }
+
+ gconf_client_notify_add(gconf, LOCK_BASE, (GConfClientNotifyFunc)ea_setting_notify, NULL, NULL, NULL);
+ g_object_unref(gconf);
+}
+
+/* look up the item in the structure or the substructure using our table of reflection data */
+#define addr(ea, type) \
+ ((account_info[type].type & TYPE_STRUCT)? \
+ (((char **)(((char *)ea)+account_info[type].offset))[0] + account_info[type].struct_offset): \
+ (((char *)ea)+account_info[type].offset))
+
+const char *e_account_get_string(EAccount *ea, e_account_item_t type)
+{
+ return *((const char **)addr(ea, type));
+}
+
+int e_account_get_int(EAccount *ea, e_account_item_t type)
+{
+ return *((int *)addr(ea, type));
+}
+
+gboolean e_account_get_bool(EAccount *ea, e_account_item_t type)
+{
+ return *((gboolean *)addr(ea, type));
+}
+
+#if d(!)0
+static void
+dump_account(EAccount *ea)
+{
+ char *xml;
+
+ printf("Account changed\n");
+ xml = e_account_to_xml(ea);
+ printf(" ->\n%s\n", xml);
+ g_free(xml);
+}
+#endif
+
+/* TODO: should it return true if it changed? */
+void e_account_set_string(EAccount *ea, e_account_item_t type, const char *val)
+{
+ char **p;
+
+ if (!e_account_writable(ea, type)) {
+ g_warning("Trying to set non-writable option account value");
+ } else {
+ p = (char **)addr(ea, type);
+ d(printf("Setting string %d: old '%s' new '%s'\n", type, *p, val));
+ if (*p != val
+ && (*p == NULL || val == NULL || strcmp(*p, val) != 0)) {
+ g_free(*p);
+ *p = g_strdup(val);
+ d(dump_account(ea));
+ g_signal_emit(ea, signals[CHANGED], 0, type);
+ }
+ }
+}
+
+void e_account_set_int(EAccount *ea, e_account_item_t type, int val)
+{
+ if (!e_account_writable(ea, type)) {
+ g_warning("Trying to set non-writable option account value");
+ } else {
+ int *p = (int *)addr(ea, type);
+
+ if (*p != val) {
+ *p = val;
+ d(dump_account(ea));
+ g_signal_emit(ea, signals[CHANGED], 0, type);
+ }
+ }
+}
+
+void e_account_set_bool(EAccount *ea, e_account_item_t type, gboolean val)
+{
+ if (!e_account_writable(ea, type)) {
+ g_warning("Trying to set non-writable option account value");
+ } else {
+ gboolean *p = (gboolean *)addr(ea, type);
+
+ if (*p != val) {
+ *p = val;
+ d(dump_account(ea));
+ g_signal_emit(ea, signals[CHANGED], 0, type);
+ }
+ }
+}
+
+gboolean
+e_account_writable_option(EAccount *ea, const char *protocol, const char *option)
+{
+ char *key;
+ struct _option_info *info;
+
+ ea_setting_setup();
+
+ key = alloca(strlen(protocol)+strlen(option)+2);
+ sprintf(key, "%s_%s", protocol, option);
+
+ info = g_hash_table_lookup(ea_option_table, key);
+ if (info == NULL) {
+ sprintf(key, "*_%s", option);
+ info = g_hash_table_lookup(ea_option_table, key);
+ }
+
+ d(printf("checking writable option '%s' perms=%08x\n", option, info?info->perms:0));
+
+ return info == NULL
+ || (info->perms & ea_perms) == 0;
+}
+
+gboolean
+e_account_writable(EAccount *ea, e_account_item_t type)
+{
+ ea_setting_setup();
+
+ return (account_info[type].perms & ea_perms) == 0;
}
Index: evolution-data-server/libedataserver/e-account.h
===================================================================
RCS file: /cvs/gnome/evolution-data-server/libedataserver/e-account.h,v
retrieving revision 1.3
diff -u -p -r1.3 e-account.h
--- evolution-data-server/libedataserver/e-account.h 31 Aug 2005 04:26:10 -0000 1.3
+++ evolution-data-server/libedataserver/e-account.h 16 Dec 2005 12:01:35 -0000
@@ -30,17 +30,72 @@ G_BEGIN_DECLS
#define E_IS_ACCOUNT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), E_TYPE_ACCOUNT))
#define E_IS_ACCOUNT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((obj), E_TYPE_ACCOUNT))
-typedef struct {
+typedef enum _e_account_item_t {
+ E_ACCOUNT_NAME,
+
+ E_ACCOUNT_ID_NAME,
+ E_ACCOUNT_ID_ADDRESS,
+ E_ACCOUNT_ID_REPLY_TO,
+ E_ACCOUNT_ID_ORGANIZATION,
+ E_ACCOUNT_ID_SIGNATURE,
+
+ E_ACCOUNT_SOURCE_URL, /* what about separating out host/user/path settings?? sigh */
+ E_ACCOUNT_SOURCE_KEEP_ON_SERVER,
+ E_ACCOUNT_SOURCE_AUTO_CHECK,
+ E_ACCOUNT_SOURCE_AUTO_CHECK_TIME,
+ E_ACCOUNT_SOURCE_SAVE_PASSWD,
+
+ E_ACCOUNT_TRANSPORT_URL,
+ E_ACCOUNT_TRANSPORT_SAVE_PASSWD,
+
+ E_ACCOUNT_DRAFTS_FOLDER_URI,
+ E_ACCOUNT_SENT_FOLDER_URI,
+
+ E_ACCOUNT_CC_ALWAYS,
+ E_ACCOUNT_CC_ADDRS,
+
+ E_ACCOUNT_BCC_ALWAYS,
+ E_ACCOUNT_BCC_ADDRS,
+
+ E_ACCOUNT_RECEIPT_POLICY,
+
+ E_ACCOUNT_PGP_KEY,
+ E_ACCOUNT_PGP_ENCRYPT_TO_SELF,
+ E_ACCOUNT_PGP_ALWAYS_SIGN,
+ E_ACCOUNT_PGP_NO_IMIP_SIGN,
+ E_ACCOUNT_PGP_ALWAYS_TRUST,
+
+ E_ACCOUNT_SMIME_SIGN_KEY,
+ E_ACCOUNT_SMIME_ENCRYPT_KEY,
+ E_ACCOUNT_SMIME_SIGN_DEFAULT,
+ E_ACCOUNT_SMIME_ENCRYPT_TO_SELF,
+ E_ACCOUNT_SMIME_ENCRYPT_DEFAULT,
+
+ E_ACCOUNT_PROXY_PARENT_UID,
+
+ E_ACCOUNT_ITEM_LAST
+} e_account_item_t;
+
+typedef enum _e_account_access_t {
+ E_ACCOUNT_ACCESS_WRITE = 1<<0,
+} e_account_access_t;
+
+typedef struct _EAccountIdentity {
char *name;
char *address;
char *reply_to;
char *organization;
- int def_signature;
- gboolean auto_signature;
+ char *sig_uid;
} EAccountIdentity;
-typedef struct {
+typedef enum _EAccountReceiptPolicy {
+ E_ACCOUNT_RECEIPT_NEVER,
+ E_ACCOUNT_RECEIPT_ASK,
+ E_ACCOUNT_RECEIPT_ALWAYS
+} EAccountReceiptPolicy;
+
+typedef struct _EAccountService {
char *url;
gboolean keep_on_server;
gboolean auto_check;
@@ -48,8 +103,7 @@ typedef struct {
gboolean save_passwd;
} EAccountService;
-
-typedef struct {
+typedef struct _EAccount {
GObject parent_object;
char *name;
@@ -68,12 +122,16 @@ typedef struct {
gboolean always_bcc;
char *bcc_addrs;
+ EAccountReceiptPolicy receipt_policy;
+
char *pgp_key;
gboolean pgp_encrypt_to_self;
gboolean pgp_always_sign;
gboolean pgp_no_imip_sign;
gboolean pgp_always_trust;
+ char *parent_uid;
+
char *smime_sign_key;
char *smime_encrypt_key;
gboolean smime_sign_default;
@@ -84,6 +142,7 @@ typedef struct {
typedef struct {
GObjectClass parent_class;
+ void (*changed)(EAccount *, int field);
} EAccountClass;
@@ -103,6 +162,31 @@ char *e_account_to_xml (EAccou
char *e_account_uid_from_xml (const char *xml);
+
+const char *e_account_get_string (EAccount *,
+ e_account_item_t type);
+
+int e_account_get_int (EAccount *,
+ e_account_item_t type);
+
+gboolean e_account_get_bool (EAccount *,
+ e_account_item_t type);
+
+void e_account_set_string (EAccount *,
+ e_account_item_t type, const char *);
+
+void e_account_set_int (EAccount *,
+ e_account_item_t type, int);
+
+void e_account_set_bool (EAccount *,
+ e_account_item_t type, gboolean);
+
+gboolean e_account_writable (EAccount *ea,
+ e_account_item_t type);
+
+gboolean e_account_writable_option (EAccount *ea,
+ const char *protocol,
+ const char *option);
G_END_DECLS
Index: evolution/calendar/gui/itip-utils.h
===================================================================
RCS file: /cvs/gnome/evolution/calendar/gui/itip-utils.h,v
retrieving revision 1.20
diff -u -p -r1.20 itip-utils.h
--- evolution/calendar/gui/itip-utils.h 30 Sep 2005 11:26:55 -0000 1.20
+++ evolution/calendar/gui/itip-utils.h 22 Dec 2005 07:59:44 -0000
@@ -7,7 +7,7 @@
#include <glib.h>
#include <libecal/e-cal.h>
#include <libecal/e-cal-component.h>
-#include <e-util/e-account-list.h>
+#include <libedataserver/e-account-list.h>
typedef enum {
E_CAL_COMPONENT_METHOD_PUBLISH,
Index: evolution/composer/e-msg-composer-hdrs.h
===================================================================
RCS file: /cvs/gnome/evolution/composer/e-msg-composer-hdrs.h,v
retrieving revision 1.34
diff -u -p -r1.34 e-msg-composer-hdrs.h
--- evolution/composer/e-msg-composer-hdrs.h 23 Dec 2004 02:42:11 -0000 1.34
+++ evolution/composer/e-msg-composer-hdrs.h 22 Dec 2005 07:59:45 -0000
@@ -29,7 +29,7 @@
#include <bonobo/bonobo-ui-component.h>
-#include <e-util/e-account.h>
+#include <libedataserver/e-account.h>
#include <camel/camel-mime-message.h>
#include <libebook/e-destination.h>
Index: evolution/composer/evolution-composer.c
===================================================================
RCS file: /cvs/gnome/evolution/composer/evolution-composer.c,v
retrieving revision 1.44
diff -u -p -r1.44 evolution-composer.c
--- evolution/composer/evolution-composer.c 19 Oct 2005 10:54:27 -0000 1.44
+++ evolution/composer/evolution-composer.c 22 Dec 2005 07:59:45 -0000
@@ -33,7 +33,7 @@
#include <misc/e-gui-utils.h>
#include "evolution-composer.h"
#include "mail/mail-config.h"
-#include "e-util/e-account-list.h"
+#include "libedataserver/e-account-list.h"
#include <camel/camel-mime-filter-tohtml.h>
#include <camel/camel-stream-mem.h>
Index: evolution/e-util/Makefile.am
===================================================================
RCS file: /cvs/gnome/evolution/e-util/Makefile.am,v
retrieving revision 1.139
diff -u -p -r1.139 Makefile.am
--- evolution/e-util/Makefile.am 17 Dec 2005 14:15:38 -0000 1.139
+++ evolution/e-util/Makefile.am 22 Dec 2005 07:59:45 -0000
@@ -39,8 +39,6 @@ INCLUDES = \
privsolib_LTLIBRARIES = libeutil.la libeconduit.la
eutilinclude_HEADERS = \
- e-account-list.h \
- e-account.h \
e-bconf-map.h \
e-categories-config.h \
e-config.h \
@@ -80,8 +78,6 @@ eutilinclude_HEADERS = \
libeutil_la_SOURCES = \
$(eutilinclude_HEADERS) \
e-util-marshal.c \
- e-account-list.c \
- e-account.c \
e-bconf-map.c \
e-categories-config.c \
e-config.c \
Index: evolution/mail/em-account-editor.c
===================================================================
RCS file: /cvs/gnome/evolution/mail/em-account-editor.c,v
retrieving revision 1.38
diff -u -p -r1.38 em-account-editor.c
--- evolution/mail/em-account-editor.c 21 Dec 2005 06:31:34 -0000 1.38
+++ evolution/mail/em-account-editor.c 22 Dec 2005 07:59:45 -0000
@@ -68,7 +68,7 @@
#include <libgnomeui/gnome-druid.h>
#include <libgnomeui/gnome-druid-page-standard.h>
-#include <e-util/e-account-list.h>
+#include <libedataserver/e-account-list.h>
#include <e-util/e-signature-list.h>
#include "e-util/e-error.h"
Index: evolution/mail/em-account-prefs.c
===================================================================
RCS file: /cvs/gnome/evolution/mail/em-account-prefs.c,v
retrieving revision 1.21
diff -u -p -r1.21 em-account-prefs.c
--- evolution/mail/em-account-prefs.c 18 Dec 2005 04:43:33 -0000 1.21
+++ evolution/mail/em-account-prefs.c 22 Dec 2005 07:59:45 -0000
@@ -40,7 +40,7 @@
#include "mail-ops.h"
#include "mail-send-recv.h"
-#include "e-util/e-account-list.h"
+#include "libedataserver/e-account-list.h"
#include "e-util/e-error.h"
#include "e-util/e-util-private.h"
Index: evolution/mail/em-composer-utils.c
===================================================================
RCS file: /cvs/gnome/evolution/mail/em-composer-utils.c,v
retrieving revision 1.46
diff -u -p -r1.46 em-composer-utils.c
--- evolution/mail/em-composer-utils.c 23 Nov 2005 06:46:51 -0000 1.46
+++ evolution/mail/em-composer-utils.c 22 Dec 2005 07:59:46 -0000
@@ -47,7 +47,7 @@
#include "em-format-quote.h"
#include "em-event.h"
-#include "e-util/e-account-list.h"
+#include "libedataserver/e-account-list.h"
#include <camel/camel-multipart.h>
#include <camel/camel-string-utils.h>
Index: evolution/mail/em-folder-tree-model.h
===================================================================
RCS file: /cvs/gnome/evolution/mail/em-folder-tree-model.h,v
retrieving revision 1.20
diff -u -p -r1.20 em-folder-tree-model.h
--- evolution/mail/em-folder-tree-model.h 10 Jun 2004 22:08:41 -0000 1.20
+++ evolution/mail/em-folder-tree-model.h 22 Dec 2005 07:59:46 -0000
@@ -31,7 +31,7 @@
#include <camel/camel-store.h>
-#include <e-util/e-account-list.h>
+#include <libedataserver/e-account-list.h>
#ifdef __cplusplus
extern "C" {
Index: evolution/mail/em-migrate.c
===================================================================
RCS file: /cvs/gnome/evolution/mail/em-migrate.c,v
retrieving revision 1.51
diff -u -p -r1.51 em-migrate.c
--- evolution/mail/em-migrate.c 18 Dec 2005 08:24:26 -0000 1.51
+++ evolution/mail/em-migrate.c 22 Dec 2005 07:59:46 -0000
@@ -61,7 +61,7 @@
#include <e-util/e-xml-utils.h>
#include "e-util/e-bconf-map.h"
-#include "e-util/e-account-list.h"
+#include "libedataserver/e-account-list.h"
#include "e-util/e-signature-list.h"
#include "e-util/e-error.h"
#include "e-util/e-util-private.h"
Index: evolution/mail/em-subscribe-editor.c
===================================================================
RCS file: /cvs/gnome/evolution/mail/em-subscribe-editor.c,v
retrieving revision 1.20
diff -u -p -r1.20 em-subscribe-editor.c
--- evolution/mail/em-subscribe-editor.c 18 Dec 2005 08:24:26 -0000 1.20
+++ evolution/mail/em-subscribe-editor.c 22 Dec 2005 07:59:46 -0000
@@ -36,7 +36,7 @@
#include "camel/camel-exception.h"
#include "camel/camel-store.h"
#include "camel/camel-session.h"
-#include "e-util/e-account-list.h"
+#include "libedataserver/e-account-list.h"
#include "e-util/e-util-private.h"
#include "em-subscribe-editor.h"
Index: evolution/mail/em-utils.c
===================================================================
RCS file: /cvs/gnome/evolution/mail/em-utils.c,v
retrieving revision 1.69
diff -u -p -r1.69 em-utils.c
--- evolution/mail/em-utils.c 18 Dec 2005 08:24:26 -0000 1.69
+++ evolution/mail/em-utils.c 22 Dec 2005 07:59:46 -0000
@@ -71,7 +71,7 @@
#include "e-util/e-util.h"
#include "e-util/e-util-private.h"
#include "e-util/e-mktemp.h"
-#include "e-util/e-account-list.h"
+#include "libedataserver/e-account-list.h"
#include "e-util/e-dialog-utils.h"
#include "e-util/e-error.h"
Index: evolution/mail/mail-config.c
===================================================================
RCS file: /cvs/gnome/evolution/mail/mail-config.c,v
retrieving revision 1.322
diff -u -p -r1.322 mail-config.c
--- evolution/mail/mail-config.c 18 Dec 2005 08:24:26 -0000 1.322
+++ evolution/mail/mail-config.c 22 Dec 2005 07:59:46 -0000
@@ -58,7 +58,7 @@
#include <e-util/e-util.h>
#include <misc/e-gui-utils.h>
-#include <e-util/e-account-list.h>
+#include <libedataserver/e-account-list.h>
#include <e-util/e-signature-list.h>
#include <camel/camel-service.h>
Index: evolution/mail/mail-crypto.c
===================================================================
RCS file: /cvs/gnome/evolution/mail/mail-crypto.c,v
retrieving revision 1.50
diff -u -p -r1.50 mail-crypto.c
--- evolution/mail/mail-crypto.c 31 Mar 2004 10:09:04 -0000 1.50
+++ evolution/mail/mail-crypto.c 22 Dec 2005 07:59:46 -0000
@@ -28,7 +28,7 @@
#include <string.h>
#include <camel/camel-gpg-context.h>
-#include <e-util/e-account.h>
+#include <libedataserver/e-account.h>
#include "mail-crypto.h"
#include "mail-session.h"
Index: evolution/mail/mail-ops.h
===================================================================
RCS file: /cvs/gnome/evolution/mail/mail-ops.h,v
retrieving revision 1.72
diff -u -p -r1.72 mail-ops.h
--- evolution/mail/mail-ops.h 21 Jul 2005 04:15:21 -0000 1.72
+++ evolution/mail/mail-ops.h 22 Dec 2005 07:59:46 -0000
@@ -37,7 +37,7 @@ extern "C" {
#include "camel/camel-operation.h"
#include "libedataserver/e-msgport.h"
-#include "e-util/e-account.h"
+#include "libedataserver/e-account.h"
void mail_append_mail (CamelFolder *folder, CamelMimeMessage *message, CamelMessageInfo *info,
void (*done)(CamelFolder *folder, CamelMimeMessage *msg, CamelMessageInfo *info, int ok,
Index: evolution/mail/mail-send-recv.c
===================================================================
RCS file: /cvs/gnome/evolution/mail/mail-send-recv.c,v
retrieving revision 1.103
diff -u -p -r1.103 mail-send-recv.c
--- evolution/mail/mail-send-recv.c 6 Dec 2005 08:37:28 -0000 1.103
+++ evolution/mail/mail-send-recv.c 22 Dec 2005 07:59:46 -0000
@@ -41,7 +41,7 @@
#include <libgnome/gnome-i18n.h>
#include "e-util/e-gtk-utils.h"
-#include "e-util/e-account-list.h"
+#include "libedataserver/e-account-list.h"
#include "misc/e-clipped-label.h"
#include "em-filter-rule.h"
Index: evolution/mail/mail-vfolder.c
===================================================================
RCS file: /cvs/gnome/evolution/mail/mail-vfolder.c,v
retrieving revision 1.136
diff -u -p -r1.136 mail-vfolder.c
--- evolution/mail/mail-vfolder.c 17 Dec 2005 17:52:32 -0000 1.136
+++ evolution/mail/mail-vfolder.c 22 Dec 2005 07:59:48 -0000
@@ -32,7 +32,7 @@
#include <camel/camel-vee-store.h>
#include <camel/camel-vtrash-folder.h>
-#include "e-util/e-account-list.h"
+#include "libedataserver/e-account-list.h"
#include "e-util/e-error.h"
#include "e-util/e-util-private.h"
Index: evolution/mail/importers/netscape-importer.c
===================================================================
RCS file: /cvs/gnome/evolution/mail/importers/netscape-importer.c,v
retrieving revision 1.21
diff -u -p -r1.21 netscape-importer.c
--- evolution/mail/importers/netscape-importer.c 17 Dec 2005 18:35:37 -0000 1.21
+++ evolution/mail/importers/netscape-importer.c 22 Dec 2005 07:59:48 -0000
@@ -57,7 +57,7 @@
#include "mail/em-filter-folder-element.h"
#include <filter/filter-int.h>
-#include "e-util/e-account-list.h"
+#include "libedataserver/e-account-list.h"
#include "e-util/e-signature-list.h"
#include "mail/mail-mt.h"
Index: evolution/plugins/exchange-operations/exchange-account-setup.c
===================================================================
RCS file: /cvs/gnome/evolution/plugins/exchange-operations/exchange-account-setup.c,v
retrieving revision 1.26
diff -u -p -r1.26 exchange-account-setup.c
--- evolution/plugins/exchange-operations/exchange-account-setup.c 19 Dec 2005 14:15:11 -0000 1.26
+++ evolution/plugins/exchange-operations/exchange-account-setup.c 22 Dec 2005 07:59:48 -0000
@@ -22,7 +22,7 @@
#include "config.h"
#endif
-#include "e-util/e-account.h"
+#include "libedataserver/e-account.h"
#include "e-util/e-error.h"
#include <string.h>
Index: evolution/plugins/exchange-operations/exchange-calendar.c
===================================================================
RCS file: /cvs/gnome/evolution/plugins/exchange-operations/exchange-calendar.c,v
retrieving revision 1.11
diff -u -p -r1.11 exchange-calendar.c
--- evolution/plugins/exchange-operations/exchange-calendar.c 28 Sep 2005 14:30:54 -0000 1.11
+++ evolution/plugins/exchange-operations/exchange-calendar.c 22 Dec 2005 07:59:48 -0000
@@ -32,7 +32,7 @@
#include "calendar/gui/dialogs/calendar-setup.h"
#include "mail/em-account-editor.h"
#include "mail/em-config.h"
-#include "e-util/e-account.h"
+#include "libedataserver/e-account.h"
#include "e-util/e-error.h"
#include "exchange-operations.h"
Index: evolution/plugins/exchange-operations/exchange-config-listener.h
===================================================================
RCS file: /cvs/gnome/evolution/plugins/exchange-operations/exchange-config-listener.h,v
retrieving revision 1.4
diff -u -p -r1.4 exchange-config-listener.h
--- evolution/plugins/exchange-operations/exchange-config-listener.h 22 Aug 2005 13:18:42 -0000 1.4
+++ evolution/plugins/exchange-operations/exchange-config-listener.h 22 Dec 2005 07:59:48 -0000
@@ -8,7 +8,7 @@
#include <exchange-account.h>
#include "exchange-types.h"
-#include "e-util/e-account-list.h"
+#include "libedataserver/e-account-list.h"
#include <libedataserver/e-source-list.h>
#include <libedataserver/e-source-group.h>
Index: evolution/plugins/exchange-operations/exchange-contacts.c
===================================================================
RCS file: /cvs/gnome/evolution/plugins/exchange-operations/exchange-contacts.c,v
retrieving revision 1.11
diff -u -p -r1.11 exchange-contacts.c
--- evolution/plugins/exchange-operations/exchange-contacts.c 21 Dec 2005 06:56:54 -0000 1.11
+++ evolution/plugins/exchange-operations/exchange-contacts.c 22 Dec 2005 07:59:48 -0000
@@ -34,7 +34,7 @@
#include "mail/em-account-editor.h"
#include "mail/em-config.h"
-#include "e-util/e-account.h"
+#include "libedataserver/e-account.h"
#include "e-util/e-error.h"
#include "exchange-operations.h"
Index: evolution/plugins/groupwise-account-setup/camel-gw-listener.c
===================================================================
RCS file: /cvs/gnome/evolution/plugins/groupwise-account-setup/camel-gw-listener.c,v
retrieving revision 1.42
diff -u -p -r1.42 camel-gw-listener.c
--- evolution/plugins/groupwise-account-setup/camel-gw-listener.c 21 Dec 2005 15:09:31 -0000 1.42
+++ evolution/plugins/groupwise-account-setup/camel-gw-listener.c 22 Dec 2005 07:59:49 -0000
@@ -31,7 +31,7 @@
#include <e-gw-connection.h>
#include <libedataserverui/e-passwords.h>
#include "e-util/e-error.h"
-#include <e-util/e-account.h>
+#include <libedataserver/e-account.h>
/*stores some info about all currently existing groupwise accounts
list of GwAccountInfo structures */
Index: evolution/plugins/groupwise-account-setup/camel-gw-listener.h
===================================================================
RCS file: /cvs/gnome/evolution/plugins/groupwise-account-setup/camel-gw-listener.h,v
retrieving revision 1.6
diff -u -p -r1.6 camel-gw-listener.h
--- evolution/plugins/groupwise-account-setup/camel-gw-listener.h 10 Jul 2005 09:24:36 -0000 1.6
+++ evolution/plugins/groupwise-account-setup/camel-gw-listener.h 22 Dec 2005 07:59:49 -0000
@@ -24,7 +24,7 @@
#ifndef CAMEL_GW_LISTENER_H
#define CAMEL_GW_LISTENER_H
-#include <e-util/e-account-list.h>
+#include <libedataserver/e-account-list.h>
#include<libedataserver/e-source.h>
#include<libedataserver/e-source-list.h>
#include <camel/camel-url.h>
Index: evolution/plugins/groupwise-features/junk-mail-settings.c
===================================================================
RCS file: /cvs/gnome/evolution/plugins/groupwise-features/junk-mail-settings.c,v
retrieving revision 1.4
diff -u -p -r1.4 junk-mail-settings.c
--- evolution/plugins/groupwise-features/junk-mail-settings.c 24 Aug 2005 03:15:26 -0000 1.4
+++ evolution/plugins/groupwise-features/junk-mail-settings.c 22 Dec 2005 07:59:49 -0000
@@ -35,7 +35,7 @@
#include <mail/em-folder-view.h>
#include <e-gw-connection.h>
#include "mail/em-account-editor.h"
-#include "e-util/e-account.h"
+#include "libedataserver/e-account.h"
#include "mail/em-config.h"
#include "share-folder.h"
#include "junk-settings.h"
Index: evolution/plugins/groupwise-features/mail-send-options.c
===================================================================
RCS file: /cvs/gnome/evolution/plugins/groupwise-features/mail-send-options.c,v
retrieving revision 1.5
diff -u -p -r1.5 mail-send-options.c
--- evolution/plugins/groupwise-features/mail-send-options.c 10 Nov 2005 07:00:09 -0000 1.5
+++ evolution/plugins/groupwise-features/mail-send-options.c 22 Dec 2005 07:59:49 -0000
@@ -35,7 +35,7 @@
#include "mail/em-utils.h"
#include "composer/e-msg-composer.h"
-#include "e-util/e-account.h"
+#include "libedataserver/e-account.h"
#include "misc/e-send-options.h"
Index: evolution/plugins/groupwise-features/proxy-login.c
===================================================================
RCS file: /cvs/gnome/evolution/plugins/groupwise-features/proxy-login.c,v
retrieving revision 1.4
diff -u -p -r1.4 proxy-login.c
--- evolution/plugins/groupwise-features/proxy-login.c 17 Dec 2005 18:45:07 -0000 1.4
+++ evolution/plugins/groupwise-features/proxy-login.c 22 Dec 2005 07:59:49 -0000
@@ -53,7 +53,7 @@
#include <camel/camel-url.h>
#include <camel/camel-store.h>
#include <mail/mail-ops.h>
-#include <e-util/e-account.h>
+#include <libedataserver/e-account.h>
#include <e-util/e-error.h>
#include <e-util/e-icon-factory.h>
#include <e-util/e-util-private.h>
Index: evolution/plugins/groupwise-features/proxy.c
===================================================================
RCS file: /cvs/gnome/evolution/plugins/groupwise-features/proxy.c,v
retrieving revision 1.15
diff -u -p -r1.15 proxy.c
--- evolution/plugins/groupwise-features/proxy.c 17 Dec 2005 18:45:07 -0000 1.15
+++ evolution/plugins/groupwise-features/proxy.c 22 Dec 2005 07:59:49 -0000
@@ -56,8 +56,8 @@
#include <mail/mail-component.h>
#include <mail/mail-ops.h>
#include <mail/mail-session.h>
-#include <e-util/e-account.h>
-#include <e-util/e-account-list.h>
+#include <libedataserver/e-account.h>
+#include <libedataserver/e-account-list.h>
#include <e-util/e-icon-factory.h>
#include <camel/camel-url.h>
Index: evolution/plugins/groupwise-features/proxy.h
===================================================================
RCS file: /cvs/gnome/evolution/plugins/groupwise-features/proxy.h,v
retrieving revision 1.2
diff -u -p -r1.2 proxy.h
--- evolution/plugins/groupwise-features/proxy.h 10 Aug 2005 06:50:07 -0000 1.2
+++ evolution/plugins/groupwise-features/proxy.h 22 Dec 2005 07:59:49 -0000
@@ -22,7 +22,7 @@
*/
#include <gtk/gtkwidget.h>
-#include <e-util/e-account.h>
+#include <libedataserver/e-account.h>
#include <gtk/gtk.h>
#define TYPE_PROXY_DIALOG (proxy_dialog_get_type ())
Index: evolution/plugins/groupwise-features/send-options.c
===================================================================
RCS file: /cvs/gnome/evolution/plugins/groupwise-features/send-options.c,v
retrieving revision 1.3
diff -u -p -r1.3 send-options.c
--- evolution/plugins/groupwise-features/send-options.c 7 Jul 2005 17:06:27 -0000 1.3
+++ evolution/plugins/groupwise-features/send-options.c 22 Dec 2005 07:59:49 -0000
@@ -28,7 +28,7 @@
#include <gtk/gtk.h>
#include "mail/em-account-editor.h"
#include "mail/em-config.h"
-#include "e-util/e-account.h"
+#include "libedataserver/e-account.h"
#include <misc/e-send-options.h>
#include <mail/em-config.h>
#include <e-gw-connection.h>
Index: evolution/plugins/hula-account-setup/camel-hula-listener.c
===================================================================
RCS file: /cvs/gnome/evolution/plugins/hula-account-setup/camel-hula-listener.c,v
retrieving revision 1.2
diff -u -p -r1.2 camel-hula-listener.c
--- evolution/plugins/hula-account-setup/camel-hula-listener.c 14 Nov 2005 19:34:06 -0000 1.2
+++ evolution/plugins/hula-account-setup/camel-hula-listener.c 22 Dec 2005 07:59:49 -0000
@@ -29,7 +29,7 @@
#include <camel/camel-i18n.h>
#include <libedataserverui/e-passwords.h>
#include <e-util/e-error.h>
-#include <e-util/e-account.h>
+#include <libedataserver/e-account.h>
#include "camel-hula-listener.h"
Index: evolution/plugins/hula-account-setup/camel-hula-listener.h
===================================================================
RCS file: /cvs/gnome/evolution/plugins/hula-account-setup/camel-hula-listener.h,v
retrieving revision 1.1
diff -u -p -r1.1 camel-hula-listener.h
--- evolution/plugins/hula-account-setup/camel-hula-listener.h 14 Nov 2005 17:33:39 -0000 1.1
+++ evolution/plugins/hula-account-setup/camel-hula-listener.h 22 Dec 2005 07:59:49 -0000
@@ -24,7 +24,7 @@
#ifndef CAMEL_HULA_LISTENER_H
#define CAMEL_HULA_LISTENER_H
-#include <e-util/e-account-list.h>
+#include <libedataserver/e-account-list.h>
#include<libedataserver/e-source.h>
#include<libedataserver/e-source-list.h>
#include <camel/camel-url.h>
Index: evolution/plugins/itip-formatter/itip-formatter.c
===================================================================
RCS file: /cvs/gnome/evolution/plugins/itip-formatter/itip-formatter.c,v
retrieving revision 1.55
diff -u -p -r1.55 itip-formatter.c
--- evolution/plugins/itip-formatter/itip-formatter.c 17 Dec 2005 18:46:17 -0000 1.55
+++ evolution/plugins/itip-formatter/itip-formatter.c 22 Dec 2005 07:59:49 -0000
@@ -46,7 +46,7 @@
#include <mail/em-config.h>
#include <mail/em-format-html.h>
#include <mail/em-utils.h>
-#include <e-util/e-account-list.h>
+#include <libedataserver/e-account-list.h>
#include <e-util/e-icon-factory.h>
#include <e-util/e-error.h>
#include <calendar/gui/calendar-config.h>
Index: evolution/plugins/itip-formatter/itip-view.c
===================================================================
RCS file: /cvs/gnome/evolution/plugins/itip-formatter/itip-view.c,v
retrieving revision 1.19
diff -u -p -r1.19 itip-view.c
--- evolution/plugins/itip-formatter/itip-view.c 24 Nov 2005 14:28:38 -0000 1.19
+++ evolution/plugins/itip-formatter/itip-view.c 22 Dec 2005 07:59:49 -0000
@@ -40,7 +40,7 @@
#include <gtkhtml/gtkhtml-embedded.h>
#include <mail/em-format-hook.h>
#include <mail/em-format-html.h>
-#include <e-util/e-account-list.h>
+#include <libedataserver/e-account-list.h>
#include <e-util/e-icon-factory.h>
#include <e-util/e-gtk-utils.h>
#include <e-util/e-util.h>
Index: evolution/plugins/mail-account-disable/mail-account-disable.c
===================================================================
RCS file: /cvs/gnome/evolution/plugins/mail-account-disable/mail-account-disable.c,v
retrieving revision 1.2
diff -u -p -r1.2 mail-account-disable.c
--- evolution/plugins/mail-account-disable/mail-account-disable.c 24 Aug 2005 03:14:49 -0000 1.2
+++ evolution/plugins/mail-account-disable/mail-account-disable.c 22 Dec 2005 07:59:49 -0000
@@ -33,8 +33,8 @@
#include <mail/em-popup.h>
#include <mail/em-account-editor.h>
#include <mail/mail-config.h>
-#include <e-util/e-account.h>
-#include <e-util/e-account-list.h>
+#include <libedataserver/e-account.h>
+#include <libedataserver/e-account-list.h>
#define ACCOUNT_DISABLE 0
#define PROXY_LOGOUT 1
Index: evolution/plugins/mail-remote/evolution-mail-session.c
===================================================================
RCS file: /cvs/gnome/evolution/plugins/mail-remote/evolution-mail-session.c,v
retrieving revision 1.7
diff -u -p -r1.7 evolution-mail-session.c
--- evolution/plugins/mail-remote/evolution-mail-session.c 15 Aug 2005 04:40:55 -0000 1.7
+++ evolution/plugins/mail-remote/evolution-mail-session.c 22 Dec 2005 07:59:49 -0000
@@ -31,7 +31,7 @@
#include <bonobo/bonobo-exception.h>
#include "evolution-mail-session.h"
-#include <e-util/e-account-list.h>
+#include <libedataserver/e-account-list.h>
#include "evolution-mail-store.h"
#include "e-corba-utils.h"
Index: evolution/plugins/mail-remote/evolution-mail-store.c
===================================================================
RCS file: /cvs/gnome/evolution/plugins/mail-remote/evolution-mail-store.c,v
retrieving revision 1.8
diff -u -p -r1.8 evolution-mail-store.c
--- evolution/plugins/mail-remote/evolution-mail-store.c 15 Aug 2005 04:40:55 -0000 1.8
+++ evolution/plugins/mail-remote/evolution-mail-store.c 22 Dec 2005 07:59:49 -0000
@@ -44,7 +44,7 @@
#include <camel/camel-mime-message.h>
#include <camel/camel-folder.h>
-#include <e-util/e-account.h>
+#include <libedataserver/e-account.h>
#include "mail/mail-component.h"
#include "mail/mail-send-recv.h"
Index: evolution-exchange/storage/exchange-autoconfig-wizard.c
===================================================================
RCS file: /cvs/gnome/evolution-exchange/storage/exchange-autoconfig-wizard.c,v
retrieving revision 1.6
diff -u -p -r1.6 exchange-autoconfig-wizard.c
--- evolution-exchange/storage/exchange-autoconfig-wizard.c 14 Jun 2005 13:12:43 -0000 1.6
+++ evolution-exchange/storage/exchange-autoconfig-wizard.c 16 Dec 2005 09:16:06 -0000
@@ -29,8 +29,8 @@
#include <e2k-utils.h>
#include "exchange-autoconfig-wizard.h"
-#include <e-util/e-account.h>
-#include <e-util/e-account-list.h>
+#include <libedataserver/e-account.h>
+#include <libedataserver/e-account-list.h>
#include <e-util/e-dialog-utils.h>
#include <libedataserverui/e-passwords.h>
Index: evolution-exchange/storage/exchange-config-listener.h
===================================================================
RCS file: /cvs/gnome/evolution-exchange/storage/exchange-config-listener.h,v
retrieving revision 1.8
diff -u -p -r1.8 exchange-config-listener.h
--- evolution-exchange/storage/exchange-config-listener.h 22 Aug 2005 14:22:02 -0000 1.8
+++ evolution-exchange/storage/exchange-config-listener.h 16 Dec 2005 09:16:06 -0000
@@ -6,7 +6,7 @@
#include <exchange-types.h>
#include <exchange-constants.h>
-#include <e-util/e-account-list.h>
+#include <libedataserver/e-account-list.h>
#include <libedataserver/e-source-list.h>
#include <libedataserver/e-source-group.h>
Index: evolution-exchange/storage/exchange-delegates-control.h
===================================================================
RCS file: /cvs/gnome/evolution-exchange/storage/exchange-delegates-control.h,v
retrieving revision 1.1.1.1
diff -u -p -r1.1.1.1 exchange-delegates-control.h
--- evolution-exchange/storage/exchange-delegates-control.h 11 May 2004 15:09:04 -0000 1.1.1.1
+++ evolution-exchange/storage/exchange-delegates-control.h 16 Dec 2005 09:16:06 -0000
@@ -11,7 +11,7 @@
#include <shell/evolution-config-control.h>
#include <bonobo/bonobo-object.h>
-#include <e-util/e-account.h>
+#include <libedataserver/e-account.h>
#include <glade/glade-xml.h>
#include <gtk/gtkliststore.h>
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]