00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef AKONADI_CONTACTGROUPSEARCHJOB_H
00023 #define AKONADI_CONTACTGROUPSEARCHJOB_H
00024
00025 #include "akonadi-contact_export.h"
00026
00027 #include <akonadi/item.h>
00028 #include <akonadi/itemsearchjob.h>
00029 #include <kabc/contactgroup.h>
00030
00031 namespace Akonadi {
00032
00059 class AKONADI_CONTACT_EXPORT ContactGroupSearchJob : public ItemSearchJob
00060 {
00061 Q_OBJECT
00062
00063 public:
00069 explicit ContactGroupSearchJob( QObject *parent = 0 );
00070
00074 ~ContactGroupSearchJob();
00075
00079 enum Criterion
00080 {
00081 Name
00082 };
00083
00089 enum Match
00090 {
00091 ExactMatch,
00092 StartsWithMatch,
00093 ContainsMatch
00094 };
00095
00099 void setQuery( Criterion criterion, const QString &value );
00100
00106 void setQuery( Criterion criterion, const QString &value, Match match );
00107
00119 void setLimit( int limit );
00120
00124 KABC::ContactGroup::List contactGroups() const;
00125
00126 private:
00127
00128 class Private;
00129 Private* const d;
00130
00131 };
00132
00133 }
00134
00135 #endif