From 869b7810db45c58e59d3cc6bb0de2fb89dbe05e8 Mon Sep 17 00:00:00 2001 From: Cristian Adam Date: Fri, 4 Feb 2022 16:25:58 +0100 Subject: [PATCH] CMakePM: Add "Help" context menu entry for CMake variables This way one could easily jump to the documentation of a CMake variable e.g. CMAKE_BUILD_TYPE. Change-Id: I1b348f0a1b6c18f0f7cee29ff6409b43c6263f44 Reviewed-by: Reviewed-by: Alessandro Portale --- .../cmakeprojectmanager/cmakebuildconfiguration.cpp | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/plugins/cmakeprojectmanager/cmakebuildconfiguration.cpp b/src/plugins/cmakeprojectmanager/cmakebuildconfiguration.cpp index ce3d54f6468..88c7072d756 100644 --- a/src/plugins/cmakeprojectmanager/cmakebuildconfiguration.cpp +++ b/src/plugins/cmakeprojectmanager/cmakebuildconfiguration.cpp @@ -940,6 +940,18 @@ bool CMakeBuildSettingsWidget::eventFilter(QObject *target, QEvent *event) auto menu = new QMenu(this); connect(menu, &QMenu::triggered, menu, &QMenu::deleteLater); + auto help = new QAction(tr("Help"), this); + menu->addAction(help); + connect(help, &QAction::triggered, this, [=] { + const CMakeConfigItem item = ConfigModel::dataItemFromIndex(idx).toCMakeConfigItem(); + + const CMakeTool *tool = CMakeKitAspect::cmakeTool(m_buildConfiguration->target()->kit()); + const QString linkUrl = "%1/variable/" + QString::fromUtf8(item.key) + ".html"; + CMakeTool::openCMakeHelpUrl(tool, linkUrl); + }); + + menu->addSeparator(); + QAction *action = nullptr; if ((action = createForceAction(ConfigModel::DataItem::BOOLEAN, idx))) menu->addAction(action);