60 QPainter painter(
this);
61 painter.fillRect(rect(), Qt::black);
63 if(
fMax <= 0.0f)
return;
65 QColor axisCol(Qt::gray);
67 painter.setPen(axisCol);
71 int base = std::floor(std::log10(
fMax));
72 float val = std::pow(10.0f, base);
74 const QString units = tr(
"kB/s");
75 const float yMarginText = 2.0;
78 painter.setPen(axisCol);
79 painter.drawText(
XMARGIN,
YMARGIN + h - h * val /
fMax-yMarginText, QString(
"%1 %2").arg(val).arg(units));
80 for(
float y = val; y <
fMax; y += val) {
85 if(
fMax / val <= 3.0f) {
86 axisCol = axisCol.darker();
87 val = pow(10.0f, base - 1);
88 painter.setPen(axisCol);
89 painter.drawText(
XMARGIN,
YMARGIN + h - h * val /
fMax-yMarginText, QString(
"%1 %2").arg(val).arg(units));
91 for(
float y = val; y <
fMax; y += val,
count++) {
100 painter.setRenderHint(QPainter::Antialiasing);
104 painter.fillPath(p, QColor(0, 255, 0, 128));
105 painter.setPen(Qt::green);
111 painter.fillPath(p, QColor(255, 0, 0, 128));
112 painter.setPen(Qt::red);