##// END OF EJS Templates
Refactor animator...
Refactor animator * refactors pie animation handling from animator to animation class * removes animator class and files

File last commit:

r1735:0a19606ca1b1
r1735:0a19606ca1b1
Show More
qhorizontalpercentbarseries.cpp
66 lines | 1.9 KiB | text/x-c | CppLexer
/ src / barchart / horizontal / percent / qhorizontalpercentbarseries.cpp
#include "qhorizontalpercentbarseries.h"
#include "qhorizontalpercentbarseries_p.h"
#include "horizontalpercentbarchartitem_p.h"
#include "horizontalpercentbaranimation_p.h"
#include "chartdataset_p.h"
#include "charttheme_p.h"
QTCOMMERCIALCHART_BEGIN_NAMESPACE
QHorizontalPercentBarSeries::QHorizontalPercentBarSeries(QObject *parent) :
QAbstractBarSeries(*new QHorizontalPercentBarSeriesPrivate(this), parent)
{
}
QAbstractSeries::SeriesType QHorizontalPercentBarSeries::type() const
{
return QAbstractSeries::SeriesTypeHorizontalPercentBar;
}
QHorizontalPercentBarSeries::~QHorizontalPercentBarSeries()
{
Q_D(QHorizontalPercentBarSeries);
if(d->m_dataset) {
d->m_dataset->removeSeries(this);
}
}
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
QHorizontalPercentBarSeriesPrivate::QHorizontalPercentBarSeriesPrivate(QHorizontalPercentBarSeries *q) : QAbstractBarSeriesPrivate(q)
{
}
void QHorizontalPercentBarSeriesPrivate::scaleDomain(Domain& domain)
{
qreal minX(domain.minX());
qreal minY(domain.minY());
qreal maxX(domain.maxX());
qreal maxY(domain.maxY());
qreal y = categoryCount();
minX = 0;
maxX = 100;
minY = qMin(minY, - (qreal)0.5);
maxY = qMax(maxY, y - (qreal)0.5);
domain.setRange(minX,maxX,minY,maxY);
}
Chart* QHorizontalPercentBarSeriesPrivate::createGraphics(ChartPresenter* presenter)
{
Q_Q(QHorizontalPercentBarSeries);
HorizontalPercentBarChartItem* bar = new HorizontalPercentBarChartItem(q,presenter);
if(presenter->animationOptions().testFlag(QChart::SeriesAnimations)) {
bar->setAnimation(new HorizontalPercentBarAnimation(bar));
}
presenter->chartTheme()->decorate(q, presenter->dataSet()->seriesIndex(q));
return bar;
}
#include "moc_qhorizontalpercentbarseries.cpp"
QTCOMMERCIALCHART_END_NAMESPACE