--- a/hgwidgets_plat/hgcacheproxymodel_api/inc/hgcacheproxymodel.h Mon May 03 13:32:54 2010 +0300
+++ b/hgwidgets_plat/hgcacheproxymodel_api/inc/hgcacheproxymodel.h Fri May 14 16:57:01 2010 +0300
@@ -13,7 +13,7 @@
*
* Description:
*
-* Version : %version: 2 %
+* Version : %version: 5 %
*/
#ifndef HGCACHEPROXYMODEL_H_
@@ -47,69 +47,69 @@
virtual void request(int start, int end, HgRequestOrder order = HgRequestOrderAscending) = 0;
};
-class HgCacheProxyModel : public QAbstractItemModel, public HgBufferManagerObserver, public HgDataProviderModelObserver
+class CACHEPROXYMODEL_EXPORT HgCacheProxyModel : public QAbstractItemModel, public HgBufferManagerObserver, public HgDataProviderModelObserver
{
Q_OBJECT
public:
- CACHEPROXYMODEL_EXPORT HgCacheProxyModel(QObject *parent = 0);
- CACHEPROXYMODEL_EXPORT ~HgCacheProxyModel();
+ HgCacheProxyModel(QObject *parent = 0);
+ ~HgCacheProxyModel();
- CACHEPROXYMODEL_EXPORT void setDataProvider(HgDataProviderModel *dataProvider, int cacheSize = KDefaultCacheSize, int cacheTreshold = KDefaultCacheTreshold);
- CACHEPROXYMODEL_EXPORT HgDataProviderModel* DataProvider();
- CACHEPROXYMODEL_EXPORT void resizeCache(int newSize, int newTreshold);
+ void setDataProvider(HgDataProviderModel *dataProvider, int cacheSize = KDefaultCacheSize, int cacheTreshold = KDefaultCacheTreshold);
+ HgDataProviderModel* DataProvider();
+ void resizeCache(int newSize, int newTreshold);
//from QAbstractItemModel
- CACHEPROXYMODEL_EXPORT virtual QModelIndex index(int row, int column, const QModelIndex &parent = QModelIndex()) const;
- CACHEPROXYMODEL_EXPORT virtual QModelIndex parent(const QModelIndex &child) const;
- CACHEPROXYMODEL_EXPORT virtual int rowCount(const QModelIndex &parent = QModelIndex()) const;
- CACHEPROXYMODEL_EXPORT virtual int columnCount(const QModelIndex &parent = QModelIndex()) const;
- CACHEPROXYMODEL_EXPORT virtual bool hasChildren(const QModelIndex &parent = QModelIndex()) const;
- CACHEPROXYMODEL_EXPORT virtual QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const;
- CACHEPROXYMODEL_EXPORT virtual bool setData(const QModelIndex &index, const QVariant &value, int role = Qt::EditRole);
- CACHEPROXYMODEL_EXPORT virtual QVariant headerData(int section, Qt::Orientation orientation, int role = Qt::DisplayRole) const;
- CACHEPROXYMODEL_EXPORT virtual bool setHeaderData(int section, Qt::Orientation orientation, const QVariant &value, int role = Qt::EditRole);
- CACHEPROXYMODEL_EXPORT virtual QMap<int, QVariant> itemData(const QModelIndex &index) const;
- CACHEPROXYMODEL_EXPORT virtual bool setItemData(const QModelIndex &index, const QMap<int, QVariant> &roles);
- CACHEPROXYMODEL_EXPORT virtual QStringList mimeTypes() const;
- CACHEPROXYMODEL_EXPORT virtual QMimeData *mimeData(const QModelIndexList &indexes) const;
- CACHEPROXYMODEL_EXPORT virtual bool dropMimeData(const QMimeData *data, Qt::DropAction action, int row, int column, const QModelIndex &parent);
- CACHEPROXYMODEL_EXPORT virtual Qt::DropActions supportedDropActions() const;
- CACHEPROXYMODEL_EXPORT virtual bool insertRows(int row, int count, const QModelIndex &parent = QModelIndex());
- CACHEPROXYMODEL_EXPORT virtual bool insertColumns(int column, int count, const QModelIndex &parent = QModelIndex());
- CACHEPROXYMODEL_EXPORT virtual bool removeRows(int row, int count, const QModelIndex &parent = QModelIndex());
- CACHEPROXYMODEL_EXPORT virtual bool removeColumns(int column, int count, const QModelIndex &parent = QModelIndex());
- CACHEPROXYMODEL_EXPORT virtual void fetchMore(const QModelIndex &parent);
- CACHEPROXYMODEL_EXPORT virtual bool canFetchMore(const QModelIndex &parent) const;
- CACHEPROXYMODEL_EXPORT virtual Qt::ItemFlags flags(const QModelIndex &index) const;
- CACHEPROXYMODEL_EXPORT virtual void sort(int column, Qt::SortOrder order = Qt::AscendingOrder);
- CACHEPROXYMODEL_EXPORT virtual QModelIndex buddy(const QModelIndex &index) const;
- CACHEPROXYMODEL_EXPORT virtual QModelIndexList match(const QModelIndex &start, int role,
+ virtual QModelIndex index(int row, int column, const QModelIndex &parent = QModelIndex()) const;
+ virtual QModelIndex parent(const QModelIndex &child) const;
+ virtual int rowCount(const QModelIndex &parent = QModelIndex()) const;
+ virtual int columnCount(const QModelIndex &parent = QModelIndex()) const;
+ virtual bool hasChildren(const QModelIndex &parent = QModelIndex()) const;
+ virtual QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const;
+ virtual bool setData(const QModelIndex &index, const QVariant &value, int role = Qt::EditRole);
+ virtual QVariant headerData(int section, Qt::Orientation orientation, int role = Qt::DisplayRole) const;
+ virtual bool setHeaderData(int section, Qt::Orientation orientation, const QVariant &value, int role = Qt::EditRole);
+ virtual QMap<int, QVariant> itemData(const QModelIndex &index) const;
+ virtual bool setItemData(const QModelIndex &index, const QMap<int, QVariant> &roles);
+ virtual QStringList mimeTypes() const;
+ virtual QMimeData *mimeData(const QModelIndexList &indexes) const;
+ virtual bool dropMimeData(const QMimeData *data, Qt::DropAction action, int row, int column, const QModelIndex &parent);
+ virtual Qt::DropActions supportedDropActions() const;
+ virtual bool insertRows(int row, int count, const QModelIndex &parent = QModelIndex());
+ virtual bool insertColumns(int column, int count, const QModelIndex &parent = QModelIndex());
+ virtual bool removeRows(int row, int count, const QModelIndex &parent = QModelIndex());
+ virtual bool removeColumns(int column, int count, const QModelIndex &parent = QModelIndex());
+ virtual void fetchMore(const QModelIndex &parent);
+ virtual bool canFetchMore(const QModelIndex &parent) const;
+ virtual Qt::ItemFlags flags(const QModelIndex &index) const;
+ virtual void sort(int column, Qt::SortOrder order = Qt::AscendingOrder);
+ virtual QModelIndex buddy(const QModelIndex &index) const;
+ virtual QModelIndexList match(const QModelIndex &start, int role,
const QVariant &value, int hits = 1,
Qt::MatchFlags flags =
Qt::MatchFlags(Qt::MatchStartsWith|Qt::MatchWrap)) const;
- CACHEPROXYMODEL_EXPORT virtual QSize span(const QModelIndex &index) const;
+ virtual QSize span(const QModelIndex &index) const;
// for sorting
- CACHEPROXYMODEL_EXPORT Qt::CaseSensitivity sortCaseSensitivity() const;
- CACHEPROXYMODEL_EXPORT void setSortCaseSensitivity(Qt::CaseSensitivity cs);
- CACHEPROXYMODEL_EXPORT bool isSortLocaleAware() const;
- CACHEPROXYMODEL_EXPORT void setSortLocaleAware(bool on);
- CACHEPROXYMODEL_EXPORT int sortColumn() const;
- CACHEPROXYMODEL_EXPORT Qt::SortOrder sortOrder() const;
- CACHEPROXYMODEL_EXPORT bool dynamicSortFilter() const;
- CACHEPROXYMODEL_EXPORT void setDynamicSortFilter(bool enable);
- CACHEPROXYMODEL_EXPORT int sortRole() const;
- CACHEPROXYMODEL_EXPORT void setSortRole(int role);
+ Qt::CaseSensitivity sortCaseSensitivity() const;
+ void setSortCaseSensitivity(Qt::CaseSensitivity cs);
+ bool isSortLocaleAware() const;
+ void setSortLocaleAware(bool on);
+ int sortColumn() const;
+ Qt::SortOrder sortOrder() const;
+ bool dynamicSortFilter() const;
+ void setDynamicSortFilter(bool enable);
+ int sortRole() const;
+ void setSortRole(int role);
//for filtering
-// CACHEPROXYMODEL_EXPORT QRegExp filterRegExp() const;
-// CACHEPROXYMODEL_EXPORT void setFilterRegExp(const QRegExp ®Exp);
-// CACHEPROXYMODEL_EXPORT int filterKeyColumn() const;
-// CACHEPROXYMODEL_EXPORT void setFilterKeyColumn(int column);
-// CACHEPROXYMODEL_EXPORT Qt::CaseSensitivity filterCaseSensitivity() const;
-// CACHEPROXYMODEL_EXPORT void setFilterCaseSensitivity(Qt::CaseSensitivity cs);
-// CACHEPROXYMODEL_EXPORT int filterRole() const;
-// CACHEPROXYMODEL_EXPORT void setFilterRole(int role);
+ QRegExp filterRegExp() const;
+ void setFilterRegExp(const QRegExp ®Exp);
+ int filterKeyColumn() const;
+ void setFilterKeyColumn(int column);
+ Qt::CaseSensitivity filterCaseSensitivity() const;
+ void setFilterCaseSensitivity(Qt::CaseSensitivity cs);
+ int filterRole() const;
+ void setFilterRole(int role);
public slots:
virtual bool submit();
@@ -117,8 +117,8 @@
public:
//from HgBufferManagerObserver
- CACHEPROXYMODEL_EXPORT virtual void release(int start, int end);
- CACHEPROXYMODEL_EXPORT virtual void request(int start, int end, HgRequestOrder order = HgRequestOrderAscending);
+ virtual void release(int start, int end);
+ virtual void request(int start, int end, HgRequestOrder order = HgRequestOrderAscending);
private:
int count()const;
@@ -126,32 +126,41 @@
QModelIndex mapToSource(int row, int col) const;
int mapToDataProviderIndex(int myIndex) const;
int mapFromDataProviderIndex(int myIndex) const;
- void cleanupForBMResetIfNeeded();
- void resetBMIfNeeded();
+ void cleanupForBMReset();
+ void resetBM();
void releaseAll();
void setBufferPosition(int pos) const;
private slots:
- void sourceReset();
- void sourceAboutToBeReset();
- void sourceRowsInserted(const QModelIndex &source_parent, int start, int end);
- void sourceRowsRemoved(const QModelIndex &source_parent, int start, int end);
- void dataUpdated(QModelIndex from, QModelIndex to);
+ void sourceColumnsAboutToBeInserted( const QModelIndex & parent, int start, int end);
+ void sourceColumnsAboutToBeMoved( const QModelIndex & sourceParent, int sourceStart, int sourceEnd, const QModelIndex & destinationParent, int destinationColumn );
+ void sourceColumnsAboutToBeRemoved( const QModelIndex & parent, int start, int end);
+ void sourceColumnsInserted( const QModelIndex & parent, int start, int end );
+ void sourceColumnsMoved( const QModelIndex & sourceParent, int sourceStart, int sourceEnd, const QModelIndex & destinationParent, int destinationColumn );
+ void sourceColumnsRemoved( const QModelIndex & parent, int start, int end );
+ void sourceDataChanged( const QModelIndex & topLeft, const QModelIndex & bottomRight );
+ void sourceHeaderDataChanged( Qt::Orientation orientation, int first, int last );
+ void sourceLayoutAboutToBeChanged();
+ void sourceLayoutChanged();
+ void sourceModelAboutToBeReset();
+ void sourceModelReset();
+ void sourceRowsAboutToBeInserted( const QModelIndex & parent, int start, int end );
+ void sourceRowsAboutToBeMoved( const QModelIndex & sourceParent, int sourceStart, int sourceEnd, const QModelIndex & destinationParent, int destinationRow );
+ void sourceRowsAboutToBeRemoved( const QModelIndex & parent, int start, int end );
+ void sourceRowsInserted( const QModelIndex & parent, int start, int end );
+ void sourceRowsMoved( const QModelIndex & sourceParent, int sourceStart, int sourceEnd, const QModelIndex & destinationParent, int destinationRow );
+ void sourceRowsRemoved( const QModelIndex & parent, int start, int end );
//from HgDataProviderModelObserver
public:
- CACHEPROXYMODEL_EXPORT virtual void dataUpdated(int from, int to);
+ virtual void dataUpdated(int from, int to);
private:
HgBufferManager* mBufferManager;
QSortFilterProxyModel* mSortFilterProxyModel;
HgDataProviderModel* mDataProviderModel;
- mutable bool mResetNeeded;
mutable bool mSupressBM;
mutable int mCurrentPos;
- bool mSortParameterChanged;
- bool mFilterParameterChanged;
-
};
#endif // HGCACHEPROXYMODEL_H_