00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef AKONADI_ENTITYRIGHTSFILTERMODEL_H
00021 #define AKONADI_ENTITYRIGHTSFILTERMODEL_H
00022
00023 #include "entitytreemodel.h"
00024
00025 #include "krecursivefilterproxymodel.h"
00026
00027 namespace Akonadi {
00028
00029 class EntityRightsFilterModelPrivate;
00030
00058 class EntityRightsFilterModel : public KRecursiveFilterProxyModel
00059 {
00060 Q_OBJECT
00061
00062 public:
00068 explicit EntityRightsFilterModel( QObject *parent = 0 );
00069
00073 virtual ~EntityRightsFilterModel();
00074
00080 void setAccessRights( Collection::Rights rights );
00081
00085 Collection::Rights accessRights() const;
00086
00090 virtual Qt::ItemFlags flags( const QModelIndex &index ) const;
00091
00095 virtual QModelIndexList match( const QModelIndex& start, int role, const QVariant& value, int hits = 1,
00096 Qt::MatchFlags flags = Qt::MatchFlags( Qt::MatchStartsWith | Qt::MatchWrap ) ) const;
00097
00098 protected:
00099 virtual bool acceptRow( int sourceRow, const QModelIndex &sourceParent ) const;
00100
00101 private:
00102
00103 Q_DECLARE_PRIVATE( EntityRightsFilterModel )
00104 EntityRightsFilterModelPrivate * const d_ptr;
00105
00106 };
00107
00108 }
00109
00110 #endif