aboutsummaryrefslogtreecommitdiffstats
path: root/addressbook/backend/ebook/e-book-query.h
diff options
context:
space:
mode:
authorEttore Perazzoli <ettore@src.gnome.org>2003-10-22 02:49:34 +0800
committerEttore Perazzoli <ettore@src.gnome.org>2003-10-22 02:49:34 +0800
commit653cfffc0e00dfb59b36813c1b45c53d3f773c65 (patch)
tree9b486d5e383ec1391d60973d9cc548be0ef6d9d5 /addressbook/backend/ebook/e-book-query.h
parent0fb08f3ff81575a4749d851404233f34252dd2f2 (diff)
downloadgsoc2013-evolution-653cfffc0e00dfb59b36813c1b45c53d3f773c65.tar
gsoc2013-evolution-653cfffc0e00dfb59b36813c1b45c53d3f773c65.tar.gz
gsoc2013-evolution-653cfffc0e00dfb59b36813c1b45c53d3f773c65.tar.bz2
gsoc2013-evolution-653cfffc0e00dfb59b36813c1b45c53d3f773c65.tar.lz
gsoc2013-evolution-653cfffc0e00dfb59b36813c1b45c53d3f773c65.tar.xz
gsoc2013-evolution-653cfffc0e00dfb59b36813c1b45c53d3f773c65.tar.zst
gsoc2013-evolution-653cfffc0e00dfb59b36813c1b45c53d3f773c65.zip
Merge new-ui-branch to the trunk.
svn path=/trunk/; revision=22965
Diffstat (limited to 'addressbook/backend/ebook/e-book-query.h')
-rw-r--r--addressbook/backend/ebook/e-book-query.h49
1 files changed, 49 insertions, 0 deletions
diff --git a/addressbook/backend/ebook/e-book-query.h b/addressbook/backend/ebook/e-book-query.h
new file mode 100644
index 0000000000..e36887f6f2
--- /dev/null
+++ b/addressbook/backend/ebook/e-book-query.h
@@ -0,0 +1,49 @@
+
+#ifndef __E_BOOK_QUERY_H__
+#define __E_BOOK_QUERY_H__
+
+#include <ebook/e-contact.h>
+
+G_BEGIN_DECLS
+
+typedef struct EBookQuery EBookQuery;
+
+typedef enum {
+ E_BOOK_QUERY_IS,
+ E_BOOK_QUERY_CONTAINS,
+ E_BOOK_QUERY_BEGINS_WITH,
+ E_BOOK_QUERY_ENDS_WITH,
+
+#if notyet
+ E_BOOK_QUERY_LT,
+ E_BOOK_QUERY_LE,
+ E_BOOK_QUERY_GT,
+ E_BOOK_QUERY_GE,
+ E_BOOK_QUERY_EQ,
+#endif
+} EBookQueryTest;
+
+EBookQuery* e_book_query_from_string (const char *sexp);
+char* e_book_query_to_string (EBookQuery *q);
+
+void e_book_query_ref (EBookQuery *q);
+void e_book_query_unref (EBookQuery *q);
+
+EBookQuery* e_book_query_and (int nqs, EBookQuery **qs, gboolean unref);
+EBookQuery* e_book_query_andv (EBookQuery *q, ...);
+EBookQuery* e_book_query_or (int nqs, EBookQuery **qs, gboolean unref);
+EBookQuery* e_book_query_orv (EBookQuery *q, ...);
+
+EBookQuery* e_book_query_not (EBookQuery *qs, gboolean unref);
+
+EBookQuery* e_book_query_field_exists (EContactField field);
+EBookQuery* e_book_query_field_test (EContactField field,
+ EBookQueryTest test,
+ const char *value);
+
+/* a special any field contains query */
+EBookQuery* e_book_query_any_field_contains (const char *value);
+
+G_END_DECLS
+
+#endif /* __E_BOOK_QUERY_H__ */