{
const QwtPlot *pickerPlot
= plot
();
int min = scaleDiv->lowerBound();
int max = scaleDiv->upperBound();
QRect rect
(0, min,
100,
(max
-min
));
rect.moveTo(p.x(), min);
return rect;
}
void CsmPicker
::drawTracker(QPainter *painter
) const {
const QwtPlot *pickerPlot
= plot
();
int min = scaleDiv->lowerBound() + 5;
int max = scaleDiv->upperBound() - 5;
pen.setStyle(Qt::DotLine);
painter->setPen(pen);
QFont font
= painter
->font
();
painter->setClipRect(trackerRect(font));
painter->drawLine(p.x(), min, p.x(), max);
painter->drawText(p.x(), p.y(), "Test");
if (p.x() < 0) p.setX(0);
emit mouseMoving(p);
}
QRect CsmPicker::trackerRect(const QFont &) const
{
QPoint p = trackerPosition();
const QwtPlot *pickerPlot = plot();
const QwtScaleDiv *scaleDiv = pickerPlot->axisScaleDiv(QwtPlot::yLeft);
int min = scaleDiv->lowerBound();
int max = scaleDiv->upperBound();
QRect rect(0, min, 100, (max-min));
rect.moveTo(p.x(), min);
return rect;
}
void CsmPicker::drawTracker(QPainter *painter) const
{
QPoint p = trackerPosition();
const QwtPlot *pickerPlot = plot();
const QwtScaleDiv *scaleDiv = pickerPlot->axisScaleDiv(QwtPlot::yLeft);
int min = scaleDiv->lowerBound() + 5;
int max = scaleDiv->upperBound() - 5;
QPen pen(QColor(180, 180, 180));
pen.setStyle(Qt::DotLine);
painter->setPen(pen);
QFont font = painter->font();
painter->setClipRect(trackerRect(font));
painter->drawLine(p.x(), min, p.x(), max);
painter->drawText(p.x(), p.y(), "Test");
if (p.x() < 0) p.setX(0);
emit mouseMoving(p);
}
To copy to clipboard, switch view to plain text mode
Bookmarks