LSP: support 'window/showMessageRequest' and 'window/showMessage'

All showMessage notification are send to the GeneralMessages Pane and
the showMessageRequest will show a message box

Change-Id: Ida3f2a43669ec4c08694ed74e086a281d3d66f9d
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
This commit is contained in:
David Schulz
2018-09-12 10:24:02 +02:00
parent d3c31ff945
commit f6da85cc4b
4 changed files with 61 additions and 3 deletions

View File

@@ -118,8 +118,6 @@ public:
void log(const QString &message,
Core::MessageManager::PrintToOutputPaneFlag flag = Core::MessageManager::NoModeSwitch);
void log(const LanguageServerProtocol::LogMessageParams &message,
Core::MessageManager::PrintToOutputPaneFlag flag = Core::MessageManager::NoModeSwitch);
signals:
void initialized(LanguageServerProtocol::ServerCapabilities capabilities);
@@ -139,6 +137,11 @@ private:
void intializeCallback(const LanguageServerProtocol::InitializeResponse &initResponse);
void shutDownCallback(const LanguageServerProtocol::ShutdownResponse &shutdownResponse);
bool sendWorkspceFolderChanges() const;
void log(const LanguageServerProtocol::ShowMessageParams &message,
Core::MessageManager::PrintToOutputPaneFlag flag = Core::MessageManager::NoModeSwitch);
void showMessageBox(const LanguageServerProtocol::ShowMessageRequestParams &message,
const LanguageServerProtocol::MessageId &id);
using ContentHandler = std::function<void(const QByteArray &, QTextCodec *, QString &,
LanguageServerProtocol::ResponseHandlers,