diff options
Diffstat (limited to 'examples/charts/callout/view.cpp')
-rw-r--r-- | examples/charts/callout/view.cpp | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/examples/charts/callout/view.cpp b/examples/charts/callout/view.cpp index 1c90eef0..9c1eca69 100644 --- a/examples/charts/callout/view.cpp +++ b/examples/charts/callout/view.cpp @@ -98,6 +98,8 @@ void View::resizeEvent(QResizeEvent *event) m_chart->resize(event->size()); m_coordX->setPos(m_chart->size().width()/2 - 50, m_chart->size().height() - 20); m_coordY->setPos(m_chart->size().width()/2 + 50, m_chart->size().height() - 20); + foreach (Callout *callout, m_callouts) + callout->updateGeometry(); } QGraphicsView::resizeEvent(event); } @@ -111,6 +113,7 @@ void View::mouseMoveEvent(QMouseEvent *event) void View::keepCallout() { + m_callouts.append(m_tooltip); m_tooltip = new Callout(m_chart); } @@ -121,10 +124,9 @@ void View::tooltip(QPointF point, bool state) if (state) { m_tooltip->setText(QString("X: %1 \nY: %2 ").arg(point.x()).arg(point.y())); - QXYSeries *series = qobject_cast<QXYSeries *>(sender()); - m_tooltip->setAnchor(m_chart->mapToPosition(point, series)); - m_tooltip->setPos(m_chart->mapToPosition(point, series) + QPoint(10, -50)); + m_tooltip->setAnchor(point); m_tooltip->setZValue(11); + m_tooltip->updateGeometry(); m_tooltip->show(); } else { m_tooltip->hide(); |