diff options
author | Roberto Raggi <roberto.raggi@nokia.com> | 2010-05-26 15:14:50 +0200 |
---|---|---|
committer | Roberto Raggi <roberto.raggi@nokia.com> | 2010-05-26 15:14:50 +0200 |
commit | d702119dca0600f4e75d08984733d0ceb370c8d9 (patch) | |
tree | 841fd8f7335848d72f1839e0f63bc743127cfcdc /src/plugins/cpptools/cppcodecompletion.cpp | |
parent | 30e1d00725f415c543fbd2ec3122d0e737ae573a (diff) | |
download | qt-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.cpp | 29 |
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 |