@@ -29,6 +29,16 void BarChartModel::removeBarSet(QBarSet *set) | |||||
29 | } |
|
29 | } | |
30 | } |
|
30 | } | |
31 |
|
31 | |||
|
32 | void BarChartModel::insertBarSet(int i, QBarSet *set) | |||
|
33 | { | |||
|
34 | mDataModel.insert(i, set); | |||
|
35 | } | |||
|
36 | ||||
|
37 | void BarChartModel::insertCategory(int i, QString category) | |||
|
38 | { | |||
|
39 | mCategory.insert(i, category); | |||
|
40 | } | |||
|
41 | ||||
32 | QBarSet* BarChartModel::setAt(int index) |
|
42 | QBarSet* BarChartModel::setAt(int index) | |
33 | { |
|
43 | { | |
34 | return mDataModel.at(index); |
|
44 | return mDataModel.at(index); |
@@ -22,6 +22,8 public: | |||||
22 | QStringList category(); |
|
22 | QStringList category(); | |
23 | void addBarSet(QBarSet *set); |
|
23 | void addBarSet(QBarSet *set); | |
24 | void removeBarSet(QBarSet *set); |
|
24 | void removeBarSet(QBarSet *set); | |
|
25 | void insertBarSet(int i, QBarSet *set); | |||
|
26 | void insertCategory(int i, QString category); | |||
25 | QBarSet *setAt(int index); |
|
27 | QBarSet *setAt(int index); | |
26 | QList<QBarSet*> barSets(); |
|
28 | QList<QBarSet*> barSets(); | |
27 |
|
29 |
@@ -10,6 +10,7 BarPresenter::BarPresenter(QBarSeries *series, QChart *parent) : | |||||
10 | BarPresenterBase(series, parent) |
|
10 | BarPresenterBase(series, parent) | |
11 | { |
|
11 | { | |
12 | connect(series, SIGNAL(updatedBars()), this, SLOT(layoutChanged())); |
|
12 | connect(series, SIGNAL(updatedBars()), this, SLOT(layoutChanged())); | |
|
13 | connect(series, SIGNAL(restructuredBar(int)), this, SLOT(handleModelChanged(int))); | |||
13 | } |
|
14 | } | |
14 |
|
15 | |||
15 | void BarPresenter::layoutChanged() |
|
16 | void BarPresenter::layoutChanged() |
@@ -69,6 +69,17 void QBarSeries::removeBarSet(QBarSet *set) | |||||
69 | mModel->removeBarSet(set); |
|
69 | mModel->removeBarSet(set); | |
70 | } |
|
70 | } | |
71 |
|
71 | |||
|
72 | void QBarSeries::insertBarSet(int i, QBarSet *set) | |||
|
73 | { | |||
|
74 | mModel->insertBarSet(i, set); | |||
|
75 | // emit barsetChanged(); | |||
|
76 | } | |||
|
77 | ||||
|
78 | void QBarSeries::insertCategory(int i, QString category) | |||
|
79 | { | |||
|
80 | mModel->insertCategory(i, category); | |||
|
81 | } | |||
|
82 | ||||
72 | /*! |
|
83 | /*! | |
73 | Returns number of sets in series. |
|
84 | Returns number of sets in series. | |
74 | */ |
|
85 | */ | |
@@ -311,9 +322,25 void QBarSeries::modelUpdated(QModelIndex topLeft, QModelIndex bottomRight) | |||||
311 | } |
|
322 | } | |
312 | } |
|
323 | } | |
313 |
|
324 | |||
314 |
void QBarSeries::modelDataAdded(QModelIndex /*parent*/, int |
|
325 | void QBarSeries::modelDataAdded(QModelIndex /*parent*/, int start, int /*end*/) | |
315 | { |
|
326 | { | |
316 | // |
|
327 | if (m_mapOrientation == Qt::Vertical) | |
|
328 | { | |||
|
329 | insertCategory(start, QString("Row: %1").arg(start + 1)); | |||
|
330 | for (int i = 0; i <= m_mapBarTop - m_mapBarBottom; i++) | |||
|
331 | { | |||
|
332 | barsetAt(i)->insertValue(start, m_model->data(m_model->index(start, i), Qt::DisplayRole).toDouble()); | |||
|
333 | } | |||
|
334 | } | |||
|
335 | else | |||
|
336 | { | |||
|
337 | insertCategory(start, QString("Column: %1").arg(start + 1)); | |||
|
338 | for (int i = 0; i <= m_mapBarTop - m_mapBarBottom; i++) | |||
|
339 | { | |||
|
340 | barsetAt(i)->insertValue(start, m_model->data(m_model->index(i, start), Qt::DisplayRole).toDouble()); | |||
|
341 | } | |||
|
342 | } | |||
|
343 | emit restructuredBar(1); | |||
317 | } |
|
344 | } | |
318 |
|
345 | |||
319 | void QBarSeries::modelDataRemoved(QModelIndex /*parent*/, int /*start*/, int /*end*/) |
|
346 | void QBarSeries::modelDataRemoved(QModelIndex /*parent*/, int /*start*/, int /*end*/) |
@@ -21,6 +21,8 public: | |||||
21 |
|
21 | |||
22 | void addBarSet(QBarSet *set); // Takes ownership of set |
|
22 | void addBarSet(QBarSet *set); // Takes ownership of set | |
23 | void removeBarSet(QBarSet *set); // Releases ownership, doesn't delete set |
|
23 | void removeBarSet(QBarSet *set); // Releases ownership, doesn't delete set | |
|
24 | void insertBarSet(int i, QBarSet *set); | |||
|
25 | void insertCategory(int i, QString category); | |||
24 | int barsetCount(); |
|
26 | int barsetCount(); | |
25 | int categoryCount(); |
|
27 | int categoryCount(); | |
26 | QList<QBarSet*> barSets(); |
|
28 | QList<QBarSet*> barSets(); | |
@@ -51,6 +53,7 signals: | |||||
51 |
|
53 | |||
52 | // |
|
54 | // | |
53 | void updatedBars(); |
|
55 | void updatedBars(); | |
|
56 | void restructuredBar(int); | |||
54 |
|
57 | |||
55 | // TODO: internal signals, these to private implementation. |
|
58 | // TODO: internal signals, these to private implementation. | |
56 | // TODO: TO PIMPL ---> |
|
59 | // TODO: TO PIMPL ---> |
@@ -86,6 +86,11 QBarSet& QBarSet::operator << (const qreal &value) | |||||
86 | return *this; |
|
86 | return *this; | |
87 | } |
|
87 | } | |
88 |
|
88 | |||
|
89 | void QBarSet::insertValue(int i, qreal value) | |||
|
90 | { | |||
|
91 | mValues.insert(i, value); | |||
|
92 | } | |||
|
93 | ||||
89 | /*! |
|
94 | /*! | |
90 | Returns count of values in set. |
|
95 | Returns count of values in set. | |
91 | */ |
|
96 | */ |
@@ -16,6 +16,7 public: | |||||
16 | void setName(QString name); |
|
16 | void setName(QString name); | |
17 | QString name(); |
|
17 | QString name(); | |
18 | QBarSet& operator << (const qreal &value); // appends new value to set |
|
18 | QBarSet& operator << (const qreal &value); // appends new value to set | |
|
19 | void insertValue(int i, qreal value); | |||
19 |
|
20 | |||
20 | // TODO: remove indices eventually. Use as internal? |
|
21 | // TODO: remove indices eventually. Use as internal? | |
21 | int count(); // count of values in set |
|
22 | int count(); // count of values in set |
General Comments 0
You need to be logged in to leave comments.
Login now