66 QPainter painter(
this);
72 float fPeak =
static_cast<float>(
m_size.width() ) * fSum /
static_cast<float>(
m_recentValues.size() );
73 float fBorderWidth = 2;
75 QColor colorGradientGreen( Qt::green );
76 QColor colorGradientLightGreen( 175, 255, 0 );
77 QColor colorGradientYellow( Qt::yellow );
78 QColor colorGradientOrange( 255, 125, 0 );
79 QColor colorGradientRed( Qt::red );
80 QColor colorBorder( QColor( 0, 0, 0 ) );
82 QLinearGradient gradient = QLinearGradient( 0, 0,
m_size.width(),
m_size.height() );
83 gradient.setColorAt( 0.0, colorGradientGreen );
84 gradient.setColorAt( 0.5, colorGradientLightGreen );
85 gradient.setColorAt( 0.7, colorGradientYellow );
86 gradient.setColorAt( 0.8, colorGradientOrange );
87 gradient.setColorAt( 0.92, colorGradientRed );
89 painter.fillRect( QRect( 0, 0,
m_size.width(),
m_size.height() ),
91 painter.fillRect( QRectF( fBorderWidth / 2, fBorderWidth / 2, fPeak,
m_size.height() - fBorderWidth ), QBrush( gradient ) );
95 pen.setColor( colorGradientRed );
97 pen.setColor( colorBorder );
99 pen.setWidth( fBorderWidth );
100 painter.setPen( pen );
103 painter.drawRoundedRect( QRect( fBorderWidth / 2, fBorderWidth / 2,
m_size.width() - fBorderWidth,
104 m_size.height() - fBorderWidth ), 1, 1 );
110 painter.setPen( pen );
111 float fXX = fDistance;
112 while ( fXX <
m_size.width() - fBorderWidth ) {
113 painter.drawLine( fXX, fBorderWidth, fXX,
m_size.height() - fBorderWidth );