forked from qt-creator/qt-creator
Clang: Honor fixits own locations in ClangFixItOperation
The fixits have own ranges/locations and thus might address more than one file. Change-Id: I5ee59944bef588e763a91f054a60823593373a0e Reviewed-by: David Schulz <david.schulz@qt.io>
This commit is contained in:
@@ -36,6 +36,7 @@
|
||||
|
||||
namespace TextEditor
|
||||
{
|
||||
class RefactoringChanges;
|
||||
class RefactoringFile;
|
||||
}
|
||||
|
||||
@@ -44,23 +45,25 @@ namespace ClangCodeModel {
|
||||
class ClangFixItOperation : public TextEditor::QuickFixOperation
|
||||
{
|
||||
public:
|
||||
ClangFixItOperation(const Utf8String &filePath,
|
||||
const Utf8String &fixItText,
|
||||
ClangFixItOperation(const Utf8String &fixItText,
|
||||
const QVector<ClangBackEnd::FixItContainer> &fixItContainers);
|
||||
|
||||
int priority() const override;
|
||||
QString description() const override;
|
||||
void perform() override;
|
||||
|
||||
QString refactoringFileContent_forTestOnly() const;
|
||||
QString firstRefactoringFileContent_forTestOnly() const;
|
||||
|
||||
private:
|
||||
Utils::ChangeSet changeSet() const;
|
||||
void applyFixitsToFile(TextEditor::RefactoringFile &refactoringFile,
|
||||
const QVector<ClangBackEnd::FixItContainer> fixItContainers);
|
||||
Utils::ChangeSet toChangeSet(
|
||||
TextEditor::RefactoringFile &refactoringFile,
|
||||
const QVector<ClangBackEnd::FixItContainer> fixItContainers) const;
|
||||
|
||||
private:
|
||||
Utf8String filePath;
|
||||
Utf8String fixItText;
|
||||
QSharedPointer<TextEditor::RefactoringFile> refactoringFile;
|
||||
QVector<QSharedPointer<TextEditor::RefactoringFile>> refactoringFiles;
|
||||
QVector<ClangBackEnd::FixItContainer> fixItContainers;
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user