11#include "MantidQtWidgets/Common/DllOption.h"
26namespace CustomInterfaces {
33 virtual bool checkFieldIsValid(
const QString &errorMessage, QLineEdit *field, QLabel *errorLabel =
nullptr) = 0;
37 bool const autoLoad =
true) = 0;
42 virtual bool checkRangeIsEnclosed(
const QString &outerName, std::pair<double, double> outer,
const QString &innerName,
43 std::pair<double, double> inner) = 0;
45 template <
typename T = Mant
id::API::MatrixWorkspace>
46 bool checkWorkspaceType(QString
const &workspaceName, QString
const &inputType, QString
const &validType,
51 virtual void addErrorMessage(
const std::string &message,
bool const silent =
false) = 0;
73 bool checkFieldIsNotEmpty(
const QString &
name, QLineEdit *field, QLabel *errorLabel =
nullptr)
override;
75 bool checkFieldIsValid(
const QString &errorMessage, QLineEdit *field, QLabel *errorLabel =
nullptr)
override;
77 bool checkWorkspaceSelectorIsNotEmpty(
const QString &
name,
WorkspaceSelector *workspaceSelector)
override;
81 bool checkDataSelectorIsValid(
const QString &
name,
DataSelector *widget,
bool const silent =
false,
82 bool const autoLoad =
true)
override;
84 bool checkValidRange(
const QString &
name, std::pair<double, double> range)
override;
86 bool checkRangesDontOverlap(std::pair<double, double> rangeA, std::pair<double, double> rangeB)
override;
88 bool checkRangeIsEnclosed(
const QString &outerName, std::pair<double, double> outer,
const QString &innerName,
89 std::pair<double, double> inner)
override;
91 bool checkBins(
double lower,
double binWidth,
double upper,
double tolerance = 0.00000001)
override;
93 bool checkNotEqual(
const QString &
name,
double x,
double y = 0.0,
double tolerance = 0.00000001);
96 bool checkWorkspaceExists(QString
const &workspaceName,
bool silent =
false)
override;
98 bool checkWorkspaceNumberOfHistograms(QString
const &workspaceName, std::size_t
const &validSize);
101 bool checkWorkspaceNumberOfBins(QString
const &workspaceName, std::size_t
const &validSize);
104 bool checkWorkspaceGroupIsValid(QString
const &groupName, QString
const &inputType,
bool silent =
false)
override;
107 void addErrorMessage(
const std::string &message,
bool const silent =
false)
override;
110 void setErrorLabel(QLabel *errorLabel,
bool valid)
override;
114 std::string generateErrorMessage()
const override;
116 bool isAllInputValid()
const override;
136 QString
const &validType,
bool silent) {
141 if (!MantidWidgets::WorkspaceUtils::getADSWorkspace<T>(workspaceName.toStdString())) {
142 addErrorMessage(
"The " + inputType.toStdString() +
" workspace is not a " + validType.toStdString() +
".", silent);
double lower
lower and upper bounds on the multiplier, if known
The AlgorithmProgressDialogPresenter keeps track of the running algorithms and displays a progress ba...
std::shared_ptr< MatrixWorkspace > MatrixWorkspace_sptr
shared pointer to the matrix workspace base class