summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJarek Kobus <jaroslaw.kobus@qt.io>2023-04-25 09:48:03 +0200
committerJarek Kobus <jaroslaw.kobus@qt.io>2023-05-16 08:32:39 +0000
commit23f7352834c1e0c6fb6440766dbb16341ce01ae8 (patch)
treeeb9064f61affca5478eb835587d4e593bac1825b
parentb4734ff7279284eec4f0ced0e4de07cb348c481e (diff)
downloadqt-creator-23f7352834c1e0c6fb6440766dbb16341ce01ae8.tar.gz
ILocatorFilter: Remove prepareSearch() and matchesFor()
Implement matchers() instead. Make matchers() a pure virtual method. Change-Id: I931cb9a5787bc796968cd2123e14d33002169588 Reviewed-by: Eike Ziller <eike.ziller@qt.io>
-rw-r--r--src/plugins/coreplugin/locator/ilocatorfilter.cpp33
-rw-r--r--src/plugins/coreplugin/locator/ilocatorfilter.h11
-rw-r--r--src/plugins/modeleditor/elementtasks.cpp1
3 files changed, 2 insertions, 43 deletions
diff --git a/src/plugins/coreplugin/locator/ilocatorfilter.cpp b/src/plugins/coreplugin/locator/ilocatorfilter.cpp
index 45ae41c8fd..1a08792382 100644
--- a/src/plugins/coreplugin/locator/ilocatorfilter.cpp
+++ b/src/plugins/coreplugin/locator/ilocatorfilter.cpp
@@ -593,23 +593,6 @@ QString ILocatorFilter::shortcutString() const
}
/*!
- Performs actions that need to be done in the main thread before actually
- running the search for \a entry.
-
- Called on the main thread before matchesFor() is called in a separate
- thread.
-
- The default implementation does nothing.
-
- \sa matchesFor()
-*/
-void ILocatorFilter::prepareSearch(const QString &entry)
-{
- Q_UNUSED(entry)
-}
-
-
-/*!
Sets the refresh recipe for refreshing cached data.
*/
void ILocatorFilter::setRefreshRecipe(const std::optional<TaskItem> &recipe)
@@ -1113,22 +1096,6 @@ bool ILocatorFilter::isOldSetting(const QByteArray &state)
}
/*!
- \fn QList<Core::LocatorFilterEntry> Core::ILocatorFilter::matchesFor(QFutureInterface<Core::LocatorFilterEntry> &future, const QString &entry)
-
- Returns the list of results of this filter for the search term \a entry.
- This is run in a separate thread, but is guaranteed to only run in a single
- thread at any given time. Quickly running preparations can be done in the
- GUI thread in prepareSearch().
-
- Implementations should do a case sensitive or case insensitive search
- depending on caseSensitivity(). If \a future is \c canceled, the search
- should be aborted.
-
- \sa prepareSearch()
- \sa caseSensitivity()
-*/
-
-/*!
\enum Core::ILocatorFilter::Priority
This enum value holds the priority that is used for ordering the results
diff --git a/src/plugins/coreplugin/locator/ilocatorfilter.h b/src/plugins/coreplugin/locator/ilocatorfilter.h
index fb70648967..8a8114743c 100644
--- a/src/plugins/coreplugin/locator/ilocatorfilter.h
+++ b/src/plugins/coreplugin/locator/ilocatorfilter.h
@@ -10,7 +10,6 @@
#include <utils/link.h>
#include <utils/tasktree.h>
-#include <QFutureInterface>
#include <QIcon>
#include <QKeySequence>
@@ -18,7 +17,7 @@
QT_BEGIN_NAMESPACE
template <typename T>
-class QPromise;
+class QFuture;
QT_END_NAMESPACE
namespace Core {
@@ -227,11 +226,6 @@ public:
std::optional<QString> defaultSearchText() const;
void setDefaultSearchText(const QString &defaultSearchText);
- virtual void prepareSearch(const QString &entry);
-
- virtual QList<LocatorFilterEntry> matchesFor(QFutureInterface<LocatorFilterEntry> &,
- const QString &) { return {}; };
-
virtual QByteArray saveState() const;
virtual void restoreState(const QByteArray &state);
@@ -281,8 +275,7 @@ protected:
static bool isOldSetting(const QByteArray &state);
private:
- // TODO: Make pure virtual when all subclasses implement it.
- virtual LocatorMatcherTasks matchers() { return {}; }
+ virtual LocatorMatcherTasks matchers() = 0;
friend class Internal::Locator;
friend class Internal::LocatorWidget;
diff --git a/src/plugins/modeleditor/elementtasks.cpp b/src/plugins/modeleditor/elementtasks.cpp
index d54cc2e6c8..6413686f61 100644
--- a/src/plugins/modeleditor/elementtasks.cpp
+++ b/src/plugins/modeleditor/elementtasks.cpp
@@ -28,7 +28,6 @@
#include <cppeditor/indexitem.h>
#include <cppeditor/searchsymbols.h>
#include <coreplugin/editormanager/editormanager.h>
-#include <coreplugin/locator/ilocatorfilter.h>
#include <utils/qtcassert.h>
#include <QMenu>