summaryrefslogtreecommitdiff
path: root/src/plugins/clangtools/clangfixitsrefactoringchanges.cpp
diff options
context:
space:
mode:
authorIvan Donchevskii <ivan.donchevskii@qt.io>2019-01-16 09:37:54 +0100
committerIvan Donchevskii <ivan.donchevskii@qt.io>2019-01-22 09:52:15 +0000
commitd7058e1afedfe609ff6e81222bd2137922bf7de3 (patch)
tree62d16136c8336646b8ef0ad4d220b7e0e8331203 /src/plugins/clangtools/clangfixitsrefactoringchanges.cpp
parent8b5beeb952448540a3834333b694919563d81ee2 (diff)
downloadqt-creator-d7058e1afedfe609ff6e81222bd2137922bf7de3.tar.gz
ClangFormat: Refactor indenter to allow ClangFormat unit-tests
We do not build texteditor files in unit-tests so some tricks were required to make ClangFormatIndenter available. First simple unit-test proofs it builds and runs. Change-Id: I81d5ea099bd27fd1c1ed8b5b7877299dcc62a67f Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
Diffstat (limited to 'src/plugins/clangtools/clangfixitsrefactoringchanges.cpp')
-rw-r--r--src/plugins/clangtools/clangfixitsrefactoringchanges.cpp10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/plugins/clangtools/clangfixitsrefactoringchanges.cpp b/src/plugins/clangtools/clangfixitsrefactoringchanges.cpp
index feff3a8e2c..88b17fb42a 100644
--- a/src/plugins/clangtools/clangfixitsrefactoringchanges.cpp
+++ b/src/plugins/clangtools/clangfixitsrefactoringchanges.cpp
@@ -32,6 +32,7 @@
#include <texteditor/icodestylepreferencesfactory.h>
#include <texteditor/indenter.h>
+#include <texteditor/tabsettings.h>
#include <texteditor/texteditorsettings.h>
#include <QDebug>
@@ -83,7 +84,6 @@ bool FixitsRefactoringFile::apply()
ICodeStylePreferencesFactory *factory = TextEditorSettings::codeStyleFactory(
CppTools::Constants::CPP_SETTINGS_ID);
- std::unique_ptr<TextEditor::Indenter> indenter(factory->createIndenter());
const TextEditor::TabSettings tabSettings
= CppTools::CppCodeStyleSettings::currentProjectTabSettings();
@@ -103,6 +103,9 @@ bool FixitsRefactoringFile::apply()
// Apply
QTextDocument *doc = document(op.fileName);
+ std::unique_ptr<TextEditor::Indenter> indenter(factory->createIndenter(doc));
+ indenter->setFileName(Utils::FileName::fromString(op.fileName));
+
QTextCursor cursor(doc);
cursor.setPosition(op.pos);
cursor.setPosition(op.pos + op.length, QTextCursor::KeepAnchor);
@@ -139,10 +142,7 @@ void FixitsRefactoringFile::tryToFormat(TextEditor::Indenter &indenter,
cursor.movePosition(QTextCursor::Right,
QTextCursor::KeepAnchor,
op.text.length());
- const Replacements replacements = indenter.format(doc,
- Utils::FileName::fromString(op.fileName),
- cursor,
- tabSettings);
+ const Replacements replacements = indenter.format(cursor, tabSettings);
cursor.endEditBlock();
if (replacements.empty())