9#include "MantidKernel/DllConfig.h"
18class IPropertyManager;
26 const std::string &watchedPropName,
28 :
IPropertySettings(), m_watchedPropName{watchedPropName}, m_changeCriterion{changeCriterion} {}
31 bool isConditionChanged(
const IPropertyManager *algo,
const std::string &changedPropName)
const override;
38 std::vector<std::string> dependsOn(
const std::string &thisProp)
const override;
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< bool(const Mantid::Kernel::IPropertyManager *, Property *, Property *)> m_changeCriterion
Criterion to determine if a new dynamic-default value should be set: in which case this function shou...
SetDefaultWhenProperty(const std::string &watchedPropName, const std::function< bool(const Mantid::Kernel::IPropertyManager *, Property *, Property *)> &changeCriterion)
Constructs an SetDefaultWhenProperty instance which sets the dynamic-default value of a property when...
std::string m_watchedPropName
Name of the watched property.
Helper class which provides the Collimation Length for SANS instruments.