Content


NTL
Core
CPropertyRectDState

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 StringArray &states,
        const ExportPrefixType state_prefix_type,
        const String &state_prefix,
        FSkip skip,
        FGetter getter,
        FSetter setter); // See parent class constructor for more information 
};
Namespace: nitisa
Include: Nitisa/Package/Properties/PropertyRectDState.h