Class describing multiple state property of type double.

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

class CPropertyDoubleState :public virtual IPropertyDoubleState, public CPropertyState
    using FGetter = double(*)(IClass *parent, const String &state);
    using FSetter = bool(*)(IClass *parent, const String &state, double value);
    // 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;

    // IPropertyDoubleState getters 
    double getValue(const String &state) override;
    bool hasMin() const override;
    bool hasMax() const override;
    double getMin() const override;
    double getMax() const override;

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

        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/PropertyDoubleState.h