##// END OF EJS Templates
BarModel mapper refactored.
BarModel mapper refactored.

File last commit:

r1228:0d57f24390a8
r1293:221a9324f935
Show More
qpercentbarseries.cpp
108 lines | 3.2 KiB | text/x-c | CppLexer
/ src / barchart / qpercentbarseries.cpp
Jani Honkonen
Add license headers
r794 /****************************************************************************
**
** Copyright (C) 2012 Digia Plc
** All rights reserved.
** For any questions to Digia, please use contact form at http://qt.digia.com
**
** This file is part of the Qt Commercial Charts Add-on.
**
** $QT_BEGIN_LICENSE$
** Licensees holding valid Qt Commercial licenses may use this file in
** accordance with the Qt Commercial License Agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and Digia.
**
** If you have questions regarding the use of this file, please use
** contact form at http://qt.digia.com
** $QT_END_LICENSE$
**
****************************************************************************/
sauimone
Naming convention change for barcharts. QBarChartSeries is now QBarSeries etc.
r338 #include "qpercentbarseries.h"
Michal Klocek
Refactor to use qseries private for implmentation interface...
r943 #include "qpercentbarseries_p.h"
#include "percentbarchartitem_p.h"
#include "chartdataset_p.h"
#include "charttheme_p.h"
#include "chartanimator_p.h"
sauimone
Naming convention change for barcharts. QBarChartSeries is now QBarSeries etc.
r338 QTCOMMERCIALCHART_BEGIN_NAMESPACE
/*!
\class QPercentBarSeries
\brief part of QtCommercial chart API.
Tero Ahola
Documentation fixes....
r995 \mainclass
sauimone
Naming convention change for barcharts. QBarChartSeries is now QBarSeries etc.
r338
sauimone
Fixed category handling of barcharts. Now the categories can be undefined. Updated documentation.
r1208 QPercentBarSeries represents a series of data shown as bars. The purpose of this class is to draw bars
as stacks, where each bar is shown as percentage of all bars in that category.
QPercentBarSeries groups the data from sets to categories, which are defined by a QStringList.
sauimone
Naming convention change for barcharts. QBarChartSeries is now QBarSeries etc.
r338
Tero Ahola
Documentation fixes....
r995 See the \l {PercentbarChart Example} {percent bar chart example} to learn how to create a percent bar chart.
\image examples_percentbarchart.png
sauimone
Naming convention change for barcharts. QBarChartSeries is now QBarSeries etc.
r338
sauimone
replaced qbarcategory with qstringlist
r377 \sa QBarSet, QStackedBarSeries, QBarSeries
sauimone
Naming convention change for barcharts. QBarChartSeries is now QBarSeries etc.
r338 */
/*!
Michal Klocek
Rename QChartSeries to QSeries
r360 \fn virtual QSeriesType QPercentBarSeries::type() const
sauimone
Naming convention change for barcharts. QBarChartSeries is now QBarSeries etc.
r338 \brief Returns type of series.
Tero Ahola
Renamed QSeries to QAbstractSeries
r988 \sa QAbstractSeries, QSeriesType
sauimone
Naming convention change for barcharts. QBarChartSeries is now QBarSeries etc.
r338 */
/*!
sauimone
Fixed category handling of barcharts. Now the categories can be undefined. Updated documentation.
r1208 Constructs empty QPercentBarSeries.
sauimone
Naming convention change for barcharts. QBarChartSeries is now QBarSeries etc.
r338 QPercentBarSeries is QObject which is a child of a \a parent.
*/
sauimone
Fixed category handling of barcharts. Now the categories can be undefined. Updated documentation.
r1208 QPercentBarSeries::QPercentBarSeries(QObject *parent)
: QBarSeries(*new QPercentBarSeriesPrivate(this), parent)
sauimone
Naming convention change for barcharts. QBarChartSeries is now QBarSeries etc.
r338 {
}
Michal Klocek
Fixes to API , QSeriesType -> SeriesType , add missing getters
r1107 QAbstractSeries::SeriesType QPercentBarSeries::type() const
Michal Klocek
Adds big fat pimpl to series classes...
r938 {
Tero Ahola
Renamed QSeries to QAbstractSeries
r988 return QAbstractSeries::SeriesTypePercentBar;
Michal Klocek
Adds big fat pimpl to series classes...
r938 }
Michal Klocek
Refactor to use qseries private for implmentation interface...
r943 ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
sauimone
Fixed category handling of barcharts. Now the categories can be undefined. Updated documentation.
r1208 QPercentBarSeriesPrivate::QPercentBarSeriesPrivate(QPercentBarSeries *q) : QBarSeriesPrivate(q)
Michal Klocek
Refactor to use qseries private for implmentation interface...
r943 {
}
void QPercentBarSeriesPrivate::scaleDomain(Domain& domain)
{
Q_Q(QPercentBarSeries);
qreal minX(domain.minX());
qreal minY(domain.minY());
qreal maxX(domain.maxX());
qreal maxY(domain.maxY());
int tickXCount(domain.tickXCount());
int tickYCount(domain.tickYCount());
qreal x = q->categoryCount();
sauimone
correct x-positioning for barcharts
r1228 minX = qMin(minX, x) - 0.5;
maxX = qMax(maxX, x) - 0.5;
Michal Klocek
Refactor to use qseries private for implmentation interface...
r943 minY = 0;
maxY = 100;
tickXCount = x+1;
Michal Klocek
Refactor axis hadnling...
r1078 domain.setRange(minX,maxX,minY,maxY,tickXCount,tickYCount);
Michal Klocek
Refactor to use qseries private for implmentation interface...
r943 }
Chart* QPercentBarSeriesPrivate::createGraphics(ChartPresenter* presenter)
{
Q_Q(QPercentBarSeries);
PercentBarChartItem* bar = new PercentBarChartItem(q,presenter);
if(presenter->animationOptions().testFlag(QChart::SeriesAnimations)) {
presenter->animator()->addAnimation(bar);
}
presenter->chartTheme()->decorate(q, presenter->dataSet()->seriesIndex(q));
return bar;
}
sauimone
Naming convention change for barcharts. QBarChartSeries is now QBarSeries etc.
r338 #include "moc_qpercentbarseries.cpp"
QTCOMMERCIALCHART_END_NAMESPACE