##// END OF EJS Templates
Refactored for MVP...
Refactored for MVP * splits presentation logic and domain model * adds chartpresenter and chartdataset * add signal hadnling to all bar series

File last commit:

r115:8cafc623ea10
r139:167329998526
Show More
qpieseries_p.h
45 lines | 1.2 KiB | text/x-c | CLexer
#ifndef PIESERIESPRIVATE_H
#define PIESERIESPRIVATE_H
#include "chartitem_p.h"
#include "charttheme_p.h"
#include "qpieseries.h"
#include <QRectF>
#include <QColor>
class QGraphicsItem;
QTCOMMERCIALCHART_BEGIN_NAMESPACE
class PieSlice;
class QPieSeriesPrivate : public ChartItem, public ChartThemeObserver
{
public:
// TODO: use a generic data class instead of x and y
QPieSeriesPrivate(QGraphicsItem *parent);
~QPieSeriesPrivate();
public: // from ChartItem
void setSize(const QSizeF &size);
void setPlotDomain(const PlotDomain& data);
// This is a dummy QGraphicsItem; dummy implementation
QRectF boundingRect() const { return parentItem()->boundingRect(); }
// This is a dummy QGraphicsItem; no implementation
void paint(QPainter *, const QStyleOptionGraphicsItem *, QWidget *) {}
public: // from ChartThemeObserver
void themeChanged(ChartTheme *theme);
public:
bool setData(QList<qreal> data);
void resizeSlices(QRectF rect);
QList<qreal> m_data;
QList<PieSlice*> m_slices;
QRectF m_chartSize;
qreal m_sizeFactor;
QPieSeries::PiePosition m_position;
ChartTheme *m_chartTheme;
};
QTCOMMERCIALCHART_END_NAMESPACE
#endif // PIESERIESPRIVATE_H