akonadi
agenttypemodel.h
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef AKONADI_AGENTTYPEMODEL_H
00021 #define AKONADI_AGENTTYPEMODEL_H
00022
00023 #include "akonadi_export.h"
00024
00025 #include <QtCore/QAbstractItemModel>
00026
00027 namespace Akonadi {
00028
00050 class AKONADI_EXPORT AgentTypeModel : public QAbstractItemModel
00051 {
00052 Q_OBJECT
00053
00054 public:
00058 enum Roles
00059 {
00060 TypeRole = Qt::UserRole + 1,
00061 IdentifierRole,
00062 DescriptionRole,
00063 MimeTypesRole,
00064 CapabilitiesRole,
00065 UserRole = Qt::UserRole + 42
00066 };
00067
00071 explicit AgentTypeModel( QObject *parent = 0 );
00072
00076 virtual ~AgentTypeModel();
00077
00078 virtual int columnCount( const QModelIndex &parent = QModelIndex() ) const;
00079 virtual int rowCount( const QModelIndex &parent = QModelIndex() ) const;
00080 virtual QVariant data( const QModelIndex &index, int role = Qt::DisplayRole ) const;
00081 virtual QModelIndex index( int row, int column, const QModelIndex &parent = QModelIndex() ) const;
00082 virtual QModelIndex parent( const QModelIndex &index ) const;
00083
00084 private:
00085
00086 class Private;
00087 Private* const d;
00088
00089 Q_PRIVATE_SLOT( d, void typeAdded( const Akonadi::AgentType& ) )
00090 Q_PRIVATE_SLOT( d, void typeRemoved( const Akonadi::AgentType& ) )
00091
00092 };
00093
00094 }
00095
00096 #endif