Content


NTL
Core
CPropertyRectLState

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