subsurface/qt-ui/statistics/statisticswidget.cpp
Tomaz Canabrava 37bd82f623 Fewer rebuilds triggered by changes in models.h
Models.h now is quite minimal, I'll keep it like that for now, until it
grows huge again. I've also cleaned a bit the headers that are using it so
only the ones that actually need the stuff that I've left behind will
actually include this file.

Signed-off-by: Tomaz Canabrava <tomaz.canabrava@intel.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-05-29 14:13:44 -07:00

39 lines
1.1 KiB
C++

#include "statisticswidget.h"
#include "yearlystatisticsmodel.h"
#include <QModelIndex>
YearlyStatisticsWidget::YearlyStatisticsWidget(QWidget *parent): QGraphicsView(parent)
{
}
void YearlyStatisticsWidget::setModel(YearlyStatisticsModel *m)
{
m_model = m;
connect(m, SIGNAL(dataChanged(QModelIndex,QModelIndex)),
this, SLOT(modelDataChanged(QModelIndex,QModelIndex)));
connect(m, SIGNAL(rowsAboutToBeRemoved(QModelIndex,int,int)),
scene(), SLOT(clear()));
connect(m, SIGNAL(rowsInserted(QModelIndex,int,int)),
this, SLOT(modelRowsInserted(QModelIndex,int,int)));
modelRowsInserted(QModelIndex(),0,m_model->rowCount()-1);
}
void YearlyStatisticsWidget::modelRowsInserted(const QModelIndex &index, int first, int last)
{
// stub
}
void YearlyStatisticsWidget::modelDataChanged(const QModelIndex &topLeft, const QModelIndex& bottomRight)
{
Q_UNUSED(topLeft);
Q_UNUSED(bottomRight);
scene()->clear();
modelRowsInserted(QModelIndex(),0,m_model->rowCount()-1);
}
void YearlyStatisticsWidget::resizeEvent(QResizeEvent *event)
{
QGraphicsView::resizeEvent(event);
fitInView(sceneRect(), Qt::IgnoreAspectRatio);
}