CppTools: Consider unresolved includes for new include directive position

Now adding a new include directive by the refactoring action will cover
more cases.

This will also help us to simplity the corresponding tests, since it is
not necessary anymore to create actual files.

Change-Id: Id7612b13c392735d6ae1fb2ce3c36169eff3628e
Reviewed-by: Erik Verbruggen <erik.verbruggen@theqtcompany.com>
This commit is contained in:
Nikolai Kosjar
2015-01-13 14:20:23 +01:00
parent dbeae8cb43
commit 71c27ba4cc

View File

@@ -131,7 +131,11 @@ LineForNewIncludeDirective::LineForNewIncludeDirective(const QTextDocument *text
, m_cppDocument(cppDocument)
, m_includeStyle(includeStyle)
{
const QList<Document::Include> includes = cppDocument->resolvedIncludes();
QList<Document::Include> includes
= cppDocument->resolvedIncludes() + cppDocument->unresolvedIncludes();
Utils::sort(includes, [](const Include &left, const Include &right) {
return left.line() < right.line();
});
// Ignore *.moc includes if requested
if (mocIncludeMode == IgnoreMocIncludes) {
@@ -321,11 +325,6 @@ QList<IncludeGroup> LineForNewIncludeDirective::getGroupsByIncludeType(
/// includes will be modified!
QList<IncludeGroup> IncludeGroup::detectIncludeGroupsByNewLines(QList<Document::Include> &includes)
{
// Sort by line
Utils::sort(includes, [](const Include &left, const Include &right) {
return left.line() < right.line();
});
// Create groups
QList<IncludeGroup> result;
unsigned lastLine = 0;