ClangCodeModel: Use clangd for completion and function hint

Change-Id: I80160f3a40da18ac178682afe6caba5e5af6e3eb
Reviewed-by: David Schulz <david.schulz@qt.io>
This commit is contained in:
Christian Kandeler
2021-06-18 16:30:03 +02:00
parent 67d2a4186b
commit e0e8fda580
62 changed files with 1569 additions and 187 deletions

View File

@@ -28,10 +28,14 @@
#include <texteditor/codeassist/completionassistprovider.h>
#include <utils/optional.h>
namespace TextEditor { class IAssistProposal; }
namespace LanguageClient {
class Client;
using ProposalHandler = std::function<void(TextEditor::IAssistProposal *)>;
class FunctionHintAssistProvider : public TextEditor::CompletionAssistProvider
{
Q_OBJECT
@@ -47,8 +51,12 @@ public:
bool isContinuationChar(const QChar &c) const override;
void setTriggerCharacters(const Utils::optional<QList<QString>> &triggerChars);
void setProposalHandler(const ProposalHandler &handler) { m_proposalHandler = handler; }
private:
QList<QString> m_triggerChars;
ProposalHandler m_proposalHandler;
int m_activationCharSequenceLength = 0;
Client *m_client = nullptr; // not owned
};