Hi, I have reimplemented QwtScaleDraw.
When I start plotting data I would like the current time to be displayed. Not the time when the application started.
I reset my QTime, It does eventually display the right time after the plot starts to auto scale.
Thanks in advance
Brendan
{
public:
TimeScaleDraw();
void start();
virtual QwtText label
(double) const;
private:
};
TimeScaleDraw::TimeScaleDraw()
{
start();
}
QwtText TimeScaleDraw
::label(double v
) const {
QTime upTime
= m_base_time.
addMSecs((int)v
);
return upTime.toString("H:mm:ss.zzz");
}
void TimeScaleDraw::start()
{
m_base_time.start();
//TODO: DO SOMETHING HERE TO REFRESH QwtScaleDraw???
}
class TimeScaleDraw: public QwtScaleDraw
{
public:
TimeScaleDraw();
void start();
virtual QwtText label(double) const;
private:
QTime m_base_time;
};
TimeScaleDraw::TimeScaleDraw()
{
start();
}
QwtText TimeScaleDraw::label(double v) const
{
QTime upTime = m_base_time.addMSecs((int)v);
return upTime.toString("H:mm:ss.zzz");
}
void TimeScaleDraw::start()
{
m_base_time.start();
//TODO: DO SOMETHING HERE TO REFRESH QwtScaleDraw???
}
To copy to clipboard, switch view to plain text mode
Bookmarks