forked from qt-creator/qt-creator
Locator: Cleanup and modernize Locator and filters
* Omit QLatin1{Char|String}
* Use member initialization
* Use range-based-for
(and fixed the cases with non-const Qt container)
* Sort includes to common style
Change-Id: Ibc33a732bb153862efd6d5febfac758229cb61d4
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: André Hartmann <aha_1980@gmx.de>
This commit is contained in:
committed by
André Hartmann
parent
ccc0bebcf4
commit
b2aa1b9845
@@ -27,9 +27,9 @@
|
||||
|
||||
#include "cppmodelmanager.h"
|
||||
|
||||
#include <coreplugin/idocument.h>
|
||||
#include <coreplugin/editormanager/editormanager.h>
|
||||
#include <coreplugin/editormanager/ieditor.h>
|
||||
#include <coreplugin/idocument.h>
|
||||
|
||||
#include <QRegularExpression>
|
||||
|
||||
@@ -43,7 +43,7 @@ CppCurrentDocumentFilter::CppCurrentDocumentFilter(CppTools::CppModelManager *ma
|
||||
{
|
||||
setId("Methods in current Document");
|
||||
setDisplayName(tr("C++ Symbols in Current Document"));
|
||||
setShortcutString(QString(QLatin1Char('.')));
|
||||
setShortcutString(".");
|
||||
setPriority(High);
|
||||
setIncludedByDefault(false);
|
||||
|
||||
@@ -70,7 +70,8 @@ QList<Core::LocatorFilterEntry> CppCurrentDocumentFilter::matchesFor(
|
||||
if (!regexp.isValid())
|
||||
return goodEntries;
|
||||
|
||||
foreach (IndexItem::Ptr info, itemsOfCurrentDocument()) {
|
||||
const QList<IndexItem::Ptr> items = itemsOfCurrentDocument();
|
||||
for (IndexItem::Ptr info : items) {
|
||||
if (future.isCanceled())
|
||||
break;
|
||||
|
||||
|
||||
@@ -35,7 +35,7 @@ CppFunctionsFilter::CppFunctionsFilter(CppLocatorData *locatorData)
|
||||
{
|
||||
setId("Methods");
|
||||
setDisplayName(tr("C++ Functions"));
|
||||
setShortcutString(QString(QLatin1Char('m')));
|
||||
setShortcutString("m");
|
||||
setIncludedByDefault(false);
|
||||
}
|
||||
|
||||
@@ -53,9 +53,7 @@ Core::LocatorFilterEntry CppFunctionsFilter::filterEntryFromIndexItem(IndexItem:
|
||||
if (extraInfo.isEmpty()) {
|
||||
extraInfo = info->shortNativeFilePath();
|
||||
} else {
|
||||
extraInfo.append(QLatin1String(" ("))
|
||||
.append(Utils::FileName::fromString(info->fileName()).fileName())
|
||||
.append(QLatin1String(")"));
|
||||
extraInfo.append(" (" + Utils::FileName::fromString(info->fileName()).fileName() + ')');
|
||||
}
|
||||
|
||||
Core::LocatorFilterEntry filterEntry(this, name + info->symbolType(), id, info->icon());
|
||||
|
||||
@@ -117,7 +117,8 @@ void CppIncludesIterator::fetchMore()
|
||||
CPlusPlus::Document::Ptr doc = m_snapshot.document(filePath);
|
||||
if (!doc)
|
||||
continue;
|
||||
foreach (const QString &includedPath, doc->includedFiles()) {
|
||||
const QStringList includedFiles = doc->includedFiles();
|
||||
for (const QString &includedPath : includedFiles ) {
|
||||
if (!m_allResultPaths.contains(includedPath)) {
|
||||
m_allResultPaths.insert(includedPath);
|
||||
m_queuedPaths.insert(includedPath);
|
||||
@@ -128,11 +129,10 @@ void CppIncludesIterator::fetchMore()
|
||||
}
|
||||
|
||||
CppIncludesFilter::CppIncludesFilter()
|
||||
: m_needsUpdate(true)
|
||||
{
|
||||
setId("All Included C/C++ Files");
|
||||
setDisplayName(tr("All Included C/C++ Files"));
|
||||
setShortcutString(QString(QLatin1Char('a')));
|
||||
setShortcutString("a");
|
||||
setIncludedByDefault(true);
|
||||
setPriority(ILocatorFilter::Low);
|
||||
|
||||
@@ -159,10 +159,12 @@ void CppIncludesFilter::prepareSearch(const QString &entry)
|
||||
m_needsUpdate = false;
|
||||
QSet<QString> seedPaths;
|
||||
for (Project *project : SessionManager::projects()) {
|
||||
foreach (const Utils::FileName &filePath, project->files(Project::AllFiles))
|
||||
const Utils::FileNameList allFiles = project->files(Project::AllFiles);
|
||||
for (const Utils::FileName &filePath : allFiles )
|
||||
seedPaths.insert(filePath.toString());
|
||||
}
|
||||
foreach (DocumentModel::Entry *entry, DocumentModel::entries()) {
|
||||
const QList<DocumentModel::Entry *> entries = DocumentModel::entries();
|
||||
for (DocumentModel::Entry *entry : entries) {
|
||||
if (entry)
|
||||
seedPaths.insert(entry->fileName().toString());
|
||||
}
|
||||
|
||||
@@ -45,7 +45,7 @@ public:
|
||||
private:
|
||||
void markOutdated();
|
||||
|
||||
bool m_needsUpdate;
|
||||
bool m_needsUpdate = true;
|
||||
};
|
||||
|
||||
} // namespace Internal
|
||||
|
||||
@@ -55,7 +55,7 @@ void CppLocatorData::onDocumentUpdated(const CPlusPlus::Document::Ptr &document)
|
||||
}
|
||||
}
|
||||
|
||||
if (i == ei && QFileInfo(document->fileName()).suffix() != QLatin1String("moc"))
|
||||
if (i == ei && QFileInfo(document->fileName()).suffix() != "moc")
|
||||
m_pendingDocuments.append(document);
|
||||
|
||||
flushPendingDocument(false);
|
||||
|
||||
@@ -25,21 +25,22 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <functional>
|
||||
#include <QHash>
|
||||
|
||||
#include <cplusplus/CppDocument.h>
|
||||
|
||||
#include "cpptools_global.h"
|
||||
#include "cppmodelmanager.h"
|
||||
#include "searchsymbols.h"
|
||||
#include "stringtable.h"
|
||||
|
||||
#include <cplusplus/CppDocument.h>
|
||||
|
||||
#include <QHash>
|
||||
|
||||
#include <functional>
|
||||
|
||||
namespace CppTools {
|
||||
|
||||
namespace Internal {
|
||||
class CppToolsPlugin;
|
||||
} // Internal namespace
|
||||
} // namespace Internal
|
||||
|
||||
class CppLocatorData : public QObject
|
||||
{
|
||||
@@ -73,7 +74,7 @@ private:
|
||||
{ return m_strings->insert(path); }
|
||||
|
||||
private:
|
||||
Internal::StringTable *m_strings; // Used to avoid QString duplication
|
||||
Internal::StringTable *m_strings = nullptr; // Used to avoid QString duplication
|
||||
|
||||
mutable SearchSymbols m_search;
|
||||
mutable QHash<QString, IndexItem::Ptr> m_infosByFile;
|
||||
@@ -82,4 +83,4 @@ private:
|
||||
mutable QVector<CPlusPlus::Document::Ptr> m_pendingDocuments;
|
||||
};
|
||||
|
||||
} // CppTools namespace
|
||||
} // namespace CppTools
|
||||
|
||||
@@ -41,7 +41,7 @@ CppLocatorFilter::CppLocatorFilter(CppLocatorData *locatorData)
|
||||
{
|
||||
setId("Classes and Methods");
|
||||
setDisplayName(tr("C++ Classes, Enums and Functions"));
|
||||
setShortcutString(QString(QLatin1Char(':')));
|
||||
setShortcutString(":");
|
||||
setIncludedByDefault(false);
|
||||
}
|
||||
|
||||
|
||||
@@ -52,7 +52,7 @@ protected:
|
||||
virtual Core::LocatorFilterEntry filterEntryFromIndexItem(IndexItem::Ptr info);
|
||||
|
||||
protected:
|
||||
CppLocatorData *m_data;
|
||||
CppLocatorData *m_data = nullptr;
|
||||
};
|
||||
|
||||
} // namespace Internal
|
||||
|
||||
@@ -74,8 +74,8 @@ public:
|
||||
|
||||
ResultDataList results = ResultData::fromFilterEntryList(matchesFor(searchText));
|
||||
if (debug) {
|
||||
ResultData::printFilterEntries(expectedResults, QLatin1String("Expected:"));
|
||||
ResultData::printFilterEntries(results, QLatin1String("Results:"));
|
||||
ResultData::printFilterEntries(expectedResults, "Expected:");
|
||||
ResultData::printFilterEntries(results, "Results:");
|
||||
}
|
||||
QVERIFY(!results.isEmpty());
|
||||
QCOMPARE(results, expectedResults);
|
||||
@@ -105,8 +105,8 @@ public:
|
||||
|
||||
ResultDataList results = ResultData::fromFilterEntryList(matchesFor());
|
||||
if (debug) {
|
||||
ResultData::printFilterEntries(expectedResults, QLatin1String("Expected:"));
|
||||
ResultData::printFilterEntries(results, QLatin1String("Results:"));
|
||||
ResultData::printFilterEntries(expectedResults, "Expected:");
|
||||
ResultData::printFilterEntries(results, "Results:");
|
||||
}
|
||||
QVERIFY(!results.isEmpty());
|
||||
QCOMPARE(results, expectedResults);
|
||||
@@ -162,9 +162,9 @@ void CppToolsPlugin::test_cpplocatorfilters_CppLocatorFilter_data()
|
||||
ILocatorFilter *cppClassesFilter = PluginManager::getObject<CppClassesFilter>();
|
||||
ILocatorFilter *cppLocatorFilter = PluginManager::getObject<CppLocatorFilter>();
|
||||
|
||||
MyTestDataDir testDirectory(QLatin1String("testdata_basic"));
|
||||
const QString testFile = testDirectory.file(QLatin1String("file1.cpp"));
|
||||
const QString objTestFile = testDirectory.file(QLatin1String("file1.mm"));
|
||||
MyTestDataDir testDirectory("testdata_basic");
|
||||
const QString testFile = testDirectory.file("file1.cpp");
|
||||
const QString objTestFile = testDirectory.file("file1.mm");
|
||||
const QString testFileShort = FileUtils::shortNativePath(FileName::fromString(testFile));
|
||||
const QString objTestFileShort = FileUtils::shortNativePath(FileName::fromString(objTestFile));
|
||||
|
||||
@@ -319,8 +319,8 @@ void CppToolsPlugin::test_cpplocatorfilters_CppLocatorFilter_data()
|
||||
|
||||
void CppToolsPlugin::test_cpplocatorfilters_CppCurrentDocumentFilter()
|
||||
{
|
||||
MyTestDataDir testDirectory(QLatin1String("testdata_basic"));
|
||||
const QString testFile = testDirectory.file(QLatin1String("file1.cpp"));
|
||||
MyTestDataDir testDirectory("testdata_basic");
|
||||
const QString testFile = testDirectory.file("file1.cpp");
|
||||
|
||||
QList<ResultData> expectedResults = QList<ResultData>()
|
||||
<< ResultData(_("int myVariable"), _(""))
|
||||
|
||||
Reference in New Issue
Block a user