aboutsummaryrefslogtreecommitdiffstats
path: root/camel/camel-folder-summary.h
diff options
context:
space:
mode:
authorNot Zed <NotZed@HelixCode.com>2000-08-11 00:35:28 +0800
committerMichael Zucci <zucchi@src.gnome.org>2000-08-11 00:35:28 +0800
commit690509bf826bc02af09cbec064f1f34c48dd9b0c (patch)
tree41580cd68f0f3e0dc297f11e34e237c37b2dc09e /camel/camel-folder-summary.h
parent544eb3c3493bfa25d6a3a82d1c18805174c37eb9 (diff)
downloadgsoc2013-evolution-690509bf826bc02af09cbec064f1f34c48dd9b0c.tar.gz
gsoc2013-evolution-690509bf826bc02af09cbec064f1f34c48dd9b0c.tar.zst
gsoc2013-evolution-690509bf826bc02af09cbec064f1f34c48dd9b0c.zip
A better way to compress leading whitespace. The code is probably invalid
2000-08-11 Not Zed <NotZed@HelixCode.com> * camel-mime-parser.c (folder_scan_header): A better way to compress leading whitespace. The code is probably invalid anyway, I dont think it will work across buffer boundaries. * providers/mbox/camel-mbox-folder.c (mbox_append_message): And write out proper format From lines here too. * providers/mbox/camel-mbox-summary.c (camel_mbox_summary_build_from): New function to build a more compatible mbox "From " line. (camel_mbox_summary_sync): Write From lines in the proper format. 2000-08-10 Not Zed <NotZed@HelixCode.com> * providers/mh/camel-mh-store.c (get_folder): Remove warnin g. * providers/mbox/camel-mbox-store.c (xrename): Kill some warnings with constification. * providers/imap/camel-imap-folder.c (imap_append_message): Fixed for append api change. Eek this routine seriously wastes memory. * providers/mh/camel-mh-folder.c (mh_search_free): Impelemnt. (mh_append_message): Fix for api change, and include user flags and tags in new message. * providers/vee/camel-vee-folder.c (vee_search_by_expression): Fix for search api change. * camel-folder.c (camel_folder_search_free): New function for freeing search results. (search_free): Changed my mind, implement a default that actually does something. Free as to the old interface. (camel_folder_append_message): Changed to accept a camelmessageinfo rather than flags, which just doesn't have enough info in it. (copy_message_to): Change for append_message api change. (move_message_to): Likewise. * providers/mbox/camel-mbox-folder.c (mbox_search_free): Implement. (mbox_append_message): Fix for api change, and also copy user flags/tags across to new summary. * camel-folder-search.c (search_user_tag): A search expression that returns the current use flag by name. (camel_folder_search_free_result): New function to free the result of a search. * camel-folder-summary.c: Bump summary version. (message_info_new): (message_info_load): (message_info_save): (camel_message_info_dup_to): (camel_message_info_free): Added support for arbitrary tag/value pairs (CamelTag's). (camel_tag_get): (camel_tag_set): (camel_tag_list_size): (camel_tag_list_free): Operations for working with CamelTags. svn path=/trunk/; revision=4683
Diffstat (limited to 'camel/camel-folder-summary.h')
-rw-r--r--camel/camel-folder-summary.h15
1 files changed, 14 insertions, 1 deletions
diff --git a/camel/camel-folder-summary.h b/camel/camel-folder-summary.h
index c173a6080b..93438fcd7a 100644
--- a/camel/camel-folder-summary.h
+++ b/camel/camel-folder-summary.h
@@ -79,9 +79,15 @@ enum _CamelMessageFlags {
typedef struct _CamelFlag {
struct _CamelFlag *next;
- char name[1];
+ char name[1]; /* name allocated as part of the structure */
} CamelFlag;
+typedef struct _CamelTag {
+ struct _CamelTag *next;
+ char *value;
+ char name[1]; /* name allocated as part of the structure */
+} CamelTag;
+
/* information about a given object */
typedef struct {
/* public fields */
@@ -102,6 +108,7 @@ typedef struct {
struct _header_references *references; /* from parent to root */
struct _CamelFlag *user_flags;
+ struct _CamelTag *user_tags;
/* tree of content description - NULL if it is not available */
CamelMessageContentInfo *content;
@@ -218,6 +225,12 @@ void camel_flag_set(CamelFlag **list, const char *name, gboolean state);
int camel_flag_list_size(CamelFlag **list);
void camel_flag_list_free(CamelFlag **list);
+/* message tag operations */
+const char *camel_tag_get(CamelTag **list, const char *name);
+void camel_tag_set(CamelTag **list, const char *name, const char *value);
+int camel_tag_list_size(CamelTag **list);
+void camel_tag_list_free(CamelTag **list);
+
/* message info utils */
void camel_message_info_dup_to(const CamelMessageInfo *from, CamelMessageInfo *to);
void camel_message_info_free(CamelMessageInfo *mi);