##// END OF EJS Templates
fixed bug in category implementation. model now owns the category and sets
fixed bug in category implementation. model now owns the category and sets

File last commit:

r173:5bd6f6e4373b
r173:5bd6f6e4373b
Show More
barchartmodel_p.h
53 lines | 1.2 KiB | text/x-c | CLexer
#ifndef BARCHARTMODEL_H
#define BARCHARTMODEL_H
#include <QObject>
#include "qchartglobal.h"
QTCOMMERCIALCHART_BEGIN_NAMESPACE
// Model for bar chart. Internal class.
// TODO: Implement as QAbstractItemModel?
class QBarSet;
class QBarCategory;
class BarChartModel : public QObject //, public QAbstractItemModel
{
Q_OBJECT
public:
explicit BarChartModel(QBarCategory *category, QObject *parent = 0);
~BarChartModel();
QBarCategory& category();
void addBarSet(QBarSet *set);
void removeBarSet(QBarSet *set);
int countSets(); // Number of sets in model
int countCategories(); // Number of categories
int countTotalItems(); // Total items in all sets. Includes empty items.
qreal max(); // Maximum value of all sets
qreal min(); // Minimum value of all sets
qreal valueAt(int set, int category);
qreal categorySum(int column);
qreal maxCategorySum(); // returns maximum sum of sets in all categories.
QString label(int category);
signals:
void modelUpdated();
public slots:
private:
QList<QBarSet*> mDataModel;
QBarCategory* mCategory; // Owned
};
QTCOMMERCIALCHART_END_NAMESPACE
#endif // BARCHARTMODEL_H