aboutsummaryrefslogtreecommitdiffstats
path: root/camel/camel-folder.h
diff options
context:
space:
mode:
authorNotZed <NotZed@HelixCode.com>2000-03-24 03:57:31 +0800
committerMichael Zucci <zucchi@src.gnome.org>2000-03-24 03:57:31 +0800
commit6a766351410912acde101b6fa01488338efca5c8 (patch)
treec07e09a90d70b9438999f698c3d82682fbe7d857 /camel/camel-folder.h
parentd2e39f53aef475f9747aae84dcb22baf26c72b78 (diff)
downloadgsoc2013-evolution-6a766351410912acde101b6fa01488338efca5c8.tar
gsoc2013-evolution-6a766351410912acde101b6fa01488338efca5c8.tar.gz
gsoc2013-evolution-6a766351410912acde101b6fa01488338efca5c8.tar.bz2
gsoc2013-evolution-6a766351410912acde101b6fa01488338efca5c8.tar.lz
gsoc2013-evolution-6a766351410912acde101b6fa01488338efca5c8.tar.xz
gsoc2013-evolution-6a766351410912acde101b6fa01488338efca5c8.tar.zst
gsoc2013-evolution-6a766351410912acde101b6fa01488338efca5c8.zip
Added async search api.
2000-03-22 NotZed <NotZed@HelixCode.com> * camel-folder.[ch]: Added async search api. * providers/mbox/camel-mbox-search.c (camel_mbox_folder_search_by_expression): Changed to use an asynchronous interface. (camel_mbox_folder_search_cancel): Cancel function for async interface. svn path=/trunk/; revision=2155
Diffstat (limited to 'camel/camel-folder.h')
-rw-r--r--camel/camel-folder.h14
1 files changed, 9 insertions, 5 deletions
diff --git a/camel/camel-folder.h b/camel/camel-folder.h
index 67de66a83e..68a6c8f214 100644
--- a/camel/camel-folder.h
+++ b/camel/camel-folder.h
@@ -56,7 +56,7 @@ typedef enum {
typedef void (*CamelFolderAsyncCallback) ();
-
+typedef void (CamelSearchFunc)(CamelFolder *folder, int id, gboolean complete, GList *matches, void *data);
struct _CamelFolder
{
@@ -195,7 +195,10 @@ typedef struct {
gboolean (*has_search_capability) (CamelFolder *folder);
- GList *(*search_by_expression) (CamelFolder *folder, const char *expression, CamelException *ex);
+ int (*search_by_expression) (CamelFolder *folder, const char *expression,
+ CamelSearchFunc *func, void *data, CamelException *ex);
+ gboolean (*search_complete)(CamelFolder *folder, int searchid, gboolean wait, CamelException *ex);
+ void (*search_cancel) (CamelFolder *folder, int searchid, CamelException *ex);
} CamelFolderClass;
@@ -301,9 +304,10 @@ GList * camel_folder_get_uid_list (CamelFolder *folder,
/* search api */
gboolean camel_folder_has_search_capability (CamelFolder *folder);
-GList * camel_folder_search_by_expression (CamelFolder *folder,
- const char *expression,
- CamelException *ex);
+int camel_folder_search_by_expression(CamelFolder *folder, const char *expression,
+ CamelSearchFunc *func, void *data, CamelException *ex);
+gboolean camel_folder_search_complete(CamelFolder *folder, int searchid, gboolean wait, CamelException *ex);
+void camel_folder_search_cancel(CamelFolder *folder, int searchid, CamelException *ex);
#ifdef __cplusplus
}