From 5e31fae6d9b87f47cd95d21bb2309d44632b1e28 Mon Sep 17 00:00:00 2001 From: Thomas Hartmann Date: Mon, 16 May 2022 20:39:20 +0200 Subject: [PATCH] Hide Debug/Build side bar action if menu is disabled MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: I8c7a2e5f0bb76e74692c6b4463aa1feb806d6e49 Reviewed-by: Reviewed-by: Eike Ziller Reviewed-by: Henning Gründl --- src/plugins/debugger/debuggerplugin.cpp | 11 ++++++++++- src/plugins/projectexplorer/projectexplorer.cpp | 3 ++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/src/plugins/debugger/debuggerplugin.cpp b/src/plugins/debugger/debuggerplugin.cpp index 7ec66b5f109..033d72f3bee 100644 --- a/src/plugins/debugger/debuggerplugin.cpp +++ b/src/plugins/debugger/debuggerplugin.cpp @@ -435,6 +435,13 @@ static bool hideAnalyzeMenu() .toBool(); } +static bool hideDebugMenu() +{ + return Core::ICore::settings() + ->value(ProjectExplorer::Constants::SETTINGS_MENU_HIDE_DEBUG, false) + .toBool(); +} + QAction *addAction(const QObject *parent, QMenu *menu, const QString &display, bool on, const std::function &onTriggered) { @@ -921,7 +928,9 @@ DebuggerPluginPrivate::DebuggerPluginPrivate(const QStringList &arguments) m_visibleStartAction.setAction(&m_startAction); m_visibleStartAction.setObjectName("Debug"); // used for UI introduction - ModeManager::addAction(&m_visibleStartAction, /*priority*/ 90); + + if (!hideDebugMenu()) + ModeManager::addAction(&m_visibleStartAction, /*priority*/ 90); m_undisturbableAction.setIcon(interruptIcon(false)); m_undisturbableAction.setEnabled(false); diff --git a/src/plugins/projectexplorer/projectexplorer.cpp b/src/plugins/projectexplorer/projectexplorer.cpp index 00c2ba035f3..a8182c56bf3 100644 --- a/src/plugins/projectexplorer/projectexplorer.cpp +++ b/src/plugins/projectexplorer/projectexplorer.cpp @@ -1298,7 +1298,8 @@ bool ProjectExplorerPlugin::initialize(const QStringList &arguments, QString *er dd->m_modeBarBuildAction->initialize(cmd->action()); dd->m_modeBarBuildAction->setAttribute(ProxyAction::UpdateText); dd->m_modeBarBuildAction->setAction(cmd->action()); - ModeManager::addAction(dd->m_modeBarBuildAction, Constants::P_ACTION_BUILDPROJECT); + if (!hideBuildMenu()) + ModeManager::addAction(dd->m_modeBarBuildAction, Constants::P_ACTION_BUILDPROJECT); // build for run config dd->m_buildForRunConfigAction = new ParameterAction(