X-Git-Url: https://git.sven.stormbind.net/?a=blobdiff_plain;f=src%2Ffindresultmodel.h;fp=src%2Ffindresultmodel.h;h=f8b368aacb66793e16a69ed61909c00214298d3b;hb=d483bd8e6523c23c6f1d8908a2e0611c2bc9ff4f;hp=0000000000000000000000000000000000000000;hpb=7dfa3fe589d1722d49681f42cdb0bf1e6efb5223;p=sven%2Fvym.git diff --git a/src/findresultmodel.h b/src/findresultmodel.h new file mode 100644 index 0000000..f8b368a --- /dev/null +++ b/src/findresultmodel.h @@ -0,0 +1,69 @@ +#ifndef FINDRESULTMODEL_H +#define FINDRESULTMODEL_H + +#include +#include +#include +#include + +class FindResultItem; +class TreeItem; + +class FindResultModel : public QAbstractItemModel { + Q_OBJECT + + public: + FindResultModel(QObject *parent = 0); + ~FindResultModel(); + void clear(); + + QVariant data(const QModelIndex &index, int role) const; + QVariant headerData(int section, Qt::Orientation orientation, + int role = Qt::DisplayRole) const; + + QModelIndex index(FindResultItem *fri); + QModelIndex index(int row, int column, + const QModelIndex &parent = QModelIndex()) const; + QModelIndex parent(const QModelIndex &index) const; + + int rowCount(const QModelIndex &parent = QModelIndex()) const; + int columnCount(const QModelIndex &parent = QModelIndex()) const; + + Qt::ItemFlags flags(const QModelIndex &index) const; + bool setData(const QModelIndex &index, const QVariant &value, + int role = Qt::EditRole); + bool setHeaderData(int section, Qt::Orientation orientation, + const QVariant &value, int role = Qt::EditRole); + + bool insertColumns(int position, int columns, + const QModelIndex &parent = QModelIndex()); + bool removeColumns(int position, int columns, + const QModelIndex &parent = QModelIndex()); + bool insertRows(int position, int rows, + const QModelIndex &parent = QModelIndex()); + bool removeRows(int position, int rows, + const QModelIndex &parent = QModelIndex()); + + FindResultItem *getItem(const QModelIndex &index) const; + + FindResultItem *addItem(TreeItem *ti); + FindResultItem *addSubItem(FindResultItem *parent, const QString &s, + TreeItem *pi, int i); + + void setSearchString(const QString &s); + QString getSearchString(); + void setSearchFlags(QTextDocument::FindFlags f); + QTextDocument::FindFlags getSearchFlags(); + void setShowParentsLevel(uint i); + uint getShowParentsLevel(); + + private: + uint showParentsLevel; + + FindResultItem *rootItem; + + QString searchString; + QTextDocument::FindFlags searchFlags; +}; + +#endif