summaryrefslogtreecommitdiff
path: root/src/plugins/cpptools/cppfindreferences.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/cpptools/cppfindreferences.cpp')
-rw-r--r--src/plugins/cpptools/cppfindreferences.cpp48
1 files changed, 4 insertions, 44 deletions
diff --git a/src/plugins/cpptools/cppfindreferences.cpp b/src/plugins/cpptools/cppfindreferences.cpp
index 6e0ec85ede..ad8ec3f0d1 100644
--- a/src/plugins/cpptools/cppfindreferences.cpp
+++ b/src/plugins/cpptools/cppfindreferences.cpp
@@ -250,7 +250,6 @@ CppFindReferences::CppFindReferences(CppModelManagerInterface *modelManager)
: QObject(modelManager),
m_modelManager(modelManager)
{
- connect(modelManager, SIGNAL(globalSnapshotChanged()), this, SLOT(flushDependencyTable()));
}
CppFindReferences::~CppFindReferences()
@@ -271,7 +270,6 @@ QList<int> CppFindReferences::references(Symbol *symbol, const LookupContext &co
static void find_helper(QFutureInterface<Usage> &future,
const WorkingCopy workingCopy,
const LookupContext context,
- CppFindReferences *findRefs,
Symbol *symbol)
{
const Identifier *symbolId = symbol->identifier();
@@ -297,8 +295,7 @@ static void find_helper(QFutureInterface<Usage> &future,
files.append(doc->fileName());
}
} else {
- DependencyTable dependencyTable = findRefs->updateDependencyTable(snapshot);
- files += dependencyTable.filesDependingOn(sourceFile);
+ files += snapshot.filesDependingOn(sourceFile);
}
files.removeDuplicates();
@@ -370,7 +367,7 @@ void CppFindReferences::findAll_helper(Core::SearchResult *search, CPlusPlus::Sy
Core::SearchResultWindow::instance()->popup(IOutputPane::ModeSwitch | IOutputPane::WithFocus);
const WorkingCopy workingCopy = m_modelManager->workingCopy();
QFuture<Usage> result;
- result = QtConcurrent::run(&find_helper, workingCopy, context, this, symbol);
+ result = QtConcurrent::run(&find_helper, workingCopy, context, symbol);
createWatcher(result, search);
FutureProgress *progress = ProgressManager::addTask(result, tr("Searching for Usages"),
@@ -614,15 +611,11 @@ restart_search:
static void findMacroUses_helper(QFutureInterface<Usage> &future,
const WorkingCopy workingCopy,
const Snapshot snapshot,
- CppFindReferences *findRefs,
const Macro macro)
{
- // ensure the dependency table is updated
- DependencyTable dependencies = findRefs->updateDependencyTable(snapshot);
-
const QString& sourceFile = macro.fileName();
QStringList files(sourceFile);
- files += dependencies.filesDependingOn(sourceFile);
+ files += snapshot.filesDependingOn(sourceFile);
files.removeDuplicates();
future.setProgressRange(0, files.size());
@@ -677,7 +670,7 @@ void CppFindReferences::findMacroUses(const Macro &macro, const QString &replace
}
QFuture<Usage> result;
- result = QtConcurrent::run(&findMacroUses_helper, workingCopy, snapshot, this, macro);
+ result = QtConcurrent::run(&findMacroUses_helper, workingCopy, snapshot, macro);
createWatcher(result, search);
FutureProgress *progress = ProgressManager::addTask(result, tr("Searching for Usages"),
@@ -691,39 +684,6 @@ void CppFindReferences::renameMacroUses(const Macro &macro, const QString &repla
findMacroUses(macro, textToReplace, true);
}
-DependencyTable CppFindReferences::updateDependencyTable(CPlusPlus::Snapshot snapshot)
-{
- DependencyTable oldDeps = dependencyTable();
- if (oldDeps.isValidFor(snapshot))
- return oldDeps;
-
- DependencyTable newDeps;
- newDeps.build(snapshot);
- setDependencyTable(newDeps);
- return newDeps;
-}
-
-void CppFindReferences::flushDependencyTable()
-{
- QMutexLocker locker(&m_depsLock);
- Q_UNUSED(locker);
- m_deps = DependencyTable();
-}
-
-DependencyTable CppFindReferences::dependencyTable() const
-{
- QMutexLocker locker(&m_depsLock);
- Q_UNUSED(locker);
- return m_deps;
-}
-
-void CppFindReferences::setDependencyTable(const CPlusPlus::DependencyTable &newTable)
-{
- QMutexLocker locker(&m_depsLock);
- Q_UNUSED(locker);
- m_deps = newTable;
-}
-
void CppFindReferences::createWatcher(const QFuture<Usage> &future, Core::SearchResult *search)
{
QFutureWatcher<Usage> *watcher = new QFutureWatcher<Usage>();