diff options
Diffstat (limited to 'src/plugins/cppeditor/cppquickfixes.cpp')
-rw-r--r-- | src/plugins/cppeditor/cppquickfixes.cpp | 27 |
1 files changed, 17 insertions, 10 deletions
diff --git a/src/plugins/cppeditor/cppquickfixes.cpp b/src/plugins/cppeditor/cppquickfixes.cpp index 46302c0200..0dcb161b8d 100644 --- a/src/plugins/cppeditor/cppquickfixes.cpp +++ b/src/plugins/cppeditor/cppquickfixes.cpp @@ -158,10 +158,8 @@ InsertionLocation insertLocationForMethodDefinition(Symbol *symbol, const bool u = locator.methodDefinition(symbol, useSymbolFinder, fileName); for (int i = 0; i < list.count(); ++i) { InsertionLocation location = list.at(i); - if (location.isValid() && location.fileName() == fileName) { + if (location.isValid() && location.fileName() == fileName) return location; - break; - } } // ...failed, @@ -774,6 +772,11 @@ public: setDescription(QApplication::translate("CppTools::QuickFix", "Move Declaration out of Condition")); + reset(); + } + + void reset() + { condition = mk.Condition(); pattern = mk.IfStatement(condition); } @@ -826,6 +829,8 @@ void MoveDeclarationOutOfIf::match(const CppQuickFixInterface &interface, result.append(op); return; } + + op->reset(); } } } @@ -841,7 +846,11 @@ public: { setDescription(QApplication::translate("CppTools::QuickFix", "Move Declaration out of Condition")); + reset(); + } + void reset() + { condition = mk.Condition(); pattern = mk.WhileStatement(condition); } @@ -903,6 +912,8 @@ void MoveDeclarationOutOfWhile::match(const CppQuickFixInterface &interface, result.append(op); return; } + + op->reset(); } } } @@ -4756,11 +4767,11 @@ public: ? Qt::Checked : Qt::Unchecked; for (Scope::iterator it = clazz->firstMember(); it != clazz->lastMember(); ++it) { if (const Function *func = (*it)->type()->asFunctionType()) { - if (!func->isVirtual()) + // Filter virtual destructors + if (func->name()->asDestructorNameId()) continue; - // Filter virtual destructors - if (printer.prettyName(func->name()).startsWith(QLatin1Char('~'))) + if (!func->isVirtual()) continue; // Filter OQbject's @@ -4904,16 +4915,12 @@ public: switch (spec) { case InsertionPointLocator::Private: return InsertionPointLocator::PrivateSlot; - break; case InsertionPointLocator::Protected: return InsertionPointLocator::ProtectedSlot; - break; case InsertionPointLocator::Public: return InsertionPointLocator::PublicSlot; - break; default: return spec; - break; } } return spec; |