summaryrefslogtreecommitdiff
path: root/src/plugins/cpptools/cppcodecompletion.cpp
diff options
context:
space:
mode:
authorRoberto Raggi <roberto.raggi@nokia.com>2010-05-26 15:14:50 +0200
committerRoberto Raggi <roberto.raggi@nokia.com>2010-05-26 15:14:50 +0200
commitd702119dca0600f4e75d08984733d0ceb370c8d9 (patch)
tree841fd8f7335848d72f1839e0f63bc743127cfcdc /src/plugins/cpptools/cppcodecompletion.cpp
parent30e1d00725f415c543fbd2ec3122d0e737ae573a (diff)
downloadqt-creator-d702119dca0600f4e75d08984733d0ceb370c8d9.tar.gz
Revert "Sort the items lazily."
This reverts commit 13a721d985aa04de3ded3c3049179512469ec0f7.
Diffstat (limited to 'src/plugins/cpptools/cppcodecompletion.cpp')
-rw-r--r--src/plugins/cpptools/cppcodecompletion.cpp29
1 files changed, 5 insertions, 24 deletions
diff --git a/src/plugins/cpptools/cppcodecompletion.cpp b/src/plugins/cpptools/cppcodecompletion.cpp
index beecf56a8b..88ca3b7558 100644
--- a/src/plugins/cpptools/cppcodecompletion.cpp
+++ b/src/plugins/cpptools/cppcodecompletion.cpp
@@ -69,7 +69,6 @@
#include <QtCore/QDebug>
#include <QtCore/QMap>
#include <QtCore/QFile>
-#include <QtCore/QtConcurrentRun>
#include <QtGui/QAction>
#include <QtGui/QApplication>
#include <QtGui/QDesktopWidget>
@@ -653,22 +652,11 @@ bool CppCodeCompletion::triggersCompletion(TextEditor::ITextEditable *editor)
return false;
}
-static QList<TextEditor::CompletionItem> sortCompletionItems(QList<TextEditor::CompletionItem> items)
-{
- qStableSort(items.begin(), items.end(), CppCodeCompletion::completionItemLessThan);
- return items;
-}
-
int CppCodeCompletion::startCompletion(TextEditor::ITextEditable *editor)
{
int index = startCompletionHelper(editor);
- if (index != -1) {
- m_sortedCompletions = QtConcurrent::run(sortCompletionItems, m_completions);
-
- if (m_completions.size() < 1000)
- m_completions = m_sortedCompletions;
- }
-
+ if (index != -1)
+ qStableSort(m_completions.begin(), m_completions.end(), completionItemLessThan);
return index;
}
@@ -1580,14 +1568,8 @@ void CppCodeCompletion::completions(QList<TextEditor::CompletionItem> *completio
const QString key = m_editor->textAt(m_startPosition, length);
- QList<TextEditor::CompletionItem> currentCompletion;
- if (m_sortedCompletions.isFinished())
- currentCompletion = m_sortedCompletions;
- else
- currentCompletion = m_completions;
-
if (length == 0)
- *completions = currentCompletion;
+ *completions = m_completions;
else if (length > 0) {
/* Close on the trailing slash for include completion, to enable the slash to
* trigger a new completion list. */
@@ -1596,12 +1578,12 @@ void CppCodeCompletion::completions(QList<TextEditor::CompletionItem> *completio
return;
if (m_completionOperator != T_LPAREN) {
- filter(currentCompletion, completions, key);
+ filter(m_completions, completions, key);
} else if (m_completionOperator == T_LPAREN ||
m_completionOperator == T_SIGNAL ||
m_completionOperator == T_SLOT) {
- foreach (const TextEditor::CompletionItem &item, currentCompletion) {
+ foreach (const TextEditor::CompletionItem &item, m_completions) {
if (item.text.startsWith(key, Qt::CaseInsensitive)) {
completions->append(item);
}
@@ -1760,7 +1742,6 @@ bool CppCodeCompletion::partiallyComplete(const QList<TextEditor::CompletionItem
void CppCodeCompletion::cleanup()
{
- m_sortedCompletions.cancel();
m_completions.clear();
// Set empty map in order to avoid referencing old versions of the documents