/**************************************************************************** ** ** 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$ ** ****************************************************************************/ #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(parent()); if (declarativeChart) { QChart *chart = qobject_cast(declarativeChart->m_chart); Q_ASSERT(chart); qDebug() << "parent for pie:" << chart; chart->addSeries(this); } } QDeclarativeListProperty DeclarativePieSeries::slices() { return QDeclarativeListProperty(this, 0, &DeclarativePieSeries::appendSlice); } void DeclarativePieSeries::appendSlice(QDeclarativeListProperty *list, QPieSlice *slice) { DeclarativePieSeries *series = qobject_cast(list->object); if (series) series->append(slice->value(), slice->label()); } #include "moc_declarativepieseries.cpp" QTCOMMERCIALCHART_END_NAMESPACE