##// END OF EJS Templates
Implements minimumMargins...
Implements minimumMargins * adds mising margin implementation * setter and getter for minimumMargins * changes return values QMargins instead of QRectF * updates unit tests * QML TODO: not clear what should be handled there margins or plotArea * fixes chartlayout - minimum width of Axis is calculated

File last commit:

r1736:cb991e4e355f
r1883:fa0e7a49da94
Show More
qlineseries.cpp
132 lines | 3.5 KiB | text/x-c | CppLexer
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$
**
****************************************************************************/
Michal Klocek
Rename QLineChartSeries to QLineSeries
r349 #include "qlineseries.h"
Michal Klocek
Adds big fat pimpl to series classes...
r938 #include "qlineseries_p.h"
Michal Klocek
Refactor to use qseries private for implmentation interface...
r943 #include "linechartitem_p.h"
#include "chartdataset_p.h"
#include "charttheme_p.h"
Michal Klocek
Refactor current draft to fit int current design specs...
r21
Tero Ahola
Renamed to QtCommercialChart
r30 QTCOMMERCIALCHART_BEGIN_NAMESPACE
Michal Klocek
Refactor current draft to fit int current design specs...
r21
Michal Klocek
Refactor documentation...
r331 /*!
Michal Klocek
fix docs of qlineseries
r350 \class QLineSeries
\brief The QLineSeries class is used for making line charts.
Michal Klocek
Refactor documentation...
r331
\mainclass
A line chart is used to show information as a series of data points
connected by straight lines.
Tero Ahola
Documentation fixes....
r995 \image examples_linechart.png
Michal Klocek
Refactor documentation...
r331
Michal Klocek
Limit code presented on qlineseries docs
r369 Creating basic line chart is simple:
\code
Tero Ahola
Documentation fixes....
r995 QLineSeries* series = new QLineSeries();
Jani Honkonen
rename functions add() -> append()
r796 series->append(0, 6);
series->append(2, 4);
Tero Ahola
Documentation fixes....
r995 ...
chart->addSeries(series);
Michal Klocek
Limit code presented on qlineseries docs
r369 \endcode
Michal Klocek
Refactor documentation...
r331 */
Tero Ahola
Documenting xy-series
r1491 /*!
\qmlclass LineSeries QLineSeries
\inherits XYSeries
The following QML shows how to create a simple line chart:
\snippet ../demos/qmlchart/qml/qmlchart/View2.qml 1
\beginfloatleft
\image demos_qmlchart2.png
\endfloat
\clearfloat
*/
Michal Klocek
Refactor documentation...
r331
/*!
Michal Klocek
Fixes to API , QSeriesType -> SeriesType , add missing getters
r1107 \fn virtual SeriesType QLineSeries::type() const
Michal Klocek
Refactor documentation...
r331 \brief Returns type of series.
Michal Klocek
Fixes to API , QSeriesType -> SeriesType , add missing getters
r1107 \sa QAbstractSeries, SeriesType
Michal Klocek
Refactor documentation...
r331 */
Michal Klocek
Adds replace,remove,add signals to qchartline
r374 /*!
Michal Klocek
Refactor scatter chart to fit the other classes...
r470 Constructs empty series object which is a child of \a parent.
Michal Klocek
Krazy reported errors...
r974 When series object is added to QChartView or QChart instance ownerships is transferred.
Michal Klocek
Refactor documentation...
r331 */
Michal Klocek
Adds big fat pimpl to series classes...
r938 QLineSeries::QLineSeries(QObject *parent) : QXYSeries(*new QLineSeriesPrivate(this),parent)
{
}
Tero Ahola
Updated documentation, warnings from legend and area left
r973 /*!
\internal
*/
Michal Klocek
Adds big fat pimpl to series classes...
r938 QLineSeries::QLineSeries(QLineSeriesPrivate &d,QObject *parent) : QXYSeries (d,parent)
Michal Klocek
Refactor scatter chart to fit the other classes...
r470 {
Michal Klocek
Refactor documentation...
r331
Michal Klocek
Refactor scatter chart to fit the other classes...
r470 }
Michal Klocek
Adds updated handling for line series
r392 /*!
Michal Klocek
Refactor scatter chart to fit the other classes...
r470 Destroys the object. Series added to QChartView or QChart instances are owned by those,
and are deleted when mentioned object are destroyed.
Michal Klocek
Adds updated handling for line series
r392 */
Michal Klocek
Refactor scatter chart to fit the other classes...
r470 QLineSeries::~QLineSeries()
{
Michal Klocek
Bugfix for destruction of qlineseries
r1069 Q_D(QLineSeries);
if(d->m_dataset){
d->m_dataset->removeSeries(this);
}
Michal Klocek
Refactor scatter chart to fit the other classes...
r470 }
Michal Klocek
Adds updated handling for line series
r392
Michal Klocek
Fixes to API , QSeriesType -> SeriesType , add missing getters
r1107 QAbstractSeries::SeriesType QLineSeries::type() const
Michal Klocek
Refactor current draft to fit int current design specs...
r21 {
Tero Ahola
Renamed QSeries to QAbstractSeries
r988 return QAbstractSeries::SeriesTypeLine;
Michal Klocek
Refactor current draft to fit int current design specs...
r21 }
Michal Klocek
Adds big fat pimpl to series classes...
r938 /*
Michal Klocek
Rename QLineChartSeries to QLineSeries
r349 QDebug operator<< (QDebug debug, const QLineSeries series)
Michal Klocek
Refactor current draft to fit int current design specs...
r21 {
Michal Klocek
Adds big fat pimpl to series classes...
r938 Q_ASSERT(series.d_func()->m_x.size() == series.d_func()->m_y.size());
int size = series.d_func()->m_x.size();
sauimone
minor code review issues. indent, spaces, brackets etc.
r743 for (int i=0; i<size; i++) {
Michal Klocek
Adds big fat pimpl to series classes...
r938 debug.nospace() << "(" << series.d_func()->m_x.at(i) << ','<< series.d_func()->m_y.at(i) << ") ";
Michal Klocek
Refactor current draft to fit int current design specs...
r21 }
return debug.space();
}
Michal Klocek
Adds big fat pimpl to series classes...
r938 */
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
QLineSeriesPrivate::QLineSeriesPrivate(QLineSeries* q):QXYSeriesPrivate(q)
{
};
Michal Klocek
Refactor current draft to fit int current design specs...
r21
Michal Klocek
Refactors Chart to ChartElement
r1736 ChartElement* QLineSeriesPrivate::createGraphics(ChartPresenter* presenter)
Michal Klocek
Refactor to use qseries private for implmentation interface...
r943 {
Q_Q(QLineSeries);
LineChartItem* line = new LineChartItem(q,presenter);
if(presenter->animationOptions().testFlag(QChart::SeriesAnimations)) {
Michal Klocek
Refactors animation handling for xyseries
r1217 line->setAnimation(new XYAnimation(line));
Michal Klocek
Refactor to use qseries private for implmentation interface...
r943 }
presenter->chartTheme()->decorate(q, presenter->dataSet()->seriesIndex(q));
return line;
}
Tero Ahola
Scatter customization to QML api
r1276 #include "moc_qlineseries.cpp"
Tero Ahola
Renamed to QtCommercialChart
r30 QTCOMMERCIALCHART_END_NAMESPACE