From ed3f6e6d65ab8497e66971bc091aa366127b3956 Mon Sep 17 00:00:00 2001 From: Daniel Teske <daniel.teske@nokia.com> Date: Wed, 22 Feb 2012 14:16:53 +0100 Subject: [PATCH] Optimize TaskModel::updateTaskLineNumber Change-Id: I250b91d7dffa6a165765c08b77f004010e7fa8b3 Reviewed-by: Tobias Hunger <tobias.hunger@nokia.com> --- src/plugins/projectexplorer/taskmodel.cpp | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/src/plugins/projectexplorer/taskmodel.cpp b/src/plugins/projectexplorer/taskmodel.cpp index dcebb02f6b3..7a7a73360be 100644 --- a/src/plugins/projectexplorer/taskmodel.cpp +++ b/src/plugins/projectexplorer/taskmodel.cpp @@ -150,12 +150,13 @@ void TaskModel::removeTask(const Task &task) void TaskModel::updateTaskLineNumber(unsigned int id, int line) { - for (int i = 0; i < m_tasks.count(); ++i) { - if (m_tasks.at(i).taskId == id) { - m_tasks[i].movedLine = line; - emit dataChanged(index(i, 0), index(i, 0)); - return; - } + QList<Task>::iterator it = qLowerBound(m_tasks.begin(), m_tasks.end(), id, sortById); + QTC_ASSERT(it != m_tasks.end(), return) + int i = it - m_tasks.begin(); + if (m_tasks.at(i).taskId == id) { + m_tasks[i].movedLine = line; + emit dataChanged(index(i, 0), index(i, 0)); + return; } } -- GitLab