C++: clean-up CppCompletionAssist.

This is step 1 of 2 for merging the various provider factories into a
single class. Merging has the advantage that selecting based on editor
(content) mime-type only has to select one class, instead of re-doing
the selection for each class separately.

Change-Id: I11f815151bd4769ae6028b636793d6a80d02e202
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
This commit is contained in:
Erik Verbruggen
2013-08-30 13:13:44 +02:00
committed by Nikolai Kosjar
parent 49adb78ec9
commit b4a1bd415f
14 changed files with 51 additions and 191 deletions

View File

@@ -30,11 +30,23 @@
#ifndef CPPTOOLS_CPPCOMPLETIONASSISTPROVIDER_H
#define CPPTOOLS_CPPCOMPLETIONASSISTPROVIDER_H
#include "cppcompletionsupport.h"
#include "cpptools_global.h"
#include <texteditor/codeassist/assistenums.h>
#include <texteditor/codeassist/completionassistprovider.h>
QT_BEGIN_NAMESPACE
class QTextDocument;
QT_END_NAMESPACE
namespace ProjectExplorer {
class Project;
}
namespace TextEditor {
class IAssistInterface;
}
namespace CppTools {
class CPPTOOLS_EXPORT CppCompletionAssistProvider : public TextEditor::CompletionAssistProvider
@@ -46,7 +58,9 @@ public:
virtual int activationCharSequenceLength() const;
virtual bool isActivationCharSequence(const QString &sequence) const;
virtual CppCompletionSupport *completionSupport(TextEditor::ITextEditor *editor) = 0;
virtual TextEditor::IAssistInterface *createAssistInterface(
ProjectExplorer::Project *project, const QString &filePath, QTextDocument *document,
int position, TextEditor::AssistReason reason) const = 0;
static int activationSequenceChar(const QChar &ch, const QChar &ch2,
const QChar &ch3, unsigned *kind,