// // Created by fly on 2021/11/25. // #ifndef PEARSON_DATATABLEMODEL_H #define PEARSON_DATATABLEMODEL_H #include #include #include #include #include #include class DataTableModel : public QAbstractTableModel { Q_OBJECT public: explicit DataTableModel(QObject *parent = nullptr); // Header: QVariant headerData(int section, Qt::Orientation orientation, int role = Qt::DisplayRole) const override; // Basic functionality: int rowCount(const QModelIndex &parent = QModelIndex()) const override; int columnCount(const QModelIndex &parent = QModelIndex()) const override; QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const override; void sort(int column, Qt::SortOrder order) override; void clear(); void InsertRow(QString name, double pearson); bool SaveFile(QString const &fileName); private: QStringList m_headerData; std::vector> m_tableData; }; #endif //PEARSON_DATATABLEMODEL_H