From 8c0e5d29078a9d49bde008e2ba23a237b1cce892 Mon Sep 17 00:00:00 2001 From: Martyn Gigg <martyn.gigg@stfc.ac.uk> Date: Thu, 29 Nov 2018 16:12:44 +0000 Subject: [PATCH] Disable show instrument if no instrument exists --- .../WorkspaceTreeWidgetSimple.cpp | 21 ++++++++++++------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/qt/widgets/common/src/WorkspacePresenter/WorkspaceTreeWidgetSimple.cpp b/qt/widgets/common/src/WorkspacePresenter/WorkspaceTreeWidgetSimple.cpp index 0fa4eef0b86..8cd58c9de55 100644 --- a/qt/widgets/common/src/WorkspacePresenter/WorkspaceTreeWidgetSimple.cpp +++ b/qt/widgets/common/src/WorkspacePresenter/WorkspaceTreeWidgetSimple.cpp @@ -6,14 +6,15 @@ // SPDX - License - Identifier: GPL - 3.0 + #include "MantidQtWidgets/Common/WorkspacePresenter/WorkspaceTreeWidgetSimple.h" #include "MantidQtWidgets/Common/MantidTreeModel.h" -#include <MantidQtWidgets/Common/MantidTreeWidget.h> -#include <MantidQtWidgets/Common/MantidTreeWidgetItem.h> +#include "MantidQtWidgets/Common/MantidTreeWidget.h" +#include "MantidQtWidgets/Common/MantidTreeWidgetItem.h" -#include <MantidAPI/AlgorithmManager.h> -#include <MantidAPI/FileProperty.h> -#include <MantidAPI/ITableWorkspace.h> -#include <MantidAPI/MatrixWorkspace.h> -#include <MantidAPI/WorkspaceGroup.h> +#include "MantidAPI/AlgorithmManager.h" +#include "MantidAPI/FileProperty.h" +#include "MantidAPI/ITableWorkspace.h" +#include "MantidAPI/MatrixWorkspace.h" +#include "MantidAPI/WorkspaceGroup.h" +#include "MantidGeometry/Instrument.h" #include <QMenu> #include <QSignalMapper> @@ -85,7 +86,8 @@ void WorkspaceTreeWidgetSimple::popupContextMenu() { } catch (Exception::NotFoundError &) { return; } - if (boost::dynamic_pointer_cast<MatrixWorkspace>(workspace)) { + if (auto matrixWS = + boost::dynamic_pointer_cast<MatrixWorkspace>(workspace)) { QMenu *plotSubMenu(new QMenu("Plot", menu)); plotSubMenu->addAction(m_plotSpectrum); plotSubMenu->addAction(m_overplotSpectrum); @@ -97,6 +99,9 @@ void WorkspaceTreeWidgetSimple::popupContextMenu() { menu->addSeparator(); menu->addAction(m_showData); menu->addAction(m_showInstrument); + m_showInstrument->setEnabled( + matrixWS->getInstrument() && + !matrixWS->getInstrument()->getName().empty()); menu->addSeparator(); } menu->addAction(m_rename); -- GitLab