##// END OF EJS Templates
Fixes categories wrong labeling issue for *barseries
Fixes categories wrong labeling issue for *barseries

File last commit:

r1698:da7242791c36
r1706:368f6161c675
Show More
qstackedbarseries.cpp
126 lines | 3.7 KiB | text/x-c | CppLexer
/ src / barchart / qstackedbarseries.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 "qstackedbarseries.h"
Michal Klocek
Refactor to use qseries private for implmentation interface...
r943 #include "qstackedbarseries_p.h"
#include "stackedbarchartitem_p.h"
#include "chartdataset_p.h"
#include "charttheme_p.h"
#include "chartanimator_p.h"
sauimone
added createAxis methods to private series
r1545 #include "qvaluesaxis.h"
sauimone
refactored baranimations
r1673 #include "stackedbaranimation_p.h"
sauimone
Naming convention change for barcharts. QBarChartSeries is now QBarSeries etc.
r338
QTCOMMERCIALCHART_BEGIN_NAMESPACE
/*!
\class QStackedBarSeries
sauimone
better brief descriptions for barcharts
r1502 \brief Series for creating stacked bar chart
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 QStackedBarSeries represents a series of data shown as bars. The purpose of this class is to draw bars
as stacks, where bars in same category are stacked on top of each other.
sauimone
replaced qbarcategory with qstringlist
r377 QStackedBarSeries groups the data from sets to categories, which are defined by QStringList.
sauimone
Naming convention change for barcharts. QBarChartSeries is now QBarSeries etc.
r338
Tero Ahola
Documentation fixes....
r995 See the \l {StackedbarChart Example} {stacked bar chart example} to learn how to create a stacked bar chart.
\image examples_stackedbarchart.png
sauimone
Naming convention change for barcharts. QBarChartSeries is now QBarSeries etc.
r338
sauimone
renamed barseries files to abstractbarseries
r1586 \sa QBarSet, QPercentBarSeries, QAbstractBarSeries
sauimone
Naming convention change for barcharts. QBarChartSeries is now QBarSeries etc.
r338 */
Tero Ahola
Documenting QML bar series API
r1489 /*!
\qmlclass StackedBarSeries QStackedBarSeries
sauimone
changed barseries to abstractbarseries in documentation
r1590 \inherits AbstractBarSeries
Tero Ahola
Documenting QML bar series API
r1489
The following QML shows how to create a simple stacked bar chart:
sauimone
documentation update
r1618 \snippet ../demos/qmlchart/qml/qmlchart/View7.qml 1
Tero Ahola
Documenting QML bar series API
r1489 \beginfloatleft
sauimone
documentation update
r1618 \image demos_qmlchart7.png
Tero Ahola
Documenting QML bar series API
r1489 \endfloat
\clearfloat
*/
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 QStackedBarSeries.
sauimone
Naming convention change for barcharts. QBarChartSeries is now QBarSeries etc.
r338 QStackedBarSeries 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 QStackedBarSeries::QStackedBarSeries(QObject *parent)
sauimone
QBarSeries to QAbstractBarSeries
r1584 : QAbstractBarSeries(*new QStackedBarSeriesPrivate(this), parent)
sauimone
Naming convention change for barcharts. QBarChartSeries is now QBarSeries etc.
r338 {
}
Jani Honkonen
Fix series type() docs
r1345 /*!
Returns QChartSeries::SeriesTypeStackedBar.
*/
Michal Klocek
Fixes to API , QSeriesType -> SeriesType , add missing getters
r1107 QAbstractSeries::SeriesType QStackedBarSeries::type() const
Michal Klocek
Adds big fat pimpl to series classes...
r938 {
Tero Ahola
Renamed QSeries to QAbstractSeries
r988 return QAbstractSeries::SeriesTypeStackedBar;
Michal Klocek
Adds big fat pimpl to series classes...
r938 }
Michal Klocek
Refactor to use qseries private for implmentation interface...
r943 ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
sauimone
QBarSeries to QAbstractBarSeries
r1584 QStackedBarSeriesPrivate::QStackedBarSeriesPrivate(QStackedBarSeries *q) : QAbstractBarSeriesPrivate(q)
Michal Klocek
Refactor to use qseries private for implmentation interface...
r943 {
}
void QStackedBarSeriesPrivate::scaleDomain(Domain& domain)
{
qreal minX(domain.minX());
qreal minY(domain.minY());
qreal maxX(domain.maxX());
qreal maxY(domain.maxY());
sauimone
removed categories from barseries. categories are now only on axis
r1321 qreal x = categoryCount();
sauimone
barchart PIMPL part 2. Cleaning up leftovers in public api
r962 qreal y = maxCategorySum();
Marek Rosa
Added casting to qreal in qMin, qFuzzyCompare calls to fix build on arm
r1679 minX = qMin(minX, - (qreal)0.5);
Michal Klocek
Refactor to use qseries private for implmentation interface...
r943 minY = qMin(minY, y);
Marek Rosa
Added casting to qreal in qMin, qFuzzyCompare calls to fix build on arm
r1679 maxX = qMax(maxX, x - (qreal)0.5);
Michal Klocek
Refactor to use qseries private for implmentation interface...
r943 maxY = qMax(maxY, y);
Michal Klocek
Refactors Domain and Axis...
r1698 domain.setRange(minX,maxX,minY,maxY);
Michal Klocek
Refactor to use qseries private for implmentation interface...
r943 }
Chart* QStackedBarSeriesPrivate::createGraphics(ChartPresenter* presenter)
{
Q_Q(QStackedBarSeries);
StackedBarChartItem* bar = new StackedBarChartItem(q,presenter);
if(presenter->animationOptions().testFlag(QChart::SeriesAnimations)) {
sauimone
refactored baranimations
r1673 bar->setAnimator(presenter->animator());
bar->setAnimation(new StackedBarAnimation(bar));
Michal Klocek
Refactor to use qseries private for implmentation interface...
r943 }
presenter->chartTheme()->decorate(q, presenter->dataSet()->seriesIndex(q));
return bar;
}
Michal Klocek
Adds axis domain intialization
r1695 QAbstractAxis::AxisType QStackedBarSeriesPrivate::defaultAxisType(Qt::Orientation orientation) const
sauimone
horizontal barchart & example
r1681 {
Michal Klocek
Adds axis domain intialization
r1695 if(orientation==Qt::Horizontal)
return QAbstractAxis::AxisTypeCategories;
else
return QAbstractAxis::AxisTypeValues;
sauimone
horizontal barchart & example
r1681 }
sauimone
added createAxis methods to private series
r1545
sauimone
Naming convention change for barcharts. QBarChartSeries is now QBarSeries etc.
r338 #include "moc_qstackedbarseries.cpp"
QTCOMMERCIALCHART_END_NAMESPACE