From b865fa5571dbfb96457e243c7e0a2c01e2695fd1 Mon Sep 17 00:00:00 2001 From: David Schulz Date: Wed, 10 Feb 2021 14:03:45 +0100 Subject: [PATCH] LanguageClient: Rename logger -> inspector ... to be able to add more features to this dialog. Change-Id: If8692bee484e25c1ba5e4ea629a77d14ff5d92ab Reviewed-by: Christian Stenger --- src/plugins/languageclient/CMakeLists.txt | 2 +- src/plugins/languageclient/languageclient.pro | 4 +- src/plugins/languageclient/languageclient.qbs | 4 +- .../languageclient/languageclientmanager.cpp | 10 ++-- .../languageclient/languageclientmanager.h | 6 +- .../languageclient/languageclientutils.cpp | 4 +- .../{lsplogger.cpp => lspinspector.cpp} | 57 ++++++++++--------- .../{lsplogger.h => lspinspector.h} | 4 +- 8 files changed, 47 insertions(+), 44 deletions(-) rename src/plugins/languageclient/{lsplogger.cpp => lspinspector.cpp} (87%) rename src/plugins/languageclient/{lsplogger.h => lspinspector.h} (97%) diff --git a/src/plugins/languageclient/CMakeLists.txt b/src/plugins/languageclient/CMakeLists.txt index bda78b7cbb2..04ffe805a9c 100644 --- a/src/plugins/languageclient/CMakeLists.txt +++ b/src/plugins/languageclient/CMakeLists.txt @@ -21,6 +21,6 @@ add_qtc_plugin(LanguageClient languageclientutils.cpp languageclientutils.h languageclient_global.h locatorfilter.cpp locatorfilter.h - lsplogger.cpp lsplogger.h + lspinspector.cpp lspinspector.h semantichighlightsupport.cpp semantichighlightsupport.h ) diff --git a/src/plugins/languageclient/languageclient.pro b/src/plugins/languageclient/languageclient.pro index c60cf4dca80..79619e1ca65 100644 --- a/src/plugins/languageclient/languageclient.pro +++ b/src/plugins/languageclient/languageclient.pro @@ -21,7 +21,7 @@ HEADERS += \ languageclientsymbolsupport.h \ languageclientutils.h \ locatorfilter.h \ - lsplogger.h \ + lspinspector.h \ semantichighlightsupport.h @@ -43,7 +43,7 @@ SOURCES += \ languageclientsymbolsupport.cpp \ languageclientutils.cpp \ locatorfilter.cpp \ - lsplogger.cpp \ + lspinspector.cpp \ semantichighlightsupport.cpp RESOURCES += \ diff --git a/src/plugins/languageclient/languageclient.qbs b/src/plugins/languageclient/languageclient.qbs index c4d3385f29c..4fd0e69cec3 100644 --- a/src/plugins/languageclient/languageclient.qbs +++ b/src/plugins/languageclient/languageclient.qbs @@ -50,8 +50,8 @@ QtcPlugin { "languageclientutils.h", "locatorfilter.cpp", "locatorfilter.h", - "lsplogger.cpp", - "lsplogger.h", + "lspinspector.cpp", + "lspinspector.h", "semantichighlightsupport.cpp", "semantichighlightsupport.h", ] diff --git a/src/plugins/languageclient/languageclientmanager.cpp b/src/plugins/languageclient/languageclientmanager.cpp index a272362937f..52dcf1133c9 100644 --- a/src/plugins/languageclient/languageclientmanager.cpp +++ b/src/plugins/languageclient/languageclientmanager.cpp @@ -365,14 +365,14 @@ void LanguageClientManager::logBaseMessage(const LspLogMessage::MessageSender se const QString &clientName, const BaseMessage &message) { - instance()->m_logger.log(sender, clientName, message); + instance()->m_inspector.log(sender, clientName, message); } -void LanguageClientManager::showLogger() +void LanguageClientManager::showInspector() { - QWidget *loggerWidget = instance()->m_logger.createWidget(); - loggerWidget->setAttribute(Qt::WA_DeleteOnClose); - loggerWidget->show(); + QWidget *inspectorWidget = instance()->m_inspector.createWidget(); + inspectorWidget->setAttribute(Qt::WA_DeleteOnClose); + inspectorWidget->show(); } QVector LanguageClientManager::reachableClients() diff --git a/src/plugins/languageclient/languageclientmanager.h b/src/plugins/languageclient/languageclientmanager.h index 980b59ef4d7..22c59e3a5cc 100644 --- a/src/plugins/languageclient/languageclientmanager.h +++ b/src/plugins/languageclient/languageclientmanager.h @@ -29,7 +29,7 @@ #include "languageclient_global.h" #include "languageclientsettings.h" #include "locatorfilter.h" -#include "lsplogger.h" +#include "lspinspector.h" #include @@ -94,7 +94,7 @@ public: static void logBaseMessage(const LspLogMessage::MessageSender sender, const QString &clientName, const LanguageServerProtocol::BaseMessage &message); - static void showLogger(); + static void showInspector(); signals: void shutdownFinished(); @@ -126,6 +126,6 @@ private: WorkspaceLocatorFilter m_workspaceLocatorFilter; WorkspaceClassLocatorFilter m_workspaceClassLocatorFilter; WorkspaceMethodLocatorFilter m_workspaceMethodLocatorFilter; - LspLogger m_logger; + LspInspector m_inspector; }; } // namespace LanguageClient diff --git a/src/plugins/languageclient/languageclientutils.cpp b/src/plugins/languageclient/languageclientutils.cpp index 5b6dd647683..a517526f02d 100644 --- a/src/plugins/languageclient/languageclientutils.cpp +++ b/src/plugins/languageclient/languageclientutils.cpp @@ -240,8 +240,8 @@ void updateEditorToolBar(Core::IEditor *editor) QObject::connect(action, &QAction::triggered, reopen); } menu->addActions(clientsGroup->actions()); - menu->addAction("Language Client Logs", []() { - LanguageClientManager::showLogger(); + menu->addAction("Inspect Language Clients", []() { + LanguageClientManager::showInspector(); }); menu->addAction("Manage...", []() { Core::ICore::showOptionsDialog(Constants::LANGUAGECLIENT_SETTINGS_PAGE); diff --git a/src/plugins/languageclient/lsplogger.cpp b/src/plugins/languageclient/lspinspector.cpp similarity index 87% rename from src/plugins/languageclient/lsplogger.cpp rename to src/plugins/languageclient/lspinspector.cpp index 3c0985a4b83..624d0572168 100644 --- a/src/plugins/languageclient/lsplogger.cpp +++ b/src/plugins/languageclient/lspinspector.cpp @@ -23,7 +23,7 @@ ** ****************************************************************************/ -#include "lsplogger.h" +#include "lspinspector.h" #include #include @@ -64,11 +64,11 @@ private: QLabel *m_mimeType = nullptr; }; -class LspLoggerWidget : public QDialog +class LspInspectorWidget : public QDialog { - Q_DECLARE_TR_FUNCTIONS(LspLoggerWidget) + Q_DECLARE_TR_FUNCTIONS(LspInspectorWidget) public: - explicit LspLoggerWidget(LspLogger *logger); + explicit LspInspectorWidget(LspInspector *inspector); private: void addMessage(const QString &clientName, const LspLogMessage &message); @@ -77,7 +77,7 @@ private: void selectMatchingMessage(LspLogMessage::MessageSender sender, const QJsonValue &id); void saveLog(); - LspLogger *m_logger = nullptr; + LspInspector *m_inspector = nullptr; QListWidget *m_clients = nullptr; MessageDetailWidget *m_clientDetails = nullptr; QListView *m_messages = nullptr; @@ -85,14 +85,14 @@ private: Utils::ListModel m_model; }; -QWidget *LspLogger::createWidget() +QWidget *LspInspector::createWidget() { - return new LspLoggerWidget(this); + return new LspInspectorWidget(this); } -void LspLogger::log(const LspLogMessage::MessageSender sender, - const QString &clientName, - const BaseMessage &message) +void LspInspector::log(const LspLogMessage::MessageSender sender, + const QString &clientName, + const BaseMessage &message) { std::list &clientLog = m_logs[clientName]; while (clientLog.size() >= static_cast(m_logSize)) @@ -101,12 +101,12 @@ void LspLogger::log(const LspLogMessage::MessageSender sender, emit newMessage(clientName, clientLog.back()); } -std::list LspLogger::messages(const QString &clientName) const +std::list LspInspector::messages(const QString &clientName) const { return m_logs[clientName]; } -QList LspLogger::clients() const +QList LspInspector::clients() const { return m_logs.keys(); } @@ -131,17 +131,20 @@ static QVariant messageData(const LspLogMessage &message, int, int role) return {}; } -LspLoggerWidget::LspLoggerWidget(LspLogger *logger) - : m_logger(logger) +LspInspectorWidget::LspInspectorWidget(LspInspector *inspector) + : m_inspector(inspector) { - setWindowTitle(tr("Language Client Log")); + setWindowTitle(tr("Language Client Inspector")); - connect(logger, &LspLogger::newMessage, this, &LspLoggerWidget::addMessage); + connect(inspector, &LspInspector::newMessage, this, &LspInspectorWidget::addMessage); connect(Core::ICore::instance(), &Core::ICore::coreAboutToClose, this, &QWidget::close); m_clients = new QListWidget; - m_clients->addItems(logger->clients()); - connect(m_clients, &QListWidget::currentTextChanged, this, &LspLoggerWidget::setCurrentClient); + m_clients->addItems(inspector->clients()); + connect(m_clients, + &QListWidget::currentTextChanged, + this, + &LspInspectorWidget::setCurrentClient); m_clients->setSizePolicy(QSizePolicy::Maximum, QSizePolicy::MinimumExpanding); m_clientDetails = new MessageDetailWidget; @@ -159,7 +162,7 @@ LspLoggerWidget::LspLoggerWidget(LspLogger *logger) connect(m_messages->selectionModel(), &QItemSelectionModel::currentChanged, this, - &LspLoggerWidget::currentMessageChanged); + &LspInspectorWidget::currentMessageChanged); m_messages->setSizePolicy(QSizePolicy::MinimumExpanding, QSizePolicy::Expanding); m_messages->setSelectionMode(QAbstractItemView::MultiSelection); @@ -182,14 +185,14 @@ LspLoggerWidget::LspLoggerWidget(LspLogger *logger) layout->addWidget(buttonBox); // save - connect(buttonBox, &QDialogButtonBox::accepted, this, &LspLoggerWidget::saveLog); + connect(buttonBox, &QDialogButtonBox::accepted, this, &LspInspectorWidget::saveLog); // close connect(buttonBox, &QDialogButtonBox::rejected, this, &QDialog::reject); resize(1024, 768); } -void LspLoggerWidget::addMessage(const QString &clientName, const LspLogMessage &message) +void LspInspectorWidget::addMessage(const QString &clientName, const LspLogMessage &message) { if (m_clients->findItems(clientName, Qt::MatchExactly).isEmpty()) m_clients->addItem(clientName); @@ -198,14 +201,14 @@ void LspLoggerWidget::addMessage(const QString &clientName, const LspLogMessage m_model.appendItem(message); } -void LspLoggerWidget::setCurrentClient(const QString &clientName) +void LspInspectorWidget::setCurrentClient(const QString &clientName) { m_model.clear(); - for (const LspLogMessage &message : m_logger->messages(clientName)) + for (const LspLogMessage &message : m_inspector->messages(clientName)) m_model.appendItem(message); } -void LspLoggerWidget::currentMessageChanged(const QModelIndex &index) +void LspInspectorWidget::currentMessageChanged(const QModelIndex &index) { m_messages->clearSelection(); if (!index.isValid()) @@ -244,8 +247,8 @@ static bool matches(LspLogMessage::MessageSender sender, return json.value(QString{idKey}) == id; } -void LspLoggerWidget::selectMatchingMessage(LspLogMessage::MessageSender sender, - const QJsonValue &id) +void LspInspectorWidget::selectMatchingMessage(LspLogMessage::MessageSender sender, + const QJsonValue &id) { LspLogMessage *matchingMessage = m_model.findData( [&](const LspLogMessage &message) { return matches(sender, id, message); }); @@ -261,7 +264,7 @@ void LspLoggerWidget::selectMatchingMessage(LspLogMessage::MessageSender sender, m_clientDetails->setMessage(matchingMessage->message); } -void LspLoggerWidget::saveLog() +void LspInspectorWidget::saveLog() { QString contents; QTextStream stream(&contents); diff --git a/src/plugins/languageclient/lsplogger.h b/src/plugins/languageclient/lspinspector.h similarity index 97% rename from src/plugins/languageclient/lsplogger.h rename to src/plugins/languageclient/lspinspector.h index 8d736d249d4..1796adc9643 100644 --- a/src/plugins/languageclient/lsplogger.h +++ b/src/plugins/languageclient/lspinspector.h @@ -41,11 +41,11 @@ struct LspLogMessage LanguageServerProtocol::BaseMessage message; }; -class LspLogger : public QObject +class LspInspector : public QObject { Q_OBJECT public: - LspLogger() {} + LspInspector() {} QWidget *createWidget();