KDEUI
kidentityproxymodel.h
Go to the documentation of this file.
00001 /* 00002 Copyright (C) 2010 Klarälvdalens Datakonsult AB, 00003 a KDAB Group company, info@kdab.net, 00004 author Stephen Kelly <stephen@kdab.com> 00005 00006 This library is free software; you can redistribute it and/or modify it 00007 under the terms of the GNU Library General Public License as published by 00008 the Free Software Foundation; either version 2 of the License, or (at your 00009 option) any later version. 00010 00011 This library is distributed in the hope that it will be useful, but WITHOUT 00012 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 00013 FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public 00014 License for more details. 00015 00016 You should have received a copy of the GNU Library General Public License 00017 along with this library; see the file COPYING.LIB. If not, write to the 00018 Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 00019 02110-1301, USA. 00020 */ 00021 00022 #ifndef KIDENTITYPROXYMODEL_H 00023 #define KIDENTITYPROXYMODEL_H 00024 00025 #include <QtGui/QAbstractProxyModel> 00026 00027 #include "kdeui_export.h" 00028 00029 class KIdentityProxyModelPrivate; 00030 00031 class KDEUI_EXPORT KIdentityProxyModel : public QAbstractProxyModel 00032 { 00033 Q_OBJECT 00034 public: 00035 explicit KIdentityProxyModel(QObject* parent = 0); 00036 virtual ~KIdentityProxyModel(); 00037 00038 int columnCount(const QModelIndex& parent = QModelIndex()) const; 00039 QModelIndex index(int row, int column, const QModelIndex& parent = QModelIndex()) const; 00040 QModelIndex mapFromSource(const QModelIndex& sourceIndex) const; 00041 QModelIndex mapToSource(const QModelIndex& proxyIndex) const; 00042 QModelIndex parent(const QModelIndex& child) const; 00043 int rowCount(const QModelIndex& parent = QModelIndex()) const; 00044 bool dropMimeData(const QMimeData* data, Qt::DropAction action, int row, int column, const QModelIndex& parent); 00045 00046 QItemSelection mapSelectionFromSource(const QItemSelection& selection) const; 00047 QItemSelection mapSelectionToSource(const QItemSelection& selection) const; 00048 QModelIndexList match(const QModelIndex& start, int role, const QVariant& value, int hits = 1, Qt::MatchFlags flags = Qt::MatchFlags(Qt::MatchStartsWith|Qt::MatchWrap)) const; 00049 void setSourceModel(QAbstractItemModel* sourceModel); 00050 00051 bool insertColumns(int column, int count, const QModelIndex& parent = QModelIndex()); 00052 bool insertRows(int row, int count, const QModelIndex& parent = QModelIndex()); 00053 bool removeColumns(int column, int count, const QModelIndex& parent = QModelIndex()); 00054 bool removeRows(int row, int count, const QModelIndex& parent = QModelIndex()); 00055 00056 virtual bool canFetchMore(const QModelIndex& parent) const; 00057 virtual void fetchMore(const QModelIndex& parent); 00058 virtual QStringList mimeTypes() const; 00059 virtual QMimeData* mimeData(const QModelIndexList& indexes) const; 00060 virtual Qt::DropActions supportedDropActions() const; 00061 00062 protected: 00063 KIdentityProxyModel(KIdentityProxyModelPrivate *privateClass, QObject* parent); 00064 KIdentityProxyModelPrivate * const d_ptr; 00065 00066 protected Q_SLOTS: 00067 virtual void resetInternalData(); 00068 00069 private: 00070 Q_DECLARE_PRIVATE(KIdentityProxyModel) 00071 Q_DISABLE_COPY(KIdentityProxyModel) 00072 00073 Q_PRIVATE_SLOT(d_func(), void _k_sourceRowsAboutToBeInserted(QModelIndex,int,int)) 00074 Q_PRIVATE_SLOT(d_func(), void _k_sourceRowsInserted(QModelIndex,int,int)) 00075 Q_PRIVATE_SLOT(d_func(), void _k_sourceRowsAboutToBeRemoved(QModelIndex,int,int)) 00076 Q_PRIVATE_SLOT(d_func(), void _k_sourceRowsRemoved(QModelIndex,int,int)) 00077 Q_PRIVATE_SLOT(d_func(), void _k_sourceRowsAboutToBeMoved(QModelIndex,int,int,QModelIndex,int)) 00078 Q_PRIVATE_SLOT(d_func(), void _k_sourceRowsMoved(QModelIndex,int,int,QModelIndex,int)) 00079 00080 Q_PRIVATE_SLOT(d_func(), void _k_sourceColumnsAboutToBeInserted(QModelIndex,int,int)) 00081 Q_PRIVATE_SLOT(d_func(), void _k_sourceColumnsInserted(QModelIndex,int,int)) 00082 Q_PRIVATE_SLOT(d_func(), void _k_sourceColumnsAboutToBeRemoved(QModelIndex,int,int)) 00083 Q_PRIVATE_SLOT(d_func(), void _k_sourceColumnsRemoved(QModelIndex,int,int)) 00084 Q_PRIVATE_SLOT(d_func(), void _k_sourceColumnsAboutToBeMoved(QModelIndex,int,int,QModelIndex,int)) 00085 Q_PRIVATE_SLOT(d_func(), void _k_sourceColumnsMoved(QModelIndex,int,int,QModelIndex,int)) 00086 00087 Q_PRIVATE_SLOT(d_func(), void _k_sourceDataChanged(QModelIndex,QModelIndex)) 00088 Q_PRIVATE_SLOT(d_func(), void _k_sourceHeaderDataChanged(Qt::Orientation orientation, int first, int last)) 00089 00090 Q_PRIVATE_SLOT(d_func(), void _k_sourceLayoutAboutToBeChanged()) 00091 Q_PRIVATE_SLOT(d_func(), void _k_sourceLayoutChanged()) 00092 Q_PRIVATE_SLOT(d_func(), void _k_sourceChildrenLayoutsAboutToBeChanged(const QModelIndex &parent1, const QModelIndex &parent2)) 00093 Q_PRIVATE_SLOT(d_func(), void _k_sourceChildrenLayoutsChanged(const QModelIndex &parent1, const QModelIndex &parent2)) 00094 Q_PRIVATE_SLOT(d_func(), void _k_sourceModelAboutToBeReset()) 00095 Q_PRIVATE_SLOT(d_func(), void _k_sourceModelReset()) 00096 Q_PRIVATE_SLOT(d_func(), void _k_sourceModelDestroyed()) 00097 }; 00098 00099 #endif // KIDENTITYPROXYMODEL_H
KDE 4.7 API Reference