CPropertyMatrixState



Class describing multiple state property of type Matrix.

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

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

    // IPropertyMatrixState getters 
    Matrix getValue(const String &state) override;

    // IPropertyMatrixState setters 
    bool setValue(const String &state, const Matrix value) override;

    CPropertyMatrixState(
        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/PropertyMatrix.State.h