Base class for property lists.
You can find more information in comments below. Overrided methods can be found in corresponding base interface.
class CPropertyList :public virtual IPropertyList
{
public:
IPackage *getPackage() override;
IClass *getParent() override;
int getCount() override;
IProperty *getProperty(const int index) override;
IProperty *getProperty(const String &name) override;
IPackageEntity *getEntity() override;
void setParent(IClass *parent, IPackageEntity *entity) override;
void Release() override;
void Save(Variant &dest) override;
void Load(const Variant &src) override;
void Export(std::wofstream &f, const String &shift, const String &owner) override;
CPropertyList(IPackage *package, IClass *parent, IPackageEntity *entity);
virtual ~CPropertyList();
void Delete(const int index); // Delete property by index
void Delete(IProperty *item); // Delete specified property
void Delete(const String &name); // Delete property by name
void Clear(); // Delete all properties
template<class Type> Type *Add(Type *item); // Add new property
};
Namespace: | nitisa |
Include: | Nitisa/Package/Core/PropertyList.h |