forked from qt-creator/qt-creator
CppTools: Extract base class CppCompletionAssistProcessor
As as side effect, this also brings some more pragma completions for the builtin-in completion engine, e.g. "pragma once" or "pragma omp atomic". Change-Id: If3ef22076c331c653b78a87cfff836c1da38c8fb Reviewed-by: Erik Verbruggen <erik.verbruggen@theqtcompany.com>
This commit is contained in:
@@ -560,37 +560,7 @@ ClangCompletionAssistInterface::ClangCompletionAssistInterface(ClangCompleter::P
|
||||
}
|
||||
|
||||
ClangCompletionAssistProcessor::ClangCompletionAssistProcessor()
|
||||
: m_preprocessorCompletions(QStringList()
|
||||
<< QLatin1String("define")
|
||||
<< QLatin1String("error")
|
||||
<< QLatin1String("include")
|
||||
<< QLatin1String("line")
|
||||
<< QLatin1String("pragma")
|
||||
<< QLatin1String("pragma once")
|
||||
<< QLatin1String("pragma omp atomic")
|
||||
<< QLatin1String("pragma omp parallel")
|
||||
<< QLatin1String("pragma omp for")
|
||||
<< QLatin1String("pragma omp ordered")
|
||||
<< QLatin1String("pragma omp parallel for")
|
||||
<< QLatin1String("pragma omp section")
|
||||
<< QLatin1String("pragma omp sections")
|
||||
<< QLatin1String("pragma omp parallel sections")
|
||||
<< QLatin1String("pragma omp single")
|
||||
<< QLatin1String("pragma omp master")
|
||||
<< QLatin1String("pragma omp critical")
|
||||
<< QLatin1String("pragma omp barrier")
|
||||
<< QLatin1String("pragma omp flush")
|
||||
<< QLatin1String("pragma omp threadprivate")
|
||||
<< QLatin1String("undef")
|
||||
<< QLatin1String("if")
|
||||
<< QLatin1String("ifdef")
|
||||
<< QLatin1String("ifndef")
|
||||
<< QLatin1String("elif")
|
||||
<< QLatin1String("else")
|
||||
<< QLatin1String("endif"))
|
||||
, m_model(new ClangAssistProposalModel)
|
||||
, m_hintProposal(0)
|
||||
|
||||
: m_model(new ClangAssistProposalModel)
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
@@ -35,13 +35,13 @@
|
||||
|
||||
#include <cplusplus/Icons.h>
|
||||
|
||||
#include <cpptools/cppcompletionassistprocessor.h>
|
||||
#include <cpptools/cppcompletionassistprovider.h>
|
||||
#include <cpptools/cppmodelmanager.h>
|
||||
|
||||
#include <texteditor/codeassist/assistproposalitem.h>
|
||||
#include <texteditor/codeassist/completionassistprovider.h>
|
||||
#include <texteditor/codeassist/assistinterface.h>
|
||||
#include <texteditor/codeassist/iassistprocessor.h>
|
||||
|
||||
#include <QStringList>
|
||||
#include <QTextCursor>
|
||||
@@ -102,7 +102,7 @@ private:
|
||||
Internal::PchInfo::Ptr m_savedPchPointer;
|
||||
};
|
||||
|
||||
class CLANG_EXPORT ClangCompletionAssistProcessor : public TextEditor::IAssistProcessor
|
||||
class CLANG_EXPORT ClangCompletionAssistProcessor : public CppTools::CppCompletionAssistProcessor
|
||||
{
|
||||
Q_DECLARE_TR_FUNCTIONS(ClangCodeModel::Internal::ClangCompletionAssistProcessor)
|
||||
|
||||
@@ -132,13 +132,8 @@ private:
|
||||
const QVariant &data = QVariant());
|
||||
|
||||
private:
|
||||
int m_startPosition;
|
||||
QScopedPointer<const ClangCompletionAssistInterface> m_interface;
|
||||
QList<TextEditor::AssistProposalItem *> m_completions;
|
||||
CPlusPlus::Icons m_icons;
|
||||
QStringList m_preprocessorCompletions;
|
||||
QScopedPointer<Internal::ClangAssistProposalModel> m_model;
|
||||
TextEditor::IAssistProposal *m_hintProposal;
|
||||
};
|
||||
|
||||
} // namespace Clang
|
||||
|
||||
Reference in New Issue
Block a user