forked from qt-creator/qt-creator
Cleanup
This commit is contained in:
@@ -512,22 +512,21 @@ int CppCodeCompletion::startCompletion(TextEditor::ITextEditable *editor)
|
|||||||
context = typeOfExpression.lookupContext();
|
context = typeOfExpression.lookupContext();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (! resolvedTypes.isEmpty() && resolvedTypes.first().first) {
|
if (! resolvedTypes.isEmpty()) {
|
||||||
FullySpecifiedType exprTy = resolvedTypes.first().first;
|
if (m_completionOperator == T_LPAREN && completeConstructorOrFunction(resolvedTypes)) {
|
||||||
|
|
||||||
if (exprTy->isReferenceType())
|
|
||||||
exprTy = exprTy->asReferenceType()->elementType();
|
|
||||||
|
|
||||||
if (m_completionOperator == T_LPAREN && completeConstructorOrFunction(exprTy, resolvedTypes)) {
|
|
||||||
return m_startPosition;
|
return m_startPosition;
|
||||||
|
|
||||||
} else if ((m_completionOperator == T_DOT || m_completionOperator == T_ARROW) &&
|
} else if ((m_completionOperator == T_DOT || m_completionOperator == T_ARROW) &&
|
||||||
completeMember(resolvedTypes, context)) {
|
completeMember(resolvedTypes, context)) {
|
||||||
return m_startPosition;
|
return m_startPosition;
|
||||||
|
|
||||||
} else if (m_completionOperator == T_COLON_COLON && completeScope(resolvedTypes, context)) {
|
} else if (m_completionOperator == T_COLON_COLON && completeScope(resolvedTypes, context)) {
|
||||||
return m_startPosition;
|
return m_startPosition;
|
||||||
} else if (m_completionOperator == T_SIGNAL && completeSignal(exprTy, resolvedTypes, context)) {
|
|
||||||
|
} else if (m_completionOperator == T_SIGNAL && completeSignal(resolvedTypes, context)) {
|
||||||
return m_startPosition;
|
return m_startPosition;
|
||||||
} else if (m_completionOperator == T_SLOT && completeSlot(exprTy, resolvedTypes, context)) {
|
|
||||||
|
} else if (m_completionOperator == T_SLOT && completeSlot(resolvedTypes, context)) {
|
||||||
return m_startPosition;
|
return m_startPosition;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -550,8 +549,7 @@ int CppCodeCompletion::startCompletion(TextEditor::ITextEditable *editor)
|
|||||||
// If it's a class, add completions for the constructors
|
// If it's a class, add completions for the constructors
|
||||||
foreach (const TypeOfExpression::Result &result, results) {
|
foreach (const TypeOfExpression::Result &result, results) {
|
||||||
if (result.first->isClassType()) {
|
if (result.first->isClassType()) {
|
||||||
FullySpecifiedType exprTy = result.first;
|
if (completeConstructorOrFunction(results))
|
||||||
if (completeConstructorOrFunction(exprTy, QList<TypeOfExpression::Result>()))
|
|
||||||
return m_startPosition;
|
return m_startPosition;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@@ -563,8 +561,7 @@ int CppCodeCompletion::startCompletion(TextEditor::ITextEditable *editor)
|
|||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool CppCodeCompletion::completeConstructorOrFunction(FullySpecifiedType,
|
bool CppCodeCompletion::completeConstructorOrFunction(const QList<TypeOfExpression::Result> &results)
|
||||||
const QList<TypeOfExpression::Result> &results)
|
|
||||||
{
|
{
|
||||||
ConvertToCompletionItem toCompletionItem(this);
|
ConvertToCompletionItem toCompletionItem(this);
|
||||||
Overview o;
|
Overview o;
|
||||||
@@ -924,8 +921,7 @@ void CppCodeCompletion::completeClass(const QList<Symbol *> &candidates,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
bool CppCodeCompletion::completeQtMethod(CPlusPlus::FullySpecifiedType,
|
bool CppCodeCompletion::completeQtMethod(const QList<TypeOfExpression::Result> &results,
|
||||||
const QList<TypeOfExpression::Result> &results,
|
|
||||||
const LookupContext &context,
|
const LookupContext &context,
|
||||||
bool wantSignals)
|
bool wantSignals)
|
||||||
{
|
{
|
||||||
@@ -941,7 +937,7 @@ bool CppCodeCompletion::completeQtMethod(CPlusPlus::FullySpecifiedType,
|
|||||||
o.setShowFunctionSignatures(true);
|
o.setShowFunctionSignatures(true);
|
||||||
|
|
||||||
QSet<QString> signatures;
|
QSet<QString> signatures;
|
||||||
foreach (TypeOfExpression::Result p, results) {
|
foreach (const TypeOfExpression::Result &p, results) {
|
||||||
FullySpecifiedType ty = p.first;
|
FullySpecifiedType ty = p.first;
|
||||||
if (ReferenceType *refTy = ty->asReferenceType())
|
if (ReferenceType *refTy = ty->asReferenceType())
|
||||||
ty = refTy->elementType();
|
ty = refTy->elementType();
|
||||||
|
@@ -90,8 +90,7 @@ private:
|
|||||||
QSet<QString> *definedMacros);
|
QSet<QString> *definedMacros);
|
||||||
void addCompletionItem(CPlusPlus::Symbol *symbol);
|
void addCompletionItem(CPlusPlus::Symbol *symbol);
|
||||||
|
|
||||||
bool completeConstructorOrFunction(CPlusPlus::FullySpecifiedType exprTy,
|
bool completeConstructorOrFunction(const QList<CPlusPlus::TypeOfExpression::Result> &);
|
||||||
const QList<CPlusPlus::TypeOfExpression::Result> &);
|
|
||||||
|
|
||||||
bool completeMember(const QList<CPlusPlus::TypeOfExpression::Result> &,
|
bool completeMember(const QList<CPlusPlus::TypeOfExpression::Result> &,
|
||||||
const CPlusPlus::LookupContext &context);
|
const CPlusPlus::LookupContext &context);
|
||||||
@@ -108,20 +107,17 @@ private:
|
|||||||
|
|
||||||
bool completeConstructors(CPlusPlus::Class *klass);
|
bool completeConstructors(CPlusPlus::Class *klass);
|
||||||
|
|
||||||
bool completeQtMethod(CPlusPlus::FullySpecifiedType exprTy,
|
bool completeQtMethod(const QList<CPlusPlus::TypeOfExpression::Result> &,
|
||||||
const QList<CPlusPlus::TypeOfExpression::Result> &,
|
|
||||||
const CPlusPlus::LookupContext &context,
|
const CPlusPlus::LookupContext &context,
|
||||||
bool wantSignals);
|
bool wantSignals);
|
||||||
|
|
||||||
bool completeSignal(CPlusPlus::FullySpecifiedType exprTy,
|
bool completeSignal(const QList<CPlusPlus::TypeOfExpression::Result> &results,
|
||||||
const QList<CPlusPlus::TypeOfExpression::Result> &results,
|
|
||||||
const CPlusPlus::LookupContext &context)
|
const CPlusPlus::LookupContext &context)
|
||||||
{ return completeQtMethod(exprTy, results, context, true); }
|
{ return completeQtMethod(results, context, true); }
|
||||||
|
|
||||||
bool completeSlot(CPlusPlus::FullySpecifiedType exprTy,
|
bool completeSlot(const QList<CPlusPlus::TypeOfExpression::Result> &results,
|
||||||
const QList<CPlusPlus::TypeOfExpression::Result> &results,
|
|
||||||
const CPlusPlus::LookupContext &context)
|
const CPlusPlus::LookupContext &context)
|
||||||
{ return completeQtMethod(exprTy, results, context, false); }
|
{ return completeQtMethod(results, context, false); }
|
||||||
|
|
||||||
int findStartOfName(int pos = -1) const;
|
int findStartOfName(int pos = -1) const;
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user