aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/cpptools/cppcompletionassistprovider.cpp
diff options
context:
space:
mode:
authorNikolai Kosjar <[email protected]>2015-02-16 11:49:07 +0100
committerNikolai Kosjar <[email protected]>2015-02-17 13:47:38 +0000
commit9fb5b0be15a1d877132942ca5da1829510f23361 (patch)
treecabae43037ebe98ea14895dca1fc18d8f4e76644 /src/plugins/cpptools/cppcompletionassistprovider.cpp
parent6546a292c2f2f6a70cec950c011a27e91311867e (diff)
CppTools: Add basic completion support for qt5 style signals/slots
Trigger completion for Qt5 signals/slots as soon as the user types '&' in connect(object, & connect(object, &Foo:signal, object2, & Change-Id: I338a26415196959e3dc413bdfd023314812f3aaa Reviewed-by: Erik Verbruggen <[email protected]>
Diffstat (limited to 'src/plugins/cpptools/cppcompletionassistprovider.cpp')
-rw-r--r--src/plugins/cpptools/cppcompletionassistprovider.cpp11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/plugins/cpptools/cppcompletionassistprovider.cpp b/src/plugins/cpptools/cppcompletionassistprovider.cpp
index 2983fa27d4b..9b878aa9cf6 100644
--- a/src/plugins/cpptools/cppcompletionassistprovider.cpp
+++ b/src/plugins/cpptools/cppcompletionassistprovider.cpp
@@ -57,7 +57,7 @@ bool CppCompletionAssistProvider::isActivationCharSequence(const QString &sequen
const QChar &ch = sequence.at(2);
const QChar &ch2 = sequence.at(1);
const QChar &ch3 = sequence.at(0);
- if (activationSequenceChar(ch, ch2, ch3, 0, true) != 0)
+ if (activationSequenceChar(ch, ch2, ch3, 0, true, false) != 0)
return true;
return false;
}
@@ -71,7 +71,8 @@ int CppCompletionAssistProvider::activationSequenceChar(const QChar &ch,
const QChar &ch2,
const QChar &ch3,
unsigned *kind,
- bool wantFunctionCall)
+ bool wantFunctionCall,
+ bool wantQt5SignalSlots)
{
int referencePosition = 0;
int completionKind = T_EOF_SYMBOL;
@@ -136,6 +137,12 @@ int CppCompletionAssistProvider::activationSequenceChar(const QChar &ch,
completionKind = T_POUND;
referencePosition = 1;
break;
+ case '&':
+ if (wantQt5SignalSlots) {
+ completionKind = T_AMPER;
+ referencePosition = 1;
+ }
+ break;
}
if (kind)