Class describing multiple state property which values are pointers to Edit control.
You can find more information in comments below. Overrided methods can be found in corresponding base class or interface.
class CPropertyControlEditState :public virtual IPropertyControlEditState, public CPropertyState
{
public:
using FGetter = IEdit * (*)(IClass *parent, const String &state);
using FSetter = bool(*)(IClass *parent, const String &state, IEdit *value);
public:
// IProperty getters
String getPreview() override;
String getPreview(const String &state) override;
bool isChanged() override;
// IProperty setters
IProperty *setChanged(const bool value) override;
// IProperty methods
bool Copy(IProperty *dest) override;
void Save(Variant &dest) override;
void Load(const Variant &src) override;
void Export(std::wofstream &f, const String &shift, const String &control) override; // State names will be prefixes with [control namespace] + '::C' + [control class name] + '::' if control is not empty and "prefix" specified in constructor is empty. Otherwise it will be prefixed with "prefix" specified in constructor. If you need no prefix even if control is empty, specify "prefix" argument of constructor as ' '(space)
// IPropertyControlEditState getters
IEdit *getValue(const String &state) override;
// IPropertyControlEditState setters
bool setValue(const String &state, IEdit *value) override;
CPropertyControlEditState(IPropertyList *list, IClass *parent, const String &name, const States &states, const String &state_prefix, FSkip skip, FGetter getter, FSetter setter); // See parent class constructor for more information
};
Namespace: | nitisa::standard |
Include: | Standard/Platform/Properties/PropertyControlEdit.State.h |