##// END OF EJS Templates
Adaptive layout to legend. Tries to fit all items inside given maximum size
Adaptive layout to legend. Tries to fit all items inside given maximum size

File last commit:

r592:56a808b04750
r626:b05202e4f2ef
Show More
barpresenter.cpp
96 lines | 3.0 KiB | text/x-c | CppLexer
sauimone
added _p to private class headers
r381 #include "barpresenter_p.h"
sauimone
renamed bar.h to bar_p.h
r118 #include "bar_p.h"
sauimone
Floating values to bar charts
r263 #include "barvalue_p.h"
sauimone
barchart separators fixed, layout fixed
r505 #include "separator_p.h"
sauimone
Added pen & brush to QBarSet
r214 #include "qbarset.h"
sauimone
Integrating bar chart. Cleaned up old implementation. TODO: show this in test application. how?
r56 #include <QDebug>
QTCOMMERCIALCHART_BEGIN_NAMESPACE
sauimone
Labels for barchart to axis
r487 BarPresenter::BarPresenter(QBarSeries *series, QChart *parent) :
sauimone
moved tooltip to presenter
r288 BarPresenterBase(series, parent)
sauimone
Integrating bar chart. Cleaned up old implementation. TODO: show this in test application. how?
r56 {
}
sauimone
Common naming convention for barcharts
r216 void BarPresenter::layoutChanged()
sauimone
Integrating bar chart. Cleaned up old implementation. TODO: show this in test application. how?
r56 {
// Scale bars to new layout
// Layout for bars:
sauimone
review fixes. countCategories() -> categoryCount(). countSets -> barsetCount()
r366 if (mSeries->barsetCount() <= 0) {
sauimone
fixed bug in category implementation. model now owns the category and sets
r173 qDebug() << "No sets in model!";
sauimone
model prototyping for bar chart
r159 return;
}
sauimone
Integrating bar chart. Cleaned up old implementation. TODO: show this in test application. how?
r56
sauimone
bug fix in bar charts. Crashed, if layout was set before data. Also integrated to test app.
r165 if (childItems().count() == 0) {
sauimone
Bug fix for bar presenters. It appears that order of childItems may change. Relying on order caused crash
r256 qDebug() << "WARNING: BarPresenter::layoutChanged called before graphics items are created!";
sauimone
bug fix in bar charts. Crashed, if layout was set before data. Also integrated to test app.
r165 return;
}
sauimone
Fixed layout for barcharts
r473 // Use temporary qreals for accurancy (we might get some compiler warnings... :)
sauimone
review fixes. countCategories() -> categoryCount(). countSets -> barsetCount()
r366 int categoryCount = mSeries->categoryCount();
int setCount = mSeries->barsetCount();
sauimone
Integrating bar chart. Cleaned up old implementation. TODO: show this in test application. how?
r56
sauimone
bar chart layout fixing
r99 qreal tW = mWidth;
qreal tH = mHeight;
sauimone
moved tooltip to presenter
r288 qreal tM = mSeries->max();
sauimone
bar chart layout fixing
r99 qreal scale = (tH/tM);
sauimone
Fixed layout for barcharts
r473 qreal tC = categoryCount + 1;
sauimone
barchart separators fixed, layout fixed
r505 qreal categoryWidth = tW/tC;
mBarWidth = categoryWidth / (setCount+1);
sauimone
bar chart layout fixing
r99
sauimone
Improved bar chart series
r71 int itemIndex(0);
sauimone
Floating values to bar charts
r263 for (int category=0; category < categoryCount; category++) {
sauimone
minor. barchart layout fix
r570 qreal xPos = categoryWidth * category + categoryWidth /2 + mBarWidth/2;
sauimone
theme interface to barcharts. some minor fixes
r113 qreal yPos = mHeight;
sauimone
brush support for bargroups
r183 for (int set = 0; set < setCount; set++) {
sauimone
moved tooltip to presenter
r288 qreal barHeight = mSeries->valueAt(set,category) * scale;
sauimone
Bug fix for bar presenters. It appears that order of childItems may change. Relying on order caused crash
r256 Bar* bar = mBars.at(itemIndex);
sauimone
bar chart layout fixing
r99
// TODO: width settable per bar?
sauimone
Fixed layout for barcharts
r473 bar->resize(mBarWidth, barHeight);
sauimone
review fix: Removed iterator from barseries. Remove const from brush and pen. Renamed setters for tooltip, floating values and separators
r357 bar->setBrush(mSeries->barsetAt(set)->brush());
sauimone
moved tooltip to presenter
r288 bar->setPos(xPos, yPos-barHeight);
sauimone
bar chart layout fixing
r99 itemIndex++;
sauimone
Fixed layout for barcharts
r473 xPos += mBarWidth;
sauimone
bar chart layout fixing
r99 }
}
sauimone
commented out separatos. feature, we dont need?
r592 /*
sauimone
barchart separators fixed, layout fixed
r505 // Position separators
sauimone
minor. barchart layout fix
r570 qreal xPos = categoryWidth + categoryWidth/2;
sauimone
barchart separators fixed, layout fixed
r505 for (int s=0; s < mSeparators.count(); s++) {
Separator* sep = mSeparators.at(s);
sep->setPos(xPos,0);
sep->setSize(QSizeF(1,mHeight));
sauimone
better use of gradients in barcharts
r512 sep->setColor(QColor(255,0,0,255)); // TODO: color for separations from theme
sauimone
barchart separators fixed, layout fixed
r505 xPos += categoryWidth;
}
sauimone
commented out separatos. feature, we dont need?
r592 */
sauimone
Floating values to bar charts
r263 // Position floating values
itemIndex = 0;
sauimone
review fixes. countCategories() -> categoryCount(). countSets -> barsetCount()
r366 for (int category=0; category < mSeries->categoryCount(); category++) {
sauimone
minor. barchart layout fix
r570 qreal xPos = categoryWidth * category + categoryWidth/2 + mBarWidth;
sauimone
Floating values to bar charts
r263 qreal yPos = mHeight;
sauimone
review fixes. countCategories() -> categoryCount(). countSets -> barsetCount()
r366 for (int set=0; set < mSeries->barsetCount(); set++) {
sauimone
moved tooltip to presenter
r288 qreal barHeight = mSeries->valueAt(set,category) * scale;
sauimone
Floating values to bar charts
r263 BarValue* value = mFloatingValues.at(itemIndex);
sauimone
better use of gradients in barcharts
r512 QBarSet* barSet = mSeries->barsetAt(set);
value->resize(100,50); // TODO: proper layout for this.
sauimone
updated barchart examples. minor fixes
r276 value->setPos(xPos, yPos-barHeight/2);
sauimone
better use of gradients in barcharts
r512 value->setPen(barSet->floatingValuePen());
sauimone
Floating values to bar charts
r263
sauimone
moved tooltip to presenter
r288 if (mSeries->valueAt(set,category) != 0) {
value->setValueString(QString::number(mSeries->valueAt(set,category)));
sauimone
updated barchart examples. minor fixes
r276 } else {
value->setValueString(QString(""));
}
sauimone
Floating values to bar charts
r263
itemIndex++;
sauimone
Fixed layout for barcharts
r473 xPos += mBarWidth;
sauimone
Floating values to bar charts
r263 }
}
sauimone
Integrating bar chart. Cleaned up old implementation. TODO: show this in test application. how?
r56 }
sauimone
added _p to private class headers
r381 #include "moc_barpresenter_p.cpp"
sauimone
moved tooltip to presenter
r288
sauimone
Integrating bar chart. Cleaned up old implementation. TODO: show this in test application. how?
r56 QTCOMMERCIALCHART_END_NAMESPACE