forked from qt-creator/qt-creator
CppLocatorFilter: Don't repeat CppLocatorData arg in c'tors
It's always the same instance of: CppEditor::CppModelManager::instance()->locatorData(). Change-Id: I7d8aa2da6f0055d91b519efb6ebdf2177794e0b7 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
This commit is contained in:
@@ -47,7 +47,6 @@ class CppLocatorFilter : public CppEditor::CppLocatorFilter
|
||||
{
|
||||
public:
|
||||
CppLocatorFilter()
|
||||
: CppEditor::CppLocatorFilter(CppEditor::CppModelManager::instance()->locatorData())
|
||||
{
|
||||
setId({});
|
||||
setDisplayName({});
|
||||
@@ -80,7 +79,6 @@ class CppClassesFilter : public CppEditor::CppClassesFilter
|
||||
{
|
||||
public:
|
||||
CppClassesFilter()
|
||||
: CppEditor::CppClassesFilter(CppEditor::CppModelManager::instance()->locatorData())
|
||||
{
|
||||
setId({});
|
||||
setDisplayName({});
|
||||
@@ -111,7 +109,6 @@ class CppFunctionsFilter : public CppEditor::CppFunctionsFilter
|
||||
{
|
||||
public:
|
||||
CppFunctionsFilter()
|
||||
: CppEditor::CppFunctionsFilter(CppEditor::CppModelManager::instance()->locatorData())
|
||||
{
|
||||
setId({});
|
||||
setDisplayName({});
|
||||
|
@@ -5,6 +5,7 @@
|
||||
|
||||
#include "cppeditorconstants.h"
|
||||
#include "cppeditortr.h"
|
||||
#include "cpplocatordata.h"
|
||||
|
||||
#include <utils/algorithm.h>
|
||||
|
||||
@@ -14,8 +15,7 @@ using namespace Core;
|
||||
|
||||
namespace CppEditor {
|
||||
|
||||
CppLocatorFilter::CppLocatorFilter(CppLocatorData *locatorData)
|
||||
: m_data(locatorData)
|
||||
CppLocatorFilter::CppLocatorFilter()
|
||||
{
|
||||
setId(Constants::LOCATOR_FILTER_ID);
|
||||
setDisplayName(Tr::tr(Constants::LOCATOR_FILTER_DISPLAY_NAME));
|
||||
@@ -23,8 +23,6 @@ CppLocatorFilter::CppLocatorFilter(CppLocatorData *locatorData)
|
||||
setDefaultIncludedByDefault(false);
|
||||
}
|
||||
|
||||
CppLocatorFilter::~CppLocatorFilter() = default;
|
||||
|
||||
LocatorFilterEntry CppLocatorFilter::filterEntryFromIndexItem(IndexItem::Ptr info)
|
||||
{
|
||||
const QVariant id = QVariant::fromValue(info);
|
||||
@@ -52,7 +50,8 @@ QList<LocatorFilterEntry> CppLocatorFilter::matchesFor(
|
||||
const QRegularExpression shortRegexp =
|
||||
hasColonColon ? createRegExp(entry.mid(entry.lastIndexOf("::") + 2)) : regexp;
|
||||
|
||||
m_data->filterAllFiles([&](const IndexItem::Ptr &info) -> IndexItem::VisitorResult {
|
||||
CppLocatorData *locatorData = CppModelManager::instance()->locatorData();
|
||||
locatorData->filterAllFiles([&](const IndexItem::Ptr &info) -> IndexItem::VisitorResult {
|
||||
if (future.isCanceled())
|
||||
return IndexItem::Break;
|
||||
const IndexItem::ItemType type = info->type();
|
||||
@@ -112,8 +111,7 @@ QList<LocatorFilterEntry> CppLocatorFilter::matchesFor(
|
||||
return std::accumulate(std::begin(entries), std::end(entries), QList<LocatorFilterEntry>());
|
||||
}
|
||||
|
||||
CppClassesFilter::CppClassesFilter(CppLocatorData *locatorData)
|
||||
: CppLocatorFilter(locatorData)
|
||||
CppClassesFilter::CppClassesFilter()
|
||||
{
|
||||
setId(Constants::CLASSES_FILTER_ID);
|
||||
setDisplayName(Tr::tr(Constants::CLASSES_FILTER_DISPLAY_NAME));
|
||||
@@ -121,8 +119,6 @@ CppClassesFilter::CppClassesFilter(CppLocatorData *locatorData)
|
||||
setDefaultIncludedByDefault(false);
|
||||
}
|
||||
|
||||
CppClassesFilter::~CppClassesFilter() = default;
|
||||
|
||||
LocatorFilterEntry CppClassesFilter::filterEntryFromIndexItem(IndexItem::Ptr info)
|
||||
{
|
||||
const QVariant id = QVariant::fromValue(info);
|
||||
@@ -135,8 +131,7 @@ LocatorFilterEntry CppClassesFilter::filterEntryFromIndexItem(IndexItem::Ptr inf
|
||||
return filterEntry;
|
||||
}
|
||||
|
||||
CppFunctionsFilter::CppFunctionsFilter(CppLocatorData *locatorData)
|
||||
: CppLocatorFilter(locatorData)
|
||||
CppFunctionsFilter::CppFunctionsFilter()
|
||||
{
|
||||
setId(Constants::FUNCTIONS_FILTER_ID);
|
||||
setDisplayName(Tr::tr(Constants::FUNCTIONS_FILTER_DISPLAY_NAME));
|
||||
@@ -144,8 +139,6 @@ CppFunctionsFilter::CppFunctionsFilter(CppLocatorData *locatorData)
|
||||
setDefaultIncludedByDefault(false);
|
||||
}
|
||||
|
||||
CppFunctionsFilter::~CppFunctionsFilter() = default;
|
||||
|
||||
LocatorFilterEntry CppFunctionsFilter::filterEntryFromIndexItem(IndexItem::Ptr info)
|
||||
{
|
||||
const QVariant id = QVariant::fromValue(info);
|
||||
|
@@ -4,7 +4,7 @@
|
||||
#pragma once
|
||||
|
||||
#include "cppeditor_global.h"
|
||||
#include "cpplocatordata.h"
|
||||
#include "indexitem.h"
|
||||
|
||||
#include <coreplugin/locator/ilocatorfilter.h>
|
||||
|
||||
@@ -15,17 +15,13 @@ class CPPEDITOR_EXPORT CppLocatorFilter : public Core::ILocatorFilter
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit CppLocatorFilter(CppLocatorData *locatorData);
|
||||
~CppLocatorFilter() override;
|
||||
explicit CppLocatorFilter();
|
||||
|
||||
QList<Core::LocatorFilterEntry> matchesFor(QFutureInterface<Core::LocatorFilterEntry> &future,
|
||||
const QString &entry) override;
|
||||
protected:
|
||||
virtual IndexItem::ItemType matchTypes() const { return IndexItem::All; }
|
||||
virtual Core::LocatorFilterEntry filterEntryFromIndexItem(IndexItem::Ptr info);
|
||||
|
||||
protected:
|
||||
CppLocatorData *m_data = nullptr;
|
||||
};
|
||||
|
||||
class CPPEDITOR_EXPORT CppClassesFilter : public CppLocatorFilter
|
||||
@@ -33,8 +29,7 @@ class CPPEDITOR_EXPORT CppClassesFilter : public CppLocatorFilter
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit CppClassesFilter(CppLocatorData *locatorData);
|
||||
~CppClassesFilter() override;
|
||||
explicit CppClassesFilter();
|
||||
|
||||
protected:
|
||||
IndexItem::ItemType matchTypes() const override { return IndexItem::Class; }
|
||||
@@ -46,8 +41,7 @@ class CPPEDITOR_EXPORT CppFunctionsFilter : public CppLocatorFilter
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit CppFunctionsFilter(CppLocatorData *locatorData);
|
||||
~CppFunctionsFilter() override;
|
||||
explicit CppFunctionsFilter();
|
||||
|
||||
protected:
|
||||
IndexItem::ItemType matchTypes() const override { return IndexItem::Function; }
|
||||
|
@@ -897,10 +897,10 @@ void CppModelManager::initCppTools()
|
||||
&d->m_locatorData, &CppLocatorData::onAboutToRemoveFiles);
|
||||
|
||||
// Set up builtin filters
|
||||
setLocatorFilter(std::make_unique<CppLocatorFilter>(&d->m_locatorData));
|
||||
setClassesFilter(std::make_unique<CppClassesFilter>(&d->m_locatorData));
|
||||
setLocatorFilter(std::make_unique<CppLocatorFilter>());
|
||||
setClassesFilter(std::make_unique<CppClassesFilter>());
|
||||
setIncludesFilter(std::make_unique<CppIncludesFilter>());
|
||||
setFunctionsFilter(std::make_unique<CppFunctionsFilter>(&d->m_locatorData));
|
||||
setFunctionsFilter(std::make_unique<CppFunctionsFilter>());
|
||||
setSymbolsFindFilter(std::make_unique<SymbolsFindFilter>(this));
|
||||
setCurrentDocumentFilter(
|
||||
std::make_unique<Internal::CppCurrentDocumentFilter>(this));
|
||||
|
Reference in New Issue
Block a user