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 #include "akonadi_export.h"
00028
00029 namespace Akonadi {
00030
00031 class EntityRightsFilterModelPrivate;
00032
00060 class AKONADI_EXPORT EntityRightsFilterModel : public KRecursiveFilterProxyModel
00061 {
00062 Q_OBJECT
00063
00064 public:
00070 explicit EntityRightsFilterModel( QObject *parent = 0 );
00071
00075 virtual ~EntityRightsFilterModel();
00076
00082 void setAccessRights( Collection::Rights rights );
00083
00087 Collection::Rights accessRights() const;
00088
00092 virtual Qt::ItemFlags flags( const QModelIndex &index ) const;
00093
00097 virtual QModelIndexList match( const QModelIndex& start, int role, const QVariant& value, int hits = 1,
00098 Qt::MatchFlags flags = Qt::MatchFlags( Qt::MatchStartsWith | Qt::MatchWrap ) ) const;
00099
00100 protected:
00101 virtual bool acceptRow( int sourceRow, const QModelIndex &sourceParent ) const;
00102
00103 private:
00104
00105 Q_DECLARE_PRIVATE( EntityRightsFilterModel )
00106 EntityRightsFilterModelPrivate * const d_ptr;
00107
00108 };
00109
00110 }
00111
00112 #endif