summaryrefslogtreecommitdiff
path: root/src/plugins/cpptools
diff options
context:
space:
mode:
authorMarco Bubke <marco.bubke@theqtcompany.com>2016-01-11 20:40:05 +0100
committerMarco Bubke <marco.bubke@theqtcompany.com>2016-01-12 10:20:49 +0000
commit0fca74d5012d5810da559096b4c73bde3879c6bf (patch)
tree0bd41d6b06b1fb0b5df42895b437f52ce9c4e99c /src/plugins/cpptools
parent369b1f7f38ab81ba216e03fc724925db8f1b11ed (diff)
downloadqt-creator-0fca74d5012d5810da559096b4c73bde3879c6bf.tar.gz
CppTools: Break TextDocument dependency of BaseEditorDocumentProcessor
BaseEditorDocumentProcessor was holding a TextEditor::TextDocument but only used the QTextDocument and the file path. Change-Id: I349cc95d973adeaf9f94638d84333f592c14e7f9 Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
Diffstat (limited to 'src/plugins/cpptools')
-rw-r--r--src/plugins/cpptools/baseeditordocumentprocessor.cpp12
-rw-r--r--src/plugins/cpptools/baseeditordocumentprocessor.h13
-rw-r--r--src/plugins/cpptools/builtineditordocumentprocessor.cpp4
3 files changed, 12 insertions, 17 deletions
diff --git a/src/plugins/cpptools/baseeditordocumentprocessor.cpp b/src/plugins/cpptools/baseeditordocumentprocessor.cpp
index 462f8137fd..e90a64dbd0 100644
--- a/src/plugins/cpptools/baseeditordocumentprocessor.cpp
+++ b/src/plugins/cpptools/baseeditordocumentprocessor.cpp
@@ -45,9 +45,10 @@ namespace CppTools {
semantic calculations) after a text document has changed.
*/
-BaseEditorDocumentProcessor::BaseEditorDocumentProcessor(
- TextEditor::TextDocument *document)
- : m_baseTextDocument(document)
+BaseEditorDocumentProcessor::BaseEditorDocumentProcessor(QTextDocument *textDocument,
+ const QString &filePath)
+ : m_filePath(filePath),
+ m_textDocument(textDocument)
{
}
@@ -55,11 +56,6 @@ BaseEditorDocumentProcessor::~BaseEditorDocumentProcessor()
{
}
-TextEditor::TextDocument *BaseEditorDocumentProcessor::baseTextDocument() const
-{
- return m_baseTextDocument;
-}
-
TextEditor::QuickFixOperations
BaseEditorDocumentProcessor::extraRefactoringOperations(const TextEditor::AssistInterface &)
{
diff --git a/src/plugins/cpptools/baseeditordocumentprocessor.h b/src/plugins/cpptools/baseeditordocumentprocessor.h
index 9dffaa297e..353a980f11 100644
--- a/src/plugins/cpptools/baseeditordocumentprocessor.h
+++ b/src/plugins/cpptools/baseeditordocumentprocessor.h
@@ -55,11 +55,9 @@ class CPPTOOLS_EXPORT BaseEditorDocumentProcessor : public QObject
Q_OBJECT
public:
- BaseEditorDocumentProcessor(TextEditor::TextDocument *document);
+ BaseEditorDocumentProcessor(QTextDocument *textDocument, const QString &filePath);
virtual ~BaseEditorDocumentProcessor();
- TextEditor::TextDocument *baseTextDocument() const;
-
// Function interface to implement
virtual void run() = 0;
virtual void semanticRehighlight() = 0;
@@ -92,12 +90,13 @@ protected:
const CppTools::WorkingCopy workingCopy);
// Convenience
- QString filePath() const { return m_baseTextDocument->filePath().toString(); }
- unsigned revision() const { return static_cast<unsigned>(textDocument()->revision()); }
- QTextDocument *textDocument() const { return m_baseTextDocument->document(); }
+ QString filePath() const { return m_filePath; }
+ unsigned revision() const { return static_cast<unsigned>(m_textDocument->revision()); }
+ QTextDocument *textDocument() const { return m_textDocument; }
private:
- TextEditor::TextDocument *m_baseTextDocument;
+ QString m_filePath;
+ QTextDocument *m_textDocument;
};
} // namespace CppTools
diff --git a/src/plugins/cpptools/builtineditordocumentprocessor.cpp b/src/plugins/cpptools/builtineditordocumentprocessor.cpp
index 826b7b24a2..c0d7b9861e 100644
--- a/src/plugins/cpptools/builtineditordocumentprocessor.cpp
+++ b/src/plugins/cpptools/builtineditordocumentprocessor.cpp
@@ -166,7 +166,7 @@ namespace CppTools {
BuiltinEditorDocumentProcessor::BuiltinEditorDocumentProcessor(
TextEditor::TextDocument *document,
bool enableSemanticHighlighter)
- : BaseEditorDocumentProcessor(document)
+ : BaseEditorDocumentProcessor(document->document(), document->filePath().toString())
, m_parser(new BuiltinEditorDocumentParser(document->filePath().toString()))
, m_codeWarningsUpdated(false)
, m_semanticHighlighter(enableSemanticHighlighter
@@ -186,7 +186,7 @@ BuiltinEditorDocumentProcessor::BuiltinEditorDocumentProcessor(
[this]() -> QFuture<TextEditor::HighlightingResult> {
const SemanticInfo semanticInfo = m_semanticInfoUpdater.semanticInfo();
CheckSymbols *checkSymbols = createHighlighter(semanticInfo.doc, semanticInfo.snapshot,
- baseTextDocument()->document());
+ textDocument());
QTC_ASSERT(checkSymbols, return QFuture<TextEditor::HighlightingResult>());
connect(checkSymbols, &CheckSymbols::codeWarningsUpdated,
this, &BuiltinEditorDocumentProcessor::onCodeWarningsUpdated);