36 lines
1.1 KiB
C++
36 lines
1.1 KiB
C++
#ifndef FILEMODEL_H
|
|
#define FILEMODEL_H
|
|
|
|
#include <QAbstractItemModel>
|
|
|
|
#include "IO/Common/DICOMTypes.h"
|
|
|
|
class FileItem;
|
|
class PropertyTableModel;
|
|
|
|
class FileModel : public QAbstractItemModel
|
|
{
|
|
public:
|
|
explicit FileModel(PropertyTableModel* aTableModel, QObject *parent = nullptr);
|
|
~FileModel() override;
|
|
|
|
QVariant data(const QModelIndex &aIndex, int aRole) const override;
|
|
// Qt::ItemFlags flags(const QModelIndex &aIndex) const override;
|
|
// QVariant headerData(int aSection, Qt::Orientation orientation,
|
|
// int aRole = Qt::DisplayRole) const override;
|
|
QModelIndex index(int aRow, int aColumn, const QModelIndex &aParent = QModelIndex()) const override;
|
|
QModelIndex parent(const QModelIndex &aIndex) const override;
|
|
int rowCount(const QModelIndex &aParent = QModelIndex()) const override;
|
|
int columnCount(const QModelIndex &aParent = QModelIndex()) const override;
|
|
void setModelData();
|
|
void clearModelData();
|
|
void executeItemAction(const QModelIndex& aIndex);
|
|
|
|
private:
|
|
FileItem* mRootItem;
|
|
PatientsMapType* mPatientList;
|
|
PropertyTableModel* mTableModel;
|
|
};
|
|
|
|
#endif // FILEMODEL_H
|