TextEditor: Introduce shortcut for forcing a function hint proposal

... and support it in the ClangCodeModel.
This allows users to get function signature(s) displayed regardless of
where exactly the cursor is on the function call.

Fixes: QTCREATORBUG-19394
Change-Id: I033e8774db93680bfc3ee52610b817e0ef8ccc76
Reviewed-by: David Schulz <david.schulz@qt.io>
This commit is contained in:
Christian Kandeler
2020-07-31 16:50:03 +02:00
parent bd24903ddc
commit 7938320291
23 changed files with 88 additions and 12 deletions

View File

@@ -33,10 +33,13 @@
namespace ClangCodeModel {
namespace Internal {
enum class CompletionType { FunctionHint, Other };
class ClangCompletionAssistInterface: public TextEditor::AssistInterface
{
public:
ClangCompletionAssistInterface(BackendCommunicator &communicator,
CompletionType type,
const TextEditor::TextEditorWidget *textEditorWidget,
int position,
const QString &fileName,
@@ -45,6 +48,7 @@ public:
const CPlusPlus::LanguageFeatures &features);
BackendCommunicator &communicator() const;
CompletionType type() const { return m_type; }
bool objcEnabled() const;
const ProjectExplorer::HeaderPaths &headerPaths() const;
CPlusPlus::LanguageFeatures languageFeatures() const;
@@ -54,6 +58,7 @@ public:
private:
BackendCommunicator &m_communicator;
const CompletionType m_type;
QStringList m_options;
ProjectExplorer::HeaderPaths m_headerPaths;
CPlusPlus::LanguageFeatures m_languageFeatures;