summaryrefslogtreecommitdiffstats
path: root/desktop-widgets/statistics/statisticswidget.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'desktop-widgets/statistics/statisticswidget.cpp')
-rw-r--r--desktop-widgets/statistics/statisticswidget.cpp41
1 files changed, 41 insertions, 0 deletions
diff --git a/desktop-widgets/statistics/statisticswidget.cpp b/desktop-widgets/statistics/statisticswidget.cpp
new file mode 100644
index 000000000..3e91fa317
--- /dev/null
+++ b/desktop-widgets/statistics/statisticswidget.cpp
@@ -0,0 +1,41 @@
+#include "statisticswidget.h"
+#include "yearlystatisticsmodel.h"
+#include <QModelIndex>
+
+YearlyStatisticsWidget::YearlyStatisticsWidget(QWidget *parent):
+ QGraphicsView(parent),
+ m_model(NULL)
+{
+}
+
+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);
+}