forked from qt-creator/qt-creator
SearchEngine: Replace executeSearch() with searchExecutor()
Change-Id: Icce615d0cedef35ff4278f9ecfffa415b1aa0386 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Orgad Shaneh <orgads@gmail.com>
This commit is contained in:
@@ -265,9 +265,11 @@ void GitGrep::writeSettings(QSettings *settings) const
|
|||||||
settings->setValue(GitGrepRef, m_treeLineEdit->text());
|
settings->setValue(GitGrepRef, m_treeLineEdit->text());
|
||||||
}
|
}
|
||||||
|
|
||||||
QFuture<SearchResultItems> GitGrep::executeSearch(const FileFindParameters ¶meters)
|
SearchExecutor GitGrep::searchExecutor() const
|
||||||
{
|
{
|
||||||
return Utils::asyncRun(runGitGrep, parameters);
|
return [](const FileFindParameters ¶meters) {
|
||||||
|
return Utils::asyncRun(runGitGrep, parameters);
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
EditorOpener GitGrep::editorOpener() const
|
EditorOpener GitGrep::editorOpener() const
|
||||||
|
|||||||
@@ -28,8 +28,7 @@ public:
|
|||||||
QVariant parameters() const override;
|
QVariant parameters() const override;
|
||||||
void readSettings(QSettings *settings) override;
|
void readSettings(QSettings *settings) override;
|
||||||
void writeSettings(QSettings *settings) const override;
|
void writeSettings(QSettings *settings) const override;
|
||||||
QFuture<Utils::SearchResultItems> executeSearch(
|
TextEditor::SearchExecutor searchExecutor() const override;
|
||||||
const TextEditor::FileFindParameters ¶meters) override;
|
|
||||||
TextEditor::EditorOpener editorOpener() const override;
|
TextEditor::EditorOpener editorOpener() const override;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
|||||||
@@ -164,10 +164,11 @@ void FindInFilesSilverSearcher::writeSettings(QSettings *settings) const
|
|||||||
settings->setValue(s_searchOptionsString, m_searchOptionsLineEdit->text());
|
settings->setValue(s_searchOptionsString, m_searchOptionsLineEdit->text());
|
||||||
}
|
}
|
||||||
|
|
||||||
QFuture<SearchResultItems> FindInFilesSilverSearcher::executeSearch(
|
SearchExecutor FindInFilesSilverSearcher::searchExecutor() const
|
||||||
const FileFindParameters ¶meters)
|
|
||||||
{
|
{
|
||||||
return Utils::asyncRun(runSilverSeacher, parameters);
|
return [](const FileFindParameters ¶meters) {
|
||||||
|
return Utils::asyncRun(runSilverSeacher, parameters);
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
void FindInFilesSilverSearcher::readSettings(QSettings *settings)
|
void FindInFilesSilverSearcher::readSettings(QSettings *settings)
|
||||||
|
|||||||
@@ -31,8 +31,7 @@ public:
|
|||||||
QVariant parameters() const override;
|
QVariant parameters() const override;
|
||||||
void readSettings(QSettings *settings) override;
|
void readSettings(QSettings *settings) override;
|
||||||
void writeSettings(QSettings *settings) const override;
|
void writeSettings(QSettings *settings) const override;
|
||||||
QFuture<Utils::SearchResultItems> executeSearch(
|
TextEditor::SearchExecutor searchExecutor() const override;
|
||||||
const TextEditor::FileFindParameters ¶meters) override;
|
|
||||||
|
|
||||||
private:
|
private:
|
||||||
QPointer<Core::IFindSupport> m_currentFindSupport;
|
QPointer<Core::IFindSupport> m_currentFindSupport;
|
||||||
|
|||||||
@@ -145,11 +145,12 @@ public:
|
|||||||
QVariant parameters() const override { return {}; }
|
QVariant parameters() const override { return {}; }
|
||||||
void readSettings(QSettings * /*settings*/) override {}
|
void readSettings(QSettings * /*settings*/) override {}
|
||||||
void writeSettings(QSettings * /*settings*/) const override {}
|
void writeSettings(QSettings * /*settings*/) const override {}
|
||||||
QFuture<SearchResultItems> executeSearch(const FileFindParameters ¶meters) override
|
SearchExecutor searchExecutor() const override
|
||||||
{
|
{
|
||||||
return Utils::findInFiles(parameters.text, parameters.fileContainerProvider(),
|
return [](const FileFindParameters ¶meters) {
|
||||||
parameters.flags, TextDocument::openedTextDocumentContents());
|
return Utils::findInFiles(parameters.text, parameters.fileContainerProvider(),
|
||||||
|
parameters.flags, TextDocument::openedTextDocumentContents());
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
private:
|
private:
|
||||||
@@ -307,16 +308,18 @@ void BaseFileFind::runNewSearch(const QString &txt, FindFlags findFlags,
|
|||||||
setupSearch(search);
|
setupSearch(search);
|
||||||
search->setTextToReplace(txt);
|
search->setTextToReplace(txt);
|
||||||
search->setSearchAgainSupported(true);
|
search->setSearchAgainSupported(true);
|
||||||
|
SearchEngine *searchEngine = currentSearchEngine();
|
||||||
FileFindParameters parameters;
|
FileFindParameters parameters;
|
||||||
parameters.text = txt;
|
parameters.text = txt;
|
||||||
parameters.flags = findFlags;
|
parameters.flags = findFlags;
|
||||||
parameters.nameFilters = fileNameFilters();
|
parameters.nameFilters = fileNameFilters();
|
||||||
parameters.exclusionFilters = fileExclusionFilters();
|
parameters.exclusionFilters = fileExclusionFilters();
|
||||||
parameters.additionalParameters = additionalParameters();
|
parameters.additionalParameters = additionalParameters();
|
||||||
parameters.searchEngineParameters = currentSearchEngine()->parameters();
|
parameters.searchEngineParameters = searchEngine->parameters();
|
||||||
parameters.searchEngineIndex = d->m_currentSearchEngineIndex;
|
parameters.searchEngineIndex = d->m_currentSearchEngineIndex;
|
||||||
parameters.fileContainerProvider = fileContainerProvider();
|
parameters.fileContainerProvider = fileContainerProvider();
|
||||||
parameters.editorOpener = currentSearchEngine()->editorOpener();
|
parameters.editorOpener = searchEngine->editorOpener();
|
||||||
|
parameters.searchExecutor = searchEngine->searchExecutor();
|
||||||
|
|
||||||
search->setUserData(QVariant::fromValue(parameters));
|
search->setUserData(QVariant::fromValue(parameters));
|
||||||
connect(search, &SearchResult::activated, this, [this, search](const SearchResultItem &item) {
|
connect(search, &SearchResult::activated, this, [this, search](const SearchResultItem &item) {
|
||||||
@@ -594,7 +597,7 @@ FilePaths BaseFileFind::replaceAll(const QString &text, const SearchResultItems
|
|||||||
|
|
||||||
QFuture<SearchResultItems> BaseFileFind::executeSearch(const FileFindParameters ¶meters)
|
QFuture<SearchResultItems> BaseFileFind::executeSearch(const FileFindParameters ¶meters)
|
||||||
{
|
{
|
||||||
return d->m_searchEngines[parameters.searchEngineIndex]->executeSearch(parameters);
|
return parameters.searchExecutor(parameters);
|
||||||
}
|
}
|
||||||
|
|
||||||
namespace Internal {
|
namespace Internal {
|
||||||
|
|||||||
@@ -32,6 +32,7 @@ class FileFindParameters;
|
|||||||
using FileContainerProvider = std::function<Utils::FileContainer()>;
|
using FileContainerProvider = std::function<Utils::FileContainer()>;
|
||||||
using EditorOpener = std::function<Core::IEditor *(const Utils::SearchResultItem &,
|
using EditorOpener = std::function<Core::IEditor *(const Utils::SearchResultItem &,
|
||||||
const FileFindParameters &)>;
|
const FileFindParameters &)>;
|
||||||
|
using SearchExecutor = std::function<QFuture<Utils::SearchResultItems>(const FileFindParameters &)>;
|
||||||
|
|
||||||
class TEXTEDITOR_EXPORT FileFindParameters
|
class TEXTEDITOR_EXPORT FileFindParameters
|
||||||
{
|
{
|
||||||
@@ -45,6 +46,7 @@ public:
|
|||||||
Utils::FindFlags flags;
|
Utils::FindFlags flags;
|
||||||
FileContainerProvider fileContainerProvider = {};
|
FileContainerProvider fileContainerProvider = {};
|
||||||
EditorOpener editorOpener = {};
|
EditorOpener editorOpener = {};
|
||||||
|
SearchExecutor searchExecutor = {};
|
||||||
};
|
};
|
||||||
|
|
||||||
using ProcessSetupHandler = std::function<void(Utils::Process &)>;
|
using ProcessSetupHandler = std::function<void(Utils::Process &)>;
|
||||||
@@ -72,8 +74,7 @@ public:
|
|||||||
virtual QVariant parameters() const = 0;
|
virtual QVariant parameters() const = 0;
|
||||||
virtual void readSettings(QSettings *settings) = 0;
|
virtual void readSettings(QSettings *settings) = 0;
|
||||||
virtual void writeSettings(QSettings *settings) const = 0;
|
virtual void writeSettings(QSettings *settings) const = 0;
|
||||||
virtual QFuture<Utils::SearchResultItems> executeSearch(
|
virtual SearchExecutor searchExecutor() const = 0;
|
||||||
const FileFindParameters ¶meters) = 0;
|
|
||||||
virtual EditorOpener editorOpener() const { return {}; }
|
virtual EditorOpener editorOpener() const { return {}; }
|
||||||
bool isEnabled() const;
|
bool isEnabled() const;
|
||||||
void setEnabled(bool enabled);
|
void setEnabled(bool enabled);
|
||||||
|
|||||||
Reference in New Issue
Block a user