diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/plugins/coreplugin/locator/locatorfiltersfilter.cpp | 53 | ||||
-rw-r--r-- | src/plugins/coreplugin/locator/locatorfiltersfilter.h | 16 |
2 files changed, 2 insertions, 67 deletions
diff --git a/src/plugins/coreplugin/locator/locatorfiltersfilter.cpp b/src/plugins/coreplugin/locator/locatorfiltersfilter.cpp index a602be2784..782cb3f557 100644 --- a/src/plugins/coreplugin/locator/locatorfiltersfilter.cpp +++ b/src/plugins/coreplugin/locator/locatorfiltersfilter.cpp @@ -7,11 +7,8 @@ #include "../actionmanager/actionmanager.h" #include "../coreplugintr.h" -#include <utils/qtcassert.h> #include <utils/utilsicons.h> -Q_DECLARE_METATYPE(Core::ILocatorFilter*) - using namespace Utils; namespace Core::Internal { @@ -68,54 +65,4 @@ LocatorMatcherTasks LocatorFiltersFilter::matchers() return {{Sync(onSetup), storage}}; } -void LocatorFiltersFilter::prepareSearch(const QString &entry) -{ - m_filterShortcutStrings.clear(); - m_filterDisplayNames.clear(); - m_filterDescriptions.clear(); - if (!entry.isEmpty()) - return; - - QMap<QString, ILocatorFilter *> uniqueFilters; - const QList<ILocatorFilter *> allFilters = Locator::filters(); - for (ILocatorFilter *filter : allFilters) { - const QString filterId = filter->shortcutString() + ',' + filter->displayName(); - uniqueFilters.insert(filterId, filter); - } - - for (ILocatorFilter *filter : std::as_const(uniqueFilters)) { - if (!filter->shortcutString().isEmpty() && !filter->isHidden() && filter->isEnabled()) { - m_filterShortcutStrings.append(filter->shortcutString()); - m_filterDisplayNames.append(filter->displayName()); - m_filterDescriptions.append(filter->description()); - QString keyboardShortcut; - if (auto command = ActionManager::command(filter->actionId())) - keyboardShortcut = command->keySequence().toString(QKeySequence::NativeText); - m_filterKeyboardShortcuts.append(keyboardShortcut); - } - } -} - -QList<LocatorFilterEntry> LocatorFiltersFilter::matchesFor(QFutureInterface<LocatorFilterEntry> &future, const QString &entry) -{ - Q_UNUSED(entry) // search is already done in the GUI thread in prepareSearch - QList<LocatorFilterEntry> entries; - for (int i = 0; i < m_filterShortcutStrings.size(); ++i) { - if (future.isCanceled()) - break; - const QString shortcutString = m_filterShortcutStrings.at(i); - LocatorFilterEntry filterEntry; - filterEntry.displayName = shortcutString; - filterEntry.acceptor = [shortcutString] { - return AcceptResult{shortcutString + ' ', int(shortcutString.size() + 1)}; - }; - filterEntry.displayIcon = m_icon; - filterEntry.extraInfo = m_filterDisplayNames.at(i); - filterEntry.toolTip = m_filterDescriptions.at(i); - filterEntry.displayExtra = m_filterKeyboardShortcuts.at(i); - entries.append(filterEntry); - } - return entries; -} - } // Core::Internal diff --git a/src/plugins/coreplugin/locator/locatorfiltersfilter.h b/src/plugins/coreplugin/locator/locatorfiltersfilter.h index e1cf75a75b..f6dea092eb 100644 --- a/src/plugins/coreplugin/locator/locatorfiltersfilter.h +++ b/src/plugins/coreplugin/locator/locatorfiltersfilter.h @@ -5,12 +5,7 @@ #include "ilocatorfilter.h" -#include <QIcon> - -namespace Core { -namespace Internal { - -class Locator; +namespace Core::Internal { /*! This filter provides the user with the list of available Locator filters. @@ -18,15 +13,9 @@ class Locator; */ class LocatorFiltersFilter : public ILocatorFilter { - Q_OBJECT - public: LocatorFiltersFilter(); - // ILocatorFilter - void prepareSearch(const QString &entry) override; - QList<LocatorFilterEntry> matchesFor(QFutureInterface<LocatorFilterEntry> &future, - const QString &entry) override; private: LocatorMatcherTasks matchers() final; @@ -37,5 +26,4 @@ private: QIcon m_icon; }; -} // namespace Internal -} // namespace Core +} // namespace Core::Internal |