CPropertyRectDState



Class describing multiple state property of type RectD.

You can find more information in comments below. Overrided methods can be found in corresponding base class or interface.

class CPropertyRectDState :public virtual IPropertyRectDState, public CPropertyState
{
public:
    using FGetter = RectD(*)(IClass *parent, const String &state);
    using FSetter = bool(*)(IClass *parent, const String &state, RectD 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;

    // IPropertyRectDState getters 
    RectD getValue(const String &state) override;
    bool hasMin() const override;
    bool hasMax() const override;
    double getMin() const override;
    double getMax() const override;
    bool isAllowInvalid() const override;
    bool isAllowEmpty() const override;

    // IPropertyRectDState setters 
    bool setValue(const String &state, const RectD value) override;
    IPropertyRectDState *setHasMin(const bool value) override;
    IPropertyRectDState *setHasMax(const bool value) override;
    IPropertyRectDState *setMin(const double value) override;
    IPropertyRectDState *setMax(const double value) override;
    IPropertyRectDState *setAllowInvalid(const bool value) override;
    IPropertyRectDState *setAllowEmpty(const bool value) override;

    CPropertyRectDState(
        IPropertyList *list,
        IClass *parent,
        const String &name,
        const bool read_only,
        const States &states,
        const EXPORT_PREFIX_TYPE state_prefix_type,
        const String &state_prefix,
        FSkip skip,
        FGetter getter,
        FSetter setter); // See parent class constructor for more information 
};
Namespace: nitisa
Include: Nitisa/Properties/PropertyRectD.State.h