summaryrefslogtreecommitdiff
path: root/src/plugins/cpptools/cpphoverhandler.cpp
diff options
context:
space:
mode:
authorRoberto Raggi <qtc-committer@nokia.com>2008-12-12 10:07:58 +0100
committerRoberto Raggi <qtc-committer@nokia.com>2008-12-12 10:07:58 +0100
commitbab60d14b341edc4fd1f81ec12cc460441948c3b (patch)
tree6724341a39bba0f19aa97af9c8c52f2f883ef152 /src/plugins/cpptools/cpphoverhandler.cpp
parentce66bc3c1e64a8a4eb7f40824a75ec52420340cf (diff)
downloadqt-creator-bab60d14b341edc4fd1f81ec12cc460441948c3b.tar.gz
Introduced CPlusPlus::Snapshot, it contains a snap shot of the indexer's current state.
This change removes a number of wrong usages of the CppModelManager::documents()/document().
Diffstat (limited to 'src/plugins/cpptools/cpphoverhandler.cpp')
-rw-r--r--src/plugins/cpptools/cpphoverhandler.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/plugins/cpptools/cpphoverhandler.cpp b/src/plugins/cpptools/cpphoverhandler.cpp
index f3831e5394..fab0d83b31 100644
--- a/src/plugins/cpptools/cpphoverhandler.cpp
+++ b/src/plugins/cpptools/cpphoverhandler.cpp
@@ -165,9 +165,11 @@ void CppHoverHandler::updateHelpIdAndTooltip(TextEditor::ITextEditor *editor, in
QTextCursor tc(edit->document());
tc.setPosition(pos);
+ const Snapshot documents = m_manager->snapshot();
+
const int lineNumber = tc.block().blockNumber() + 1;
const QString fileName = editor->file()->fileName();
- Document::Ptr doc = m_manager->document(fileName);
+ Document::Ptr doc = documents.value(fileName);
if (doc) {
foreach (Document::DiagnosticMessage m, doc->diagnosticMessages()) {
if (m.line() == lineNumber) {
@@ -212,7 +214,7 @@ void CppHoverHandler::updateHelpIdAndTooltip(TextEditor::ITextEditor *editor, in
Symbol *lastSymbol = doc->findSymbolAt(line, column);
TypeOfExpression typeOfExpression;
- typeOfExpression.setDocuments(m_manager->documents());
+ typeOfExpression.setSnapshot(documents);
QList<TypeOfExpression::Result> types = typeOfExpression(expression, doc, lastSymbol);
if (!types.isEmpty()) {