From 54f5ef3e5895f4f4f19d91074e581040616f3786 Mon Sep 17 00:00:00 2001 From: Ulf Hermann Date: Thu, 4 Dec 2014 15:06:17 +0100 Subject: [PATCH] QmlProfiler: Optimize row lookup in timeline renderer If the category is collapsed we just have to divide by defaultRowHeight as rows cannot be resized then. Change-Id: I147363a879c9756030b6b7da5cbce7fc2f3e9b47 Reviewed-by: Kai Koehne --- src/plugins/qmlprofiler/timelinerenderer.cpp | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/plugins/qmlprofiler/timelinerenderer.cpp b/src/plugins/qmlprofiler/timelinerenderer.cpp index 4a30a8d548a..4d497bb5a55 100644 --- a/src/plugins/qmlprofiler/timelinerenderer.cpp +++ b/src/plugins/qmlprofiler/timelinerenderer.cpp @@ -377,11 +377,13 @@ void TimelineRenderer::drawNotes(QPainter *p) int TimelineRenderer::rowFromPosition(int y) { - int ret = 0; + if (!m_model->expanded()) + return y / TimelineModel::defaultRowHeight(); - for (int row = 0; row < m_model->rowCount(); ++row) { - y -= m_model->rowHeight(row); - if (y < 0) return ret; + int ret = 0; + for (int row = 0; row < m_model->expandedRowCount(); ++row) { + y -= m_model->expandedRowHeight(row); + if (y <= 0) return ret; ++ret; }