##// END OF EJS Templates
Declarative series classed now derived from QSeries childs
Declarative series classed now derived from QSeries childs

File last commit:

r789:a31eb092569c
r789:a31eb092569c
Show More
declarativepieseries.cpp
43 lines | 1.1 KiB | text/x-c | CppLexer
/ qmlplugin / declarativepieseries.cpp
#include "declarativepieseries.h"
#include "declarativechart.h"
#include "qchart.h"
QTCOMMERCIALCHART_BEGIN_NAMESPACE
DeclarativePieSeries::DeclarativePieSeries(QObject *parent) :
QPieSeries(parent),
m_chart(0)
{
}
void DeclarativePieSeries::classBegin()
{
}
void DeclarativePieSeries::componentComplete()
{
DeclarativeChart *declarativeChart = qobject_cast<DeclarativeChart *>(parent());
if (declarativeChart) {
QChart *chart = qobject_cast<QChart *>(declarativeChart->m_chart);
Q_ASSERT(chart);
qDebug() << "parent for pie:" << chart;
chart->addSeries(this);
}
}
QDeclarativeListProperty<QPieSlice> DeclarativePieSeries::slices()
{
return QDeclarativeListProperty<QPieSlice>(this, 0, &DeclarativePieSeries::appendSlice);
}
void DeclarativePieSeries::appendSlice(QDeclarativeListProperty<QPieSlice> *list,
QPieSlice *slice)
{
DeclarativePieSeries *series = qobject_cast<DeclarativePieSeries *>(list->object);
if (series)
series->add(slice->value(), slice->label());
}
#include "moc_declarativepieseries.cpp"
QTCOMMERCIALCHART_END_NAMESPACE