akonadi
kdescendantsproxymodel_p.h
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef KDESCENDANTSPROXYMODEL_P_H
00022 #define KDESCENDANTSPROXYMODEL_P_H
00023
00024 #include <QtGui/QAbstractProxyModel>
00025
00026 class KDescendantsProxyModelPrivate;
00027
00067 class KDescendantsProxyModel : public QAbstractProxyModel
00068 {
00069 Q_OBJECT
00070
00071 public:
00072
00078 explicit KDescendantsProxyModel( QObject *parent = 0 );
00079
00083 virtual ~KDescendantsProxyModel();
00084
00088 virtual void setSourceModel( QAbstractItemModel *model );
00089
00098 void setRootIndex( const QModelIndex &index);
00099
00137 void setDisplayAncestorData( bool display );
00138
00142 bool displayAncestorData() const;
00143
00147 void setAncestorSeparator( const QString &separator );
00148
00152 QString ancestorSeparator() const;
00153
00157 int descendantCount( const QModelIndex &index ) const;
00158
00159 QModelIndex mapFromSource ( const QModelIndex & sourceIndex ) const;
00160 QModelIndex mapToSource ( const QModelIndex & proxyIndex ) const;
00161
00162 virtual Qt::ItemFlags flags( const QModelIndex &index ) const;
00163 QVariant data( const QModelIndex & index, int role = Qt::DisplayRole ) const;
00164 virtual int rowCount( const QModelIndex & parent = QModelIndex() ) const;
00165
00166 virtual QMimeData* mimeData( const QModelIndexList & indexes ) const;
00167 virtual QStringList mimeTypes() const;
00168
00169 virtual bool hasChildren ( const QModelIndex & parent = QModelIndex() ) const;
00170 virtual QModelIndex index(int, int, const QModelIndex &parent = QModelIndex() ) const;
00171 virtual QModelIndex parent(const QModelIndex&) const;
00172 virtual int columnCount(const QModelIndex& index = QModelIndex()) const;
00173
00174 virtual Qt::DropActions supportedDropActions() const;
00175
00179 virtual QModelIndexList match(const QModelIndex& start, int role, const QVariant& value,
00180 int hits = 1, Qt::MatchFlags flags = Qt::MatchFlags( Qt::MatchStartsWith | Qt::MatchWrap ) ) const;
00181
00182
00183 private:
00184 Q_DECLARE_PRIVATE( KDescendantsProxyModel )
00185
00186 KDescendantsProxyModelPrivate *d_ptr;
00187
00188 Q_PRIVATE_SLOT(d_func(), void sourceRowsAboutToBeInserted(const QModelIndex &, int, int))
00189 Q_PRIVATE_SLOT(d_func(), void sourceRowsInserted(const QModelIndex &, int, int))
00190 Q_PRIVATE_SLOT(d_func(), void sourceRowsAboutToBeRemoved(const QModelIndex &, int, int))
00191 Q_PRIVATE_SLOT(d_func(), void sourceRowsRemoved(const QModelIndex &, int, int))
00192 Q_PRIVATE_SLOT(d_func(), void sourceRowsAboutToBeMoved(const QModelIndex &, int, int, const QModelIndex &, int))
00193 Q_PRIVATE_SLOT(d_func(), void sourceRowsMoved(const QModelIndex &, int, int, const QModelIndex &, int))
00194 Q_PRIVATE_SLOT(d_func(), void sourceModelAboutToBeReset())
00195 Q_PRIVATE_SLOT(d_func(), void sourceModelReset())
00196 Q_PRIVATE_SLOT(d_func(), void sourceLayoutAboutToBeChanged())
00197 Q_PRIVATE_SLOT(d_func(), void sourceLayoutChanged())
00198 Q_PRIVATE_SLOT(d_func(), void sourceDataChanged(const QModelIndex &, const QModelIndex &))
00199
00200
00201
00202
00203
00204
00205
00206
00207
00208 };
00209
00210 #endif