Locator: Add highlighting of the search text

Change-Id: Ia166e9667076e46770a754b626ceb28080139e79
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
This commit is contained in:
Serhii Moroz
2016-08-02 12:04:40 +03:00
parent 4f66adb9a2
commit 6ecb1c4018
22 changed files with 267 additions and 153 deletions

View File

@@ -127,8 +127,12 @@ QList<LocatorFilterEntry> HelpIndexFilter::matchesFor(QFutureInterface<LocatorFi
keywords << unsortedKeywords;
m_keywordCache = allresults;
m_searchTermCache = entry;
foreach (const QString &keyword, keywords)
entries.append(LocatorFilterEntry(this, keyword, QVariant(), m_icon));
foreach (const QString &keyword, keywords) {
const int index = keyword.indexOf(entry, 0, cs);
LocatorFilterEntry filterEntry(this, keyword, QVariant(), m_icon);
filterEntry.highlightInfo = {index, entry.length()};
entries.append(filterEntry);
}
return entries;
}

View File

@@ -129,15 +129,16 @@ RemoteHelpFilter::~RemoteHelpFilter()
{
}
QList<Core::LocatorFilterEntry> RemoteHelpFilter::matchesFor(QFutureInterface<Core::LocatorFilterEntry> &future, const QString &pattern)
QList<Core::LocatorFilterEntry> RemoteHelpFilter::matchesFor(QFutureInterface<Core::LocatorFilterEntry> &future, const QString &entry)
{
QList<Core::LocatorFilterEntry> entries;
foreach (const QString &url, remoteUrls()) {
if (future.isCanceled())
break;
entries.append(Core::LocatorFilterEntry(this, url.arg(pattern), QVariant(),
m_icon));
const QString name = url.arg(entry);
Core::LocatorFilterEntry filterEntry(this, name, QVariant(), m_icon);
filterEntry.highlightInfo = {name.lastIndexOf(entry), entry.length()};
entries.append(filterEntry);
}
return entries;
}