diff --git a/Code/Mantid/MantidQt/API/inc/MantidQtAPI/QwtWorkspaceSpectrumData.h b/Code/Mantid/MantidQt/API/inc/MantidQtAPI/QwtWorkspaceSpectrumData.h index e19512c8241b..b186d4e65bce 100644 --- a/Code/Mantid/MantidQt/API/inc/MantidQtAPI/QwtWorkspaceSpectrumData.h +++ b/Code/Mantid/MantidQt/API/inc/MantidQtAPI/QwtWorkspaceSpectrumData.h @@ -8,6 +8,19 @@ #include #include +namespace MantidQt +{ + + // Enumerate how to handle distributions + enum DistributionFlag + { + DistributionDefault = 0, // Use preferences value + DistributionTrue, // Force distribution plotting + DistributionFalse // Disable distribution plotting + }; + +} + //================================================================================================= //================================================================================================= /** This class implements QwtData with direct access to a spectrum in a MatrixWorkspace. @@ -15,7 +28,9 @@ class EXPORT_OPT_MANTIDQT_API QwtWorkspaceSpectrumData : public MantidQwtMatrixWorkspaceData { public: - QwtWorkspaceSpectrumData(const Mantid::API::MatrixWorkspace & workspace, int specIndex, const bool logScale, bool distr = false); + + QwtWorkspaceSpectrumData(const Mantid::API::MatrixWorkspace & workspace, int specIndex, + const bool logScale, const bool distr); //! @return Pointer to a copy (virtual copy constructor) virtual QwtWorkspaceSpectrumData *copy() const; diff --git a/Code/Mantid/MantidQt/API/src/QwtWorkspaceSpectrumData.cpp b/Code/Mantid/MantidQt/API/src/QwtWorkspaceSpectrumData.cpp index 4ca3c46d0ee8..8f680f035b3d 100644 --- a/Code/Mantid/MantidQt/API/src/QwtWorkspaceSpectrumData.cpp +++ b/Code/Mantid/MantidQt/API/src/QwtWorkspaceSpectrumData.cpp @@ -3,8 +3,15 @@ #include -/// Constructor -QwtWorkspaceSpectrumData::QwtWorkspaceSpectrumData(const Mantid::API::MatrixWorkspace & workspace,int specIndex, const bool logScale, bool distr) +/** + * Construct a QwtWorkspaceSpectrumData object with a source workspace + * @param workspace The workspace containing the data + * @param specIndex Index of the spectrum to plot + * @param logScale If true, plot a log scale + * @param distr If true, plot the Y values/X bin-width + */ +QwtWorkspaceSpectrumData::QwtWorkspaceSpectrumData(const Mantid::API::MatrixWorkspace & workspace, + int specIndex, const bool logScale, const bool distr) : m_spec(specIndex), m_X(workspace.readX(specIndex)), m_Y(workspace.readY(specIndex)), diff --git a/Code/Mantid/MantidQt/CustomInterfaces/src/IndirectTab.cpp b/Code/Mantid/MantidQt/CustomInterfaces/src/IndirectTab.cpp index 85b420e7f5d6..1617c8590d4c 100644 --- a/Code/Mantid/MantidQt/CustomInterfaces/src/IndirectTab.cpp +++ b/Code/Mantid/MantidQt/CustomInterfaces/src/IndirectTab.cpp @@ -200,7 +200,8 @@ namespace CustomInterfaces if( wsIndex >= workspace->getNumberHistograms() || workspace->readX(0).size() < 2 ) return; - QwtWorkspaceSpectrumData wsData(*workspace, static_cast(wsIndex), false); + const bool logScale(false), distribution(false); + QwtWorkspaceSpectrumData wsData(*workspace, static_cast(wsIndex), logScale, distribution); removeCurve(cID); diff --git a/Code/Mantid/MantidQt/SliceViewer/src/LineViewer.cpp b/Code/Mantid/MantidQt/SliceViewer/src/LineViewer.cpp index ee376586af0c..73fec226f411 100644 --- a/Code/Mantid/MantidQt/SliceViewer/src/LineViewer.cpp +++ b/Code/Mantid/MantidQt/SliceViewer/src/LineViewer.cpp @@ -1084,7 +1084,8 @@ void LineViewer::showFull() MatrixWorkspace_sptr sliceMatrix = boost::dynamic_pointer_cast(m_sliceWS); if (sliceMatrix) { - QwtWorkspaceSpectrumData curveData(*sliceMatrix, 0, isLogScaledY()); + const bool distribution(false); + QwtWorkspaceSpectrumData curveData(*sliceMatrix, 0, isLogScaledY(), distribution); m_fullCurve->setData(curveData); setupScaleEngine(curveData); m_plot->setAxisTitle( QwtPlot::xBottom, curveData.getXAxisLabel() );