9#include "MantidKernel/DllConfig.h"
18class IPropertyManager;
27 const std::function<std::string(std::string, std::string)> &changeCriterion)
28 :
IPropertySettings(), m_watchedPropName{watchedPropName}, m_changeCriterion{changeCriterion} {}
31 bool isConditionChanged(
const IPropertyManager *algo,
const std::string &changedPropName)
const override;
37 void modify_allowed_values(
Property *
const);
Interface to PropertyManager.
Interface for modifiers to Property's that specify if they should be enabled or visible in a GUI.
Base class for properties.
std::function< std::string(std::string, std::string)> m_changeCriterion
Function to check if changes should be applied.
SetValueWhenProperty(const std::string &watchedPropName, const std::function< std::string(std::string, std::string)> &changeCriterion)
Constructs an SetValueWhenProperty object which checks the watched property with name given and uses ...
std::string m_watchedPropName
Name of the watched property, based on which we may set the value of the current property.
Helper class which provides the Collimation Length for SANS instruments.