Skip to content

Commit

Permalink
Require the distribution flag rather than it being optional
Browse files Browse the repository at this point in the history
Refs #10639
  • Loading branch information
martyngigg committed Nov 27, 2014
1 parent 50d8c83 commit 76f841b
Show file tree
Hide file tree
Showing 4 changed files with 29 additions and 5 deletions.
Expand Up @@ -8,14 +8,29 @@
#include <boost/shared_ptr.hpp>
#include <QString>

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.
*/
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;
Expand Down
11 changes: 9 additions & 2 deletions Code/Mantid/MantidQt/API/src/QwtWorkspaceSpectrumData.cpp
Expand Up @@ -3,8 +3,15 @@

#include <QStringBuilder>

/// 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)),
Expand Down
3 changes: 2 additions & 1 deletion Code/Mantid/MantidQt/CustomInterfaces/src/IndirectTab.cpp
Expand Up @@ -200,7 +200,8 @@ namespace CustomInterfaces
if( wsIndex >= workspace->getNumberHistograms() || workspace->readX(0).size() < 2 )
return;

QwtWorkspaceSpectrumData wsData(*workspace, static_cast<int>(wsIndex), false);
const bool logScale(false), distribution(false);
QwtWorkspaceSpectrumData wsData(*workspace, static_cast<int>(wsIndex), logScale, distribution);

removeCurve(cID);

Expand Down
3 changes: 2 additions & 1 deletion Code/Mantid/MantidQt/SliceViewer/src/LineViewer.cpp
Expand Up @@ -1084,7 +1084,8 @@ void LineViewer::showFull()
MatrixWorkspace_sptr sliceMatrix = boost::dynamic_pointer_cast<MatrixWorkspace>(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() );
Expand Down

0 comments on commit 76f841b

Please sign in to comment.