TextEditor: Allow incremental proposals

... and make use of them with clangd.
This way, users can get immediate feedback when a new proposal entry
has been found, rather than having to wait until all of them have been
collected.

Change-Id: I2adfe0153aa7a058f28eb3bd65c71dd30ea018e0
Reviewed-by: David Schulz <david.schulz@qt.io>
This commit is contained in:
Christian Kandeler
2021-05-31 11:21:30 +02:00
parent 58f984d2b9
commit dc4a8b3866
5 changed files with 108 additions and 78 deletions

View File

@@ -46,8 +46,9 @@ public:
void setAsyncProposalAvailable(IAssistProposal *proposal);
// Internal, used by CodeAssist
using AsyncCompletionsAvailableHandler = std::function<void (IAssistProposal *proposal)>;
void setAsyncCompletionAvailableHandler(const AsyncCompletionsAvailableHandler &finalizer);
using AsyncCompletionsAvailableHandler
= std::function<void (IAssistProposal *proposal)>;
void setAsyncCompletionAvailableHandler(const AsyncCompletionsAvailableHandler &handler);
virtual bool running() { return false; }
virtual bool needsRestart() const { return false; }