#include "modelsummary.h" #include "tablemodel.h" ModelSummary::ModelSummary(std::shared_ptr model, QObject* parent) : QObject(parent) , m_model(model) { Q_ASSERT(model); connect(m_model.get(), &TableModel::rowCountChanged, this, &ModelSummary::rowCountChanged); // TODO ? use existing model signals (dataChanged(role),...) instead of special signals connect(m_model.get(), &TableModel::nExpectedBiddingsChanged, this, &ModelSummary::nExpectedBiddingsChanged); connect(m_model.get(), &TableModel::nTotalExpectedSharesChanged, this, &ModelSummary::nTotalExpectedSharesChanged); connect(m_model.get(), &TableModel::nPlacedBiddingsChanged, this, &ModelSummary::nPlacedBiddingsChanged); connect(m_model.get(), &TableModel::biddingSumChanged, this, &ModelSummary::biddingSumChanged); connect(m_model.get(), &TableModel::biddingAverageChanged, this, &ModelSummary::biddingAverageChanged); } ModelSummary::~ModelSummary() {} int ModelSummary::rowCount() const { const int nRows = m_model->rowCount(); return nRows; } QBindable ModelSummary::bindableRowCount() { m_rowCount = m_model->rowCount(); return &m_rowCount; } qreal ModelSummary::nTotalExpectedShares() const { return m_model->nTotalExpectedShares(); } int ModelSummary::nExpectedBiddings() const { return m_model->nExpectedBiddings(); } int ModelSummary::nPlacedBiddings1() const { return m_model->nPlacedBiddings1(); } int ModelSummary::nPlacedBiddings2() const { return m_model->nPlacedBiddings2(); } int ModelSummary::nPlacedBiddings3() const { return m_model->nPlacedBiddings3(); } int ModelSummary::biddingSum1() const { return m_model->biddingSum1(); } int ModelSummary::biddingSum2() const { return m_model->biddingSum2(); } int ModelSummary::biddingSum3() const { return m_model->biddingSum3(); } qreal ModelSummary::biddingAverage1() const { return m_model->biddingAverage1(); } qreal ModelSummary::biddingAverage2() const { return m_model->biddingAverage2(); } qreal ModelSummary::biddingAverage3() const { return m_model->biddingAverage3(); }