##// END OF EJS Templates
reintroducing clicked and hovered signals to barset. Makes some things easier on QML api
reintroducing clicked and hovered signals to barset. Makes some things easier on QML api

File last commit:

r1321:c4f4e0f381ad
r1490:b134c8a9174e
Show More
chartdataset_p.h
93 lines | 2.8 KiB | text/x-c | CLexer
/****************************************************************************
**
** 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$
**
****************************************************************************/
// W A R N I N G
// -------------
//
// This file is not part of the QtCommercial Chart API. It exists purely as an
// implementation detail. This header file may change from version to
// version without notice, or even be removed.
//
// We mean it.
#ifndef CHARTDATASET_P_H
#define CHARTDATASET_P_H
#include "qabstractseries.h"
#include "domain_p.h"
#include <QVector>
QTCOMMERCIALCHART_BEGIN_NAMESPACE
class QAxis;
class QTCOMMERCIALCHART_AUTOTEST_EXPORT ChartDataSet : public QObject
{
Q_OBJECT
public:
ChartDataSet(QChart* parent=0);
virtual ~ChartDataSet();
void addSeries(QAbstractSeries* series,QAxis *axisY = 0);
QAxis* removeSeries(QAbstractSeries* series);
void removeAllSeries();
void updateSeries(QAbstractSeries* series);
void zoomInDomain(const QRectF& rect, const QSizeF& size);
void zoomOutDomain(const QRectF& rect, const QSizeF& size);
void scrollDomain(qreal dx,qreal dy,const QSizeF& size);
int seriesCount(QAbstractSeries::SeriesType type);
int seriesIndex(QAbstractSeries *series);
Domain* domain(QAbstractSeries* series) const;
Domain* domain(QAxis* axis) const;
QAxis* axisX() const { return m_axisX; }
QAxis* axisY(QAbstractSeries *series = 0) const;
QList<QAbstractSeries*> series() const;
Q_SIGNALS:
void seriesAdded(QAbstractSeries* series, Domain* domain);
void seriesRemoved(QAbstractSeries* series);
void seriesUpdated(QAbstractSeries* series);
void axisAdded(QAxis* axis,Domain* domain);
void axisRemoved(QAxis* axis);
private:
QStringList createLabels(QAxis* axis,qreal min, qreal max);
void calculateDomain(QAbstractSeries* series,Domain* domain);
private:
QMap<QAbstractSeries *, QAxis *> m_seriesAxisMap;
QMap<QAxis*, Domain *> m_axisDomainMap;
QMap<int, QAbstractSeries *> m_indexSeriesMap;
QAxis* m_axisX;
QAxis* m_axisY;
int m_domainIndex;
bool m_axisXInitialized;
bool m_axisYInitialized;
};
QTCOMMERCIALCHART_END_NAMESPACE
#endif /* CHARTENGINE_P_H_ */