Content


NTL
Core
CPropertyStyleState

CPropertyStyleState



Class describing multiple state property of type IStyle.

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

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

    // IPropertyStyleState getters 
    IStyle *getValue(const String &state) override;

    // IPropertyStyleState setters 
    bool setValue(const String &state, IStyle *value) override;

    CPropertyStyleState(
        IPropertyList *list,
        IClass *parent,
        const String &name,
        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/PropertyStyleState.h