summaryrefslogtreecommitdiff
path: root/src/plugins/languageclient/locatorfilter.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/languageclient/locatorfilter.h')
-rw-r--r--src/plugins/languageclient/locatorfilter.h10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/plugins/languageclient/locatorfilter.h b/src/plugins/languageclient/locatorfilter.h
index 24e7ff54c5..58da2ddf9c 100644
--- a/src/plugins/languageclient/locatorfilter.h
+++ b/src/plugins/languageclient/locatorfilter.h
@@ -74,13 +74,16 @@ private:
Utils::optional<LanguageServerProtocol::DocumentSymbolsResult> m_currentSymbols;
};
-class WorkspaceLocatorFilter : public Core::ILocatorFilter
+class LANGUAGECLIENT_EXPORT WorkspaceLocatorFilter : public Core::ILocatorFilter
{
Q_OBJECT
public:
WorkspaceLocatorFilter();
+ /// request workspace symbols for all clients with enabled locator
void prepareSearch(const QString &entry) override;
+ /// force request workspace symbols for all given clients
+ void prepareSearch(const QString &entry, const QVector<Client *> &clients);
QList<Core::LocatorFilterEntry> matchesFor(QFutureInterface<Core::LocatorFilterEntry> &future,
const QString &entry) override;
void accept(Core::LocatorFilterEntry selection,
@@ -95,6 +98,7 @@ protected:
explicit WorkspaceLocatorFilter(const QVector<LanguageServerProtocol::SymbolKind> &filter);
private:
+ void prepareSearch(const QString &entry, const QVector<Client *> &clients, bool force);
void handleResponse(Client *client,
const LanguageServerProtocol::WorkspaceSymbolRequest::Response &response);
@@ -104,13 +108,13 @@ private:
QVector<LanguageServerProtocol::SymbolKind> m_filterKinds;
};
-class WorkspaceClassLocatorFilter : public WorkspaceLocatorFilter
+class LANGUAGECLIENT_EXPORT WorkspaceClassLocatorFilter : public WorkspaceLocatorFilter
{
public:
WorkspaceClassLocatorFilter();
};
-class WorkspaceMethodLocatorFilter : public WorkspaceLocatorFilter
+class LANGUAGECLIENT_EXPORT WorkspaceMethodLocatorFilter : public WorkspaceLocatorFilter
{
public:
WorkspaceMethodLocatorFilter();