CPropertyRectLState



Class describing multiple state property of type RectL.

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

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

    // IPropertyRectLState getters 
    RectL getValue(const String &state) override;
    bool hasMin() const override;
    bool hasMax() const override;
    long long getMin() const override;
    long long getMax() const override;
    bool isAllowInvalid() const override;
    bool isAllowEmpty() const override;

    // IPropertyRectLState setters 
    bool setValue(const String &state, const RectL value) override;
    IPropertyRectLState *setHasMin(const bool value) override;
    IPropertyRectLState *setHasMax(const bool value) override;
    IPropertyRectLState *setMin(const long long value) override;
    IPropertyRectLState *setMax(const long long value) override;
    IPropertyRectLState *setAllowInvalid(const bool value) override;
    IPropertyRectLState *setAllowEmpty(const bool value) override;

    CPropertyRectLState(
        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/PropertyRectL.State.h