diff options
Diffstat (limited to 'camel/camel-folder-search.h')
-rw-r--r-- | camel/camel-folder-search.h | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/camel/camel-folder-search.h b/camel/camel-folder-search.h index e4d2253224..a5239f2a0e 100644 --- a/camel/camel-folder-search.h +++ b/camel/camel-folder-search.h @@ -50,6 +50,7 @@ struct _CamelFolderSearch { /* these are only valid during the search, and are reset afterwards */ CamelFolder *folder; /* folder for current search */ GPtrArray *summary; /* summary array for current search */ + GPtrArray *summary_set; /* subset of summary to actually include in search */ GHashTable *summary_hash; /* hashtable of summary items */ CamelMessageInfo *current; /* current message info, when searching one by one */ CamelMimeMessage *current_message; /* cache of current message, if required */ @@ -71,6 +72,9 @@ struct _CamelFolderSearchClass { /* (match-all [boolean expression]) Apply match to all messages */ ESExpResult * (*match_all)(struct _ESExp *f, int argc, struct _ESExpTerm **argv, CamelFolderSearch *s); + /* (match-threads "type" [array expression]) add all related threads */ + ESExpResult * (*match_threads)(struct _ESExp *f, int argc, struct _ESExpTerm **argv, CamelFolderSearch *s); + /* (body-contains "string1" "string2" ...) Returns a list of matches, or true if in single-message mode */ ESExpResult * (*body_contains)(struct _ESExp *f, int argc, struct _ESExpResult **argv, CamelFolderSearch *s); @@ -118,12 +122,14 @@ CamelType camel_folder_search_get_type (void); CamelFolderSearch *camel_folder_search_new (void); void camel_folder_search_construct (CamelFolderSearch *search); +/* This stuff currently gets cleared when you run a search ... what on earth was i thinking ... */ void camel_folder_search_set_folder(CamelFolderSearch *search, CamelFolder *folder); void camel_folder_search_set_summary(CamelFolderSearch *search, GPtrArray *summary); void camel_folder_search_set_body_index(CamelFolderSearch *search, CamelIndex *index); +/* this interface is deprecated */ GPtrArray *camel_folder_search_execute_expression(CamelFolderSearch *search, const char *expr, CamelException *ex); -gboolean camel_folder_search_match_expression(CamelFolderSearch *search, const char *expr, - const CamelMessageInfo *info, CamelException *ex); + +GPtrArray *camel_folder_search_search(CamelFolderSearch *search, const char *expr, GPtrArray *uids, CamelException *ex); void camel_folder_search_free_result(CamelFolderSearch *search, GPtrArray *); #ifdef __cplusplus |