- // draw pointer
- if (showPointer()) {
- QPolygon pa(3);
- pa.setPoints(3, value - 6, 0, value + 6, 0, value/*+0*/, 8);
- p.setBrush(QBrush(Qt::yellow));
- p.drawPolygon(pa);
+int SmallRuler::position() const
+{
+ return m_cursorFramePosition;
+}
+
+//virtual
+void SmallRuler::resizeEvent(QResizeEvent *)
+{
+ adjustScale(m_maxval);
+}
+
+void SmallRuler::updatePixmap()
+{
+ m_pixmap = QPixmap(width(), height());
+ m_pixmap.fill(palette().window().color());
+ QPainter p(&m_pixmap);
+ double f, fend;
+
+ const int zoneStart = (int)(m_zoneStart * m_scale);
+ const int zoneEnd = (int)(m_zoneEnd * m_scale);
+ p.setPen(Qt::NoPen);
+ p.setBrush(m_zoneBrush.brush(this));
+ p.drawRect(zoneStart, height() / 2 - 1, zoneEnd - zoneStart, height() / 2);
+
+ // draw ruler
+ p.setPen(palette().text().color());
+ // draw the little marks
+ fend = m_scale * m_small;
+ if (fend > 2) for (f = 0; f < width(); f += fend) {
+ p.drawLine((int)f, 0, (int)f, 3);
+ }
+
+ // draw medium marks
+ fend = m_scale * m_medium;
+ if (fend > 2) for (f = 0; f < width(); f += fend) {
+ p.drawLine((int)f, 0, (int)f, 6);