|
|
@ -358,6 +358,7 @@ bool ChartsWidget::event(QEvent *event) { |
|
|
|
case QEvent::WindowDeactivate: |
|
|
|
case QEvent::WindowDeactivate: |
|
|
|
case QEvent::FocusIn: |
|
|
|
case QEvent::FocusIn: |
|
|
|
case QEvent::FocusOut: |
|
|
|
case QEvent::FocusOut: |
|
|
|
|
|
|
|
case QEvent::Leave: |
|
|
|
showValueTip(-1); |
|
|
|
showValueTip(-1); |
|
|
|
break; |
|
|
|
break; |
|
|
|
default: |
|
|
|
default: |
|
|
@ -618,7 +619,7 @@ void ChartView::updateSeries(const cabana::Signal *sig) { |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
updateAxisY(); |
|
|
|
updateAxisY(); |
|
|
|
resetChartCache(); |
|
|
|
chart_pixmap = QPixmap(); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
// auto zoom on yaxis
|
|
|
|
// auto zoom on yaxis
|
|
|
@ -874,9 +875,9 @@ void ChartView::paintEvent(QPaintEvent *event) { |
|
|
|
const qreal dpr = viewport()->devicePixelRatioF(); |
|
|
|
const qreal dpr = viewport()->devicePixelRatioF(); |
|
|
|
chart_pixmap = QPixmap(viewport()->size() * dpr); |
|
|
|
chart_pixmap = QPixmap(viewport()->size() * dpr); |
|
|
|
chart_pixmap.setDevicePixelRatio(dpr); |
|
|
|
chart_pixmap.setDevicePixelRatio(dpr); |
|
|
|
chart_pixmap.fill(palette().color(QPalette::Base)); |
|
|
|
|
|
|
|
QPainter p(&chart_pixmap); |
|
|
|
QPainter p(&chart_pixmap); |
|
|
|
p.setRenderHints(QPainter::Antialiasing); |
|
|
|
p.setRenderHints(QPainter::Antialiasing); |
|
|
|
|
|
|
|
drawBackground(&p, viewport()->rect()); |
|
|
|
scene()->setSceneRect(viewport()->rect()); |
|
|
|
scene()->setSceneRect(viewport()->rect()); |
|
|
|
scene()->render(&p); |
|
|
|
scene()->render(&p); |
|
|
|
} |
|
|
|
} |
|
|
@ -891,6 +892,10 @@ void ChartView::paintEvent(QPaintEvent *event) { |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void ChartView::drawBackground(QPainter *painter, const QRectF &rect) { |
|
|
|
|
|
|
|
painter->fillRect(rect, palette().color(QPalette::Base)); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
void ChartView::drawForeground(QPainter *painter, const QRectF &rect) { |
|
|
|
void ChartView::drawForeground(QPainter *painter, const QRectF &rect) { |
|
|
|
// draw time line
|
|
|
|
// draw time line
|
|
|
|
qreal x = chart()->mapToPosition(QPointF{cur_sec, 0}).x(); |
|
|
|
qreal x = chart()->mapToPosition(QPointF{cur_sec, 0}).x(); |
|
|
|