From f044c4ee95db4bca61973a408b8f9b1e8875ac40 2012-02-09 15:30:58 From: sauimone Date: 2012-02-09 15:30:58 Subject: [PATCH] barchart mvp model integrating --- diff --git a/src/barchart/barchartmodel.cpp b/src/barchart/barchartmodel.cpp index 5bbd11c..cc1e612 100644 --- a/src/barchart/barchartmodel.cpp +++ b/src/barchart/barchartmodel.cpp @@ -33,8 +33,8 @@ int BarChartModel::countItemsInSeries() { int count(0); for (int i=0; icountItems(); + // TODO: can we assume that all series have same number of values? If not. then which values are empty? + int temp = mSeries.at(i)->countValues(); if (temp > count) { count = temp; } @@ -86,7 +86,7 @@ qreal BarChartModel::valueAt(int series, int item) if ((series < 0) || (series >= mSeries.count())) { // No series, no value. return 0; - } else if ((item < 0) || (item >= mSeries.at(series)->countItems())) { + } else if ((item < 0) || (item >= mSeries.at(series)->countValues())) { // No item, no value. return 0; } diff --git a/src/barchart/barchartseriesbase.cpp b/src/barchart/barchartseriesbase.cpp index 6958c6c..ed4a841 100644 --- a/src/barchart/barchartseriesbase.cpp +++ b/src/barchart/barchartseriesbase.cpp @@ -141,7 +141,7 @@ qreal BarChartSeriesBase::max() return max; } -int BarChartSeriesBase::countItems() +int BarChartSeriesBase::countValues() { Q_ASSERT(mData != 0); return mData->count(); diff --git a/src/barchart/barchartseriesbase.h b/src/barchart/barchartseriesbase.h index 7b25046..be3d807 100644 --- a/src/barchart/barchartseriesbase.h +++ b/src/barchart/barchartseriesbase.h @@ -39,7 +39,7 @@ public: qreal min(); qreal max(); - int countItems(); + int countValues(); qreal valueAt(int item); public Q_SLOTS: diff --git a/src/chartdataset.cpp b/src/chartdataset.cpp index 78469dc..76fbcf3 100644 --- a/src/chartdataset.cpp +++ b/src/chartdataset.cpp @@ -54,33 +54,38 @@ void ChartDataSet::addSeries(QChartSeries* series) case QChartSeries::SeriesTypeBar: { BarChartSeries* barSeries = static_cast(series); - qreal x = barSeries->countColumns(); + qreal x = barSeries->countValues(); qreal y = barSeries->max(); domain.m_minX = qMin(domain.m_minX,x); domain.m_minY = qMin(domain.m_minY,y); domain.m_maxX = qMax(domain.m_maxX,x); domain.m_maxY = qMax(domain.m_maxY,y); + } break; case QChartSeries::SeriesTypeStackedBar: { StackedBarChartSeries* stackedBarSeries = static_cast(series); +/* qreal x = stackedBarSeries->countColumns(); qreal y = stackedBarSeries->maxColumnSum(); domain.m_minX = qMin(domain.m_minX,x); domain.m_minY = qMin(domain.m_minY,y); domain.m_maxX = qMax(domain.m_maxX,x); domain.m_maxY = qMax(domain.m_maxY,y); +*/ } break; case QChartSeries::SeriesTypePercentBar: { PercentBarChartSeries* percentBarSeries = static_cast(series); +/* qreal x = percentBarSeries->countColumns(); domain.m_minX = qMin(domain.m_minX,x); domain.m_minY = 0; domain.m_maxX = qMax(domain.m_maxX,x); domain.m_maxY = 100; +*/ } break;