ClangTools: Add QuickFixes to the editor

Change-Id: I9862231f0aa8e8274e8529e57e80eac5ececded9
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
This commit is contained in:
David Schulz
2020-08-25 06:18:26 +02:00
parent b55a313b3d
commit ef10f3b937
14 changed files with 284 additions and 12 deletions

View File

@@ -26,6 +26,7 @@
#pragma once
#include "clangfileinfo.h"
#include "clangtoolsdiagnostic.h"
#include <utils/fileutils.h>
#include <utils/temporarydirectory.h>
@@ -35,6 +36,7 @@
namespace Core { class IDocument; }
namespace CppTools { class ClangDiagnosticConfig; }
namespace TextEditor { class TextEditorWidget; }
namespace ClangTools {
@@ -50,6 +52,9 @@ public:
DocumentClangToolRunner(Core::IDocument *doc);
~DocumentClangToolRunner();
Utils::FilePath filePath() const;
Diagnostics diagnosticsAtLine(int lineNumber) const;
private:
void scheduleRun();
void run();
@@ -62,6 +67,7 @@ private:
void cancel();
const CppTools::ClangDiagnosticConfig getDiagnosticConfig(ProjectExplorer::Project *project);
template<class T>
ClangToolRunner *createRunner(const CppTools::ClangDiagnosticConfig &config,
@@ -75,6 +81,7 @@ private:
QList<DiagnosticMark *> m_marks;
FileInfo m_fileInfo;
QMetaObject::Connection m_projectSettingsUpdate;
QSet<TextEditor::TextEditorWidget *> m_editorsWithMarkers;
};
} // namespace Internal