##// END OF EJS Templates
Improvements to QSpline model support
Improvements to QSpline model support

File last commit:

r1090:e8a91ec341af
r1090:e8a91ec341af
Show More
qxyseries.cpp
508 lines | 14.0 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
Add missing files from previous commit
r466 #include "qxyseries.h"
Michal Klocek
Adds big fat pimpl to series classes...
r938 #include "qxyseries_p.h"
Michal Klocek
Refactor to use qseries private for implmentation interface...
r943 #include "domain_p.h"
Michal Klocek
Adds qlegend pimpl...
r950 #include "legendmarker_p.h"
Marek Rosa
Fixed: QAbstractItemModel could be forward declaration
r862 #include <QAbstractItemModel>
Michal Klocek
Add missing files from previous commit
r466
QTCOMMERCIALCHART_BEGIN_NAMESPACE
/*!
\class QXYSeries
Michal Klocek
Refactor scatter chart to fit the other classes...
r470 \brief The QXYSeries class is a base class for line, spline and scatter series.
Michal Klocek
Add missing files from previous commit
r466 */
/*!
\fn QPen QXYSeries::pen() const
Michal Klocek
minor. some docs fix
r480 \brief Returns pen used to draw points for series.
Michal Klocek
Add missing files from previous commit
r466 \sa setPen()
*/
Michal Klocek
minor. some docs fix
r480 /*!
\fn QBrush QXYSeries::brush() const
\brief Returns brush used to draw points for series.
\sa setBrush()
*/
Michal Klocek
Updates presenter example documentation
r574 /*!
\fn void QXYSeries::clicked(const QPointF& point)
\brief Signal is emitted when user clicks the \a point on chart.
*/
Tero Ahola
Updated documentation, warnings from legend and area left
r973
Michal Klocek
Add missing files from previous commit
r466 /*!
Marek Rosa
gdpbarchart moved to test. Few small doc fixes
r940 \fn void QXYSeriesPrivate::pointReplaced(int index)
Michal Klocek
Add missing files from previous commit
r466 \brief \internal \a index
*/
/*!
Marek Rosa
gdpbarchart moved to test. Few small doc fixes
r940 \fn void QXYSeriesPrivate::pointAdded(int index)
Michal Klocek
Add missing files from previous commit
r466 \brief \internal \a index
*/
/*!
Marek Rosa
gdpbarchart moved to test. Few small doc fixes
r940 \fn void QXYSeriesPrivate::pointRemoved(int index)
Michal Klocek
Add missing files from previous commit
r466 \brief \internal \a index
*/
/*!
Marek Rosa
gdpbarchart moved to test. Few small doc fixes
r940 \fn void QXYSeriesPrivate::updated()
Michal Klocek
Add missing files from previous commit
r466 \brief \internal
*/
/*!
Tero Ahola
Updated documentation, warnings from legend and area left
r973 \internal
Michal Klocek
Add missing files from previous commit
r466 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
Add missing files from previous commit
r466 */
Tero Ahola
Renamed QSeries to QAbstractSeries
r988 QXYSeries::QXYSeries(QXYSeriesPrivate &d,QObject *parent) : QAbstractSeries(d, parent)
Michal Klocek
Adds big fat pimpl to series classes...
r938 {
Michal Klocek
Add missing files from previous commit
r466 }
/*!
Destroys the object. Series added to QChartView or QChart instances are owned by those,
and are deleted when mentioned object are destroyed.
*/
QXYSeries::~QXYSeries()
{
}
/*!
Adds data point \a x \a y to the series. Points are connected with lines on the chart.
*/
Jani Honkonen
rename functions add() -> append()
r796 void QXYSeries::append(qreal x,qreal y)
Michal Klocek
Add missing files from previous commit
r466 {
Michal Klocek
Fixes and improvments to series API...
r1057 append(QPointF(x,y));
Michal Klocek
Add missing files from previous commit
r466 }
/*!
This is an overloaded function.
Adds data \a point to the series. Points are connected with lines on the chart.
*/
Jani Honkonen
rename functions add() -> append()
r796 void QXYSeries::append(const QPointF &point)
Michal Klocek
Add missing files from previous commit
r466 {
Michal Klocek
Fixes and improvments to series API...
r1057 Q_D(QXYSeries);
d->m_points<<point;
emit d->pointAdded(d->m_points.count()-1);
Michal Klocek
Add missing files from previous commit
r466 }
Michal Klocek
Fixes for docs , adds xyseries docs
r481 /*!
This is an overloaded function.
Adds list of data \a points to the series. Points are connected with lines on the chart.
*/
Michal Klocek
Fixes and improvments to series API...
r1057 void QXYSeries::append(const QList<QPointF> &points)
Michal Klocek
Fixes for docs , adds xyseries docs
r481 {
foreach(const QPointF& point , points) {
Michal Klocek
Fixes and improvments to series API...
r1057 append(point);
Michal Klocek
Fixes for docs , adds xyseries docs
r481 }
}
Michal Klocek
Add missing files from previous commit
r466
Michal Klocek
Fixes and improvments to series API...
r1057 void QXYSeries::replace(qreal oldX,qreal oldY,qreal newX,qreal newY)
Michal Klocek
Add missing files from previous commit
r466 {
Michal Klocek
Fixes and improvments to series API...
r1057 replace(QPointF(oldX,oldY),QPointF(newX,newY));
Michal Klocek
Add missing files from previous commit
r466 }
Michal Klocek
Fixes and improvments to series API...
r1057 void QXYSeries::replace(const QPointF &oldPoint,const QPointF &newPoint)
Michal Klocek
Improves spline interpolation...
r622 {
Michal Klocek
Adds big fat pimpl to series classes...
r938 Q_D(QXYSeries);
Michal Klocek
Fixes and improvments to series API...
r1057 int index = d->m_points.indexOf(oldPoint);
Michal Klocek
Update of tst_qlineseries.cpp
r1064 if(index==-1) return;
Michal Klocek
Fixes and improvments to series API...
r1057 d->m_points[index] = newPoint;
emit d->pointReplaced(index);
Michal Klocek
Improves spline interpolation...
r622 }
Michal Klocek
Add missing files from previous commit
r466 /*!
Michal Klocek
Adds missing scatter intercation implementation...
r541 Removes current \a x and \a y value.
Michal Klocek
Add missing files from previous commit
r466 */
Michal Klocek
Adds missing scatter intercation implementation...
r541 void QXYSeries::remove(qreal x,qreal y)
Michal Klocek
Add missing files from previous commit
r466 {
Michal Klocek
Fixes and improvments to series API...
r1057 remove(QPointF(x,y));
Michal Klocek
Add missing files from previous commit
r466 }
/*!
Removes current \a point x value. Note \a point y value is ignored.
*/
sauimone
minor code review issues. indent, spaces, brackets etc.
r743 void QXYSeries::remove(const QPointF &point)
Michal Klocek
Add missing files from previous commit
r466 {
Michal Klocek
Fixes and improvments to series API...
r1057 Q_D(QXYSeries);
int index = d->m_points.indexOf(point);
Michal Klocek
Update of tst_qlineseries.cpp
r1064 if(index==-1) return;
Michal Klocek
Fixes and improvments to series API...
r1057 d->m_points.remove(index);
emit d->pointRemoved(index);
Michal Klocek
Add missing files from previous commit
r466 }
/*!
Michal Klocek
Fixes for docs , adds xyseries docs
r481 Removes all data points from the series.
Michal Klocek
Add missing files from previous commit
r466 */
Michal Klocek
Fixes for docs , adds xyseries docs
r481 void QXYSeries::removeAll()
Michal Klocek
Add missing files from previous commit
r466 {
Michal Klocek
Adds big fat pimpl to series classes...
r938 Q_D(QXYSeries);
Michal Klocek
Fixes and improvments to series API...
r1057 foreach(const QPointF& point, d->m_points) {
Marek Rosa
Spline series now recalcutes control points on adding/removing data to/from model
r1072 remove(point);
sauimone
minor code review issues. indent, spaces, brackets etc.
r743 }
Michal Klocek
Add missing files from previous commit
r466 }
/*!
\internal \a pos
*/
Michal Klocek
Fixes and improvments to series API...
r1057 QList<QPointF> QXYSeries::points() const
Michal Klocek
Add missing files from previous commit
r466 {
Marek Rosa
Spline series now recalcutes control points on adding/removing data to/from model
r1072 // Q_ASSERT(false);
Michal Klocek
Adds big fat pimpl to series classes...
r938 Q_D(const QXYSeries);
if (d->m_model) {
Michal Klocek
Fixes and improvments to series API...
r1057 QList<QPointF> result;
if (d->m_mapOrientation == Qt::Vertical){
Marek Rosa
QXYSeries: model data orientation added. QBarSeries: some model data function placeholders
r527 // consecutive data is read from model's column
Marek Rosa
XYSeries model support refactored
r1085 if (d->m_mapX >= d->m_model->columnCount() || d->m_mapY >= d->m_model->columnCount())
return result; // mapped columns are not existing
Michal Klocek
Fixes and improvments to series API...
r1057
for(int i = d->m_mapFirst; i< d->m_mapFirst + count(); ++i) {
qreal x = d->m_model->data(d->m_model->index(i, d->m_mapX), Qt::DisplayRole).toReal();
qreal y = d->m_model->data(d->m_model->index(i, d->m_mapY), Qt::DisplayRole).toReal();
result << QPointF(x,y);
}
return result;
}
else{
Marek Rosa
QXYSeries: model data orientation added. QBarSeries: some model data function placeholders
r527 // consecutive data is read from model's row
Marek Rosa
XYSeries model support refactored
r1085 if (d->m_mapX >= d->m_model->rowCount() || d->m_mapY >= d->m_model->rowCount())
return result; // mapped rows are not existing
Michal Klocek
Fixes and improvments to series API...
r1057 for(int i = d->m_mapFirst; i< d->m_mapFirst + count(); ++i) {
Marek Rosa
Spline series now recalcutes control points on adding/removing data to/from model
r1072 qreal x = d->m_model->data(d->m_model->index(d->m_mapX, i), Qt::DisplayRole).toReal();
qreal y = d->m_model->data(d->m_model->index(d->m_mapY, i), Qt::DisplayRole).toReal();
result << QPointF(x,y);
Michal Klocek
Fixes and improvments to series API...
r1057 }
return result;
}
sauimone
minor code review issues. indent, spaces, brackets etc.
r743 } else {
Marek Rosa
QXYSeries: model data orientation added. QBarSeries: some model data function placeholders
r527 // model is not specified, return the data from series' internal data store
Michal Klocek
Fixes and improvments to series API...
r1057 return d->m_points.toList();
sauimone
minor code review issues. indent, spaces, brackets etc.
r743 }
Michal Klocek
Add missing files from previous commit
r466 }
/*!
Returns number of data points within series.
*/
int QXYSeries::count() const
{
Michal Klocek
Adds big fat pimpl to series classes...
r938 Q_D(const QXYSeries);
if (d->m_model) {
if (d->m_mapOrientation == Qt::Vertical) {
Marek Rosa
QXYSeries: support for adding data to model when using custom mapping
r1054 // data is in a column. Return the number of mapped items if the model's column have enough items
// or the number of items that can be mapped
Marek Rosa
XYSeries model support refactored
r1085 if (d->m_mapX >= d->m_model->columnCount() || d->m_mapY >= d->m_model->columnCount())
return 0; // mapped columns are not existing
else if (d->m_mapCount != -1)
Marek Rosa
QXYSeries: support for adding data to model when using custom mapping
r1054 return qMin(d->m_mapCount, qMax(d->m_model->rowCount() - d->m_mapFirst, 0));
else
return qMax(d->m_model->rowCount() - d->m_mapFirst, 0);
sauimone
minor code review issues. indent, spaces, brackets etc.
r743 } else {
Marek Rosa
QXYSeries: support for adding data to model when using custom mapping
r1054 // data is in a row. Return the number of mapped items if the model's row have enough items
// or the number of items that can be mapped
Marek Rosa
XYSeries model support refactored
r1085 if (d->m_mapX >= d->m_model->rowCount() || d->m_mapY >= d->m_model->rowCount())
return 0; // mapped rows are not existing
else if (d->m_mapCount != -1)
Marek Rosa
QXYSeries: support for adding data to model when using custom mapping
r1054 return qMin(d->m_mapCount, qMax(d->m_model->columnCount() - d->m_mapFirst, 0));
else
return qMax(d->m_model->columnCount() - d->m_mapFirst, 0);
Marek Rosa
XYSeries: added support for limited mapping area
r734 }
Jani Honkonen
We have so many stupid warnings that "treat warnings as errors" flag is needed...
r609 }
// model is not specified, return the number of points in the series internal data store
Michal Klocek
Fixes and improvments to series API...
r1057 return d->m_points.count();
Tero Ahola
Added data getter for XY series; example for customizing the looks
r491 }
Michal Klocek
Spline series windows compilation fix
r467 /*!
Michal Klocek
Fixes for docs , adds xyseries docs
r481 Sets \a pen used for drawing points on the chart. If the pen is not defined, the
pen from chart theme is used.
Marek Rosa
Various documentation fixes
r909 \sa QChart::setTheme()
Michal Klocek
Spline series windows compilation fix
r467 */
sauimone
minor code review issues. indent, spaces, brackets etc.
r743 void QXYSeries::setPen(const QPen &pen)
Michal Klocek
Spline series windows compilation fix
r467 {
Michal Klocek
Adds big fat pimpl to series classes...
r938 Q_D(QXYSeries);
if (d->m_pen!=pen) {
d->m_pen = pen;
emit d->updated();
Michal Klocek
Spline series windows compilation fix
r467 }
}
Michal Klocek
Adds big fat pimpl to series classes...
r938 QPen QXYSeries::pen() const
{
Q_D(const QXYSeries);
return d->m_pen;
}
Michal Klocek
Spline series windows compilation fix
r467 /*!
Michal Klocek
Fixes for docs , adds xyseries docs
r481 Sets \a brush used for drawing points on the chart. If the brush is not defined, brush
from chart theme setting is used.
Marek Rosa
Various documentation fixes
r909 \sa QChart::setTheme()
Michal Klocek
Spline series windows compilation fix
r467 */
sauimone
minor code review issues. indent, spaces, brackets etc.
r743 void QXYSeries::setBrush(const QBrush &brush)
Michal Klocek
Spline series windows compilation fix
r467 {
Michal Klocek
Adds big fat pimpl to series classes...
r938 Q_D(QXYSeries);
if (d->m_brush!=brush) {
d->m_brush = brush;
emit d->updated();
Michal Klocek
Spline series windows compilation fix
r467 }
}
Michal Klocek
Adds big fat pimpl to series classes...
r938 QBrush QXYSeries::brush() const
{
Q_D(const QXYSeries);
return d->m_brush;
}
/*!
Sets if data points are \a visible and should be drawn on line.
*/
void QXYSeries::setPointsVisible(bool visible)
{
Q_D(QXYSeries);
if (d->m_pointsVisible != visible){
d->m_pointsVisible = visible;
emit d->updated();
}
}
Tero Ahola
Updated documentation, warnings from legend and area left
r973 /*!
Returns true if drawing the data points of the series is enabled.
*/
Michal Klocek
Adds big fat pimpl to series classes...
r938 bool QXYSeries::pointsVisible() const
{
Q_D(const QXYSeries);
return d->m_pointsVisible;
}
Michal Klocek
Spline series windows compilation fix
r467
Michal Klocek
Add missing files from previous commit
r466 /*!
Stream operator for adding a data \a point to the series.
Jani Honkonen
rename functions add() -> append()
r796 \sa append()
Michal Klocek
Add missing files from previous commit
r466 */
QXYSeries& QXYSeries::operator<< (const QPointF &point)
{
Jani Honkonen
rename functions add() -> append()
r796 append(point);
Michal Klocek
Add missing files from previous commit
r466 return *this;
}
Michal Klocek
Fixes for docs , adds xyseries docs
r481 /*!
Stream operator for adding a list of \a points to the series.
Jani Honkonen
rename functions add() -> append()
r796 \sa append()
Michal Klocek
Fixes for docs , adds xyseries docs
r481 */
Michal Klocek
Fixes and improvments to series API...
r1057 QXYSeries& QXYSeries::operator<< (const QList<QPointF>& points)
Michal Klocek
Fixes for docs , adds xyseries docs
r481 {
Jani Honkonen
rename functions add() -> append()
r796 append(points);
Michal Klocek
Fixes for docs , adds xyseries docs
r481 return *this;
}
Marek Rosa
BarSeries - renamed internal model getter to modelInternal. Some smaller changes to other files to have in headers forward declarations for model related members instead of include
r877 /*!
\fn bool QXYSeries::setModel(QAbstractItemModel *model)
Sets the \a model to be used as a data source
Marek Rosa
Couple docs fixes
r991 \sa setModelMapping()
Marek Rosa
BarSeries - renamed internal model getter to modelInternal. Some smaller changes to other files to have in headers forward declarations for model related members instead of include
r877 */
Michal Klocek
Adds big fat pimpl to series classes...
r938 bool QXYSeries::setModel(QAbstractItemModel *model)
{
Q_D(QXYSeries);
Marek Rosa
Added support for data from model to QBarSeries. Various fixes and small modifications to data from model support to other series
r630 // disconnect signals from old model
Michal Klocek
Adds big fat pimpl to series classes...
r938 if (d->m_model) {
QObject::disconnect(d->m_model, 0, this, 0);
d->m_mapX = -1;
d->m_mapY = -1;
Marek Rosa
PieSeries model support - further refactoring
r1081 d->m_mapFirst = 0;
d->m_mapCount = -1;
Michal Klocek
Adds big fat pimpl to series classes...
r938 d->m_mapOrientation = Qt::Vertical;
Marek Rosa
Added support for data from model to QBarSeries. Various fixes and small modifications to data from model support to other series
r630 }
// set new model
sauimone
minor code review issues. indent, spaces, brackets etc.
r743 if (model) {
Michal Klocek
Adds big fat pimpl to series classes...
r938 d->m_model = model;
Marek Rosa
Added support for data from model to QBarSeries. Various fixes and small modifications to data from model support to other series
r630 return true;
sauimone
minor code review issues. indent, spaces, brackets etc.
r743 } else {
Michal Klocek
Adds big fat pimpl to series classes...
r938 d->m_model = 0;
Marek Rosa
Added support for data from model to QBarSeries. Various fixes and small modifications to data from model support to other series
r630 return false;
}
Marek Rosa
Table model data example
r519 }
Marek Rosa
Added documentation for model related funtions
r900 /*!
Sets the \a modelX to be used as a data source for x coordinate and \a modelY to be used
Michal Klocek
Krazy reported errors...
r974 as a data source for y coordinate. The \a orientation parameter specifies whether the data
Marek Rosa
Added documentation for model related funtions
r900 is in columns or in rows.
Marek Rosa
Couple docs fixes
r991 \sa setModel()
Marek Rosa
Added documentation for model related funtions
r900 */
Marek Rosa
QXYSeries: model data orientation added. QBarSeries: some model data function placeholders
r527 void QXYSeries::setModelMapping(int modelX, int modelY, Qt::Orientation orientation)
{
Michal Klocek
Adds big fat pimpl to series classes...
r938 Q_D(QXYSeries);
if (d->m_model == 0)
Marek Rosa
Added support for data from model to QBarSeries. Various fixes and small modifications to data from model support to other series
r630 return;
Michal Klocek
Adds big fat pimpl to series classes...
r938 d->m_mapX = modelX;
d->m_mapY = modelY;
d->m_mapOrientation = orientation;
Marek Rosa
QXYSeries: support for adding data to model when using custom mapping
r1054
// connect the signals from the model
connect(d->m_model,SIGNAL(dataChanged(QModelIndex,QModelIndex)), d, SLOT(modelUpdated(QModelIndex,QModelIndex)));
Marek Rosa
XYSeries model support refactored
r1085 // if (d->m_mapOrientation == Qt::Vertical) {
connect(d->m_model,SIGNAL(rowsInserted(QModelIndex,int,int)), d, SLOT(modelRowsAdded(QModelIndex,int,int)));
connect(d->m_model,SIGNAL(rowsRemoved(QModelIndex,int,int)), d, SLOT(modelRowsRemoved(QModelIndex,int,int)));
// } else {
connect(d->m_model, SIGNAL(columnsInserted(QModelIndex,int,int)), d, SLOT(modelColumnsAdded(QModelIndex,int,int)));
connect(d->m_model, SIGNAL(columnsRemoved(QModelIndex,int,int)), d, SLOT(modelColumnsRemoved(QModelIndex,int,int)));
// }
Marek Rosa
QXYSeries: support for adding data to model when using custom mapping
r1054 }
void QXYSeries::setModelMappingRange(int first, int count)
{
Q_D(QXYSeries);
Marek Rosa
mapFirst and mapCount now cannot be set to invalid values
r1077 d->m_mapFirst = qMax(first, 0);
d->m_mapCount = qMax(count, -1);
Marek Rosa
Improvements to QSpline model support
r1090 emit d->reinitialized();
Michal Klocek
Adds big fat pimpl to series classes...
r938 }
Marek Rosa
Spline series now recalcutes control points on adding/removing data to/from model
r1072 int QXYSeries::mapX() const
{
Q_D(const QXYSeries);
return d->m_mapX;
}
int QXYSeries::mapY() const
{
Q_D(const QXYSeries);
return d->m_mapY;
}
Michal Klocek
Adds big fat pimpl to series classes...
r938 //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
Marek Rosa
Removed all the unfinished model functionality from XYSeries and BarSeries
r990
Tero Ahola
Renamed QSeries to QAbstractSeries
r988 QXYSeriesPrivate::QXYSeriesPrivate(QXYSeries *q) : QAbstractSeriesPrivate(q),
m_mapX(-1),
m_mapY(-1),
m_pointsVisible(false)
Michal Klocek
Adds big fat pimpl to series classes...
r938 {
}
Michal Klocek
Refactor to use qseries private for implmentation interface...
r943 void QXYSeriesPrivate::scaleDomain(Domain& domain)
{
qreal minX(domain.minX());
qreal minY(domain.minY());
qreal maxX(domain.maxX());
qreal maxY(domain.maxY());
int tickXCount(domain.tickXCount());
int tickYCount(domain.tickYCount());
Michal Klocek
Fix xy series model issues due to API changes
r1059 Q_Q(QXYSeries);
Michal Klocek
Fixes and improvments to series API...
r1057
Michal Klocek
Fix xy series model issues due to API changes
r1059 const QList<QPointF>& points = q->points();
Michal Klocek
Adds default 0,1 domain for emmpty series, update tst_qlineseries
r1070
if(points.isEmpty()){
minX=0.0;
minY=0.0;
maxX=1.0;
maxY=1.0;
}
Michal Klocek
Fix xy series model issues due to API changes
r1059 for (int i = 0; i < points.count(); i++)
{
qreal x = points[i].x();
qreal y = points[i].y();
Michal Klocek
Refactor to use qseries private for implmentation interface...
r943 minX = qMin(minX, x);
minY = qMin(minY, y);
maxX = qMax(maxX, x);
maxY = qMax(maxY, y);
}
Marek Rosa
XYSeries model support refactored
r1085 domain.setRange(minX,maxX,minY,maxY,tickXCount,tickYCount);
Michal Klocek
Refactor to use qseries private for implmentation interface...
r943 }
Michal Klocek
Adds qlegend pimpl...
r950 QList<LegendMarker*> QXYSeriesPrivate::createLegendMarker(QLegend* legend)
{
Q_Q(QXYSeries);
QList<LegendMarker*> list;
return list << new XYLegendMarker(q,legend);
}
Marek Rosa
QXYSeries: support for adding data to model when using custom mapping
r1054 void QXYSeriesPrivate::modelUpdated(QModelIndex topLeft, QModelIndex bottomRight)
{
for (int row = topLeft.row(); row <= bottomRight.row(); row++) {
for (int column = topLeft.column(); column <= bottomRight.column(); column++) {
if (m_mapOrientation == Qt::Vertical) {
if ((column == m_mapX || column == m_mapY) // modified item is in a mapped column
&& row >= m_mapFirst // modfied item in not before first item
&& (m_mapCount == -1 || row < m_mapFirst + m_mapCount)) // map is not limited or item lays before the end of map
emit pointReplaced(row - m_mapFirst);
} else {
if ((row == m_mapX || row == m_mapY) // modified item is in a mapped row
&& column >= m_mapFirst // modfied item in not before first item
&& (m_mapCount == -1 || column < m_mapFirst + m_mapCount)) // map is not limited or item lays before the end of map
emit pointReplaced(column - m_mapFirst);
}
}
}
}
Marek Rosa
XYSeries model support refactored
r1085 void QXYSeriesPrivate::modelRowsAdded(QModelIndex parent, int start, int end)
{
Q_UNUSED(parent);
if (m_mapOrientation == Qt::Vertical)
emit pointsAdded(start, end);
else if (start <= m_mapX || start <= m_mapY)
emit reinitialized();
}
void QXYSeriesPrivate::modelRowsRemoved(QModelIndex parent, int start, int end)
{
Q_UNUSED(parent);
if (m_mapOrientation == Qt::Vertical)
emit pointsRemoved(start, end);
else if (start <= m_mapX || start <= m_mapY)
emit reinitialized();
}
void QXYSeriesPrivate::modelColumnsAdded(QModelIndex parent, int start, int end)
Marek Rosa
QXYSeries: support for adding data to model when using custom mapping
r1054 {
Q_UNUSED(parent);
Marek Rosa
XYSeries model support refactored
r1085 if (m_mapOrientation == Qt::Horizontal)
emit pointsAdded(start, end);
else if (start <= m_mapX || start <= m_mapY)
emit reinitialized();
Marek Rosa
QXYSeries: support for adding data to model when using custom mapping
r1054 }
Marek Rosa
XYSeries model support refactored
r1085 void QXYSeriesPrivate::modelColumnsRemoved(QModelIndex parent, int start, int end)
Marek Rosa
QXYSeries: support for adding data to model when using custom mapping
r1054 {
Q_UNUSED(parent);
Marek Rosa
XYSeries model support refactored
r1085 if (m_mapOrientation == Qt::Horizontal)
emit pointsRemoved(start, end);
else if (start <= m_mapX || start <= m_mapY)
emit reinitialized();
Marek Rosa
QXYSeries: support for adding data to model when using custom mapping
r1054 }
Michal Klocek
Add missing files from previous commit
r466 #include "moc_qxyseries.cpp"
Michal Klocek
Adds big fat pimpl to series classes...
r938 #include "moc_qxyseries_p.cpp"
Michal Klocek
Add missing files from previous commit
r466
QTCOMMERCIALCHART_END_NAMESPACE