#include "currenttablemodel.h" CurrentTableModel::CurrentTableModel(QObject* parent) : QAbstractTableModel(parent) { } CurrentTableModel::~CurrentTableModel() { } void CurrentTableModel::setCurrentData(const QVariantList& data) { beginResetModel(); data_.clear(); for (const auto& row: data) { QList rowData; for (const auto& column: row.toList()) { rowData.push_back(column.toFloat()); } data_.push_back(rowData); } endResetModel(); } void CurrentTableModel::setCurrentData(const QList>& data) { beginResetModel(); data_ = data; endResetModel(); } int CurrentTableModel::rowCount(const QModelIndex&) const { return data_.size(); } int CurrentTableModel::columnCount(const QModelIndex&) const { return data_.empty() ? 0 : data_.at(0).size(); } QVariant CurrentTableModel::data(const QModelIndex& index, int role) const { switch (role) { case Qt::DisplayRole: return QString::number(data_.at(index.row()).at(index.column())); default: break; } return {}; } QHash CurrentTableModel::roleNames() const { return { {Qt::DisplayRole, "display"} }; }