add vtk Properties

This commit is contained in:
AndreaRigoni
2026-03-23 15:09:35 +00:00
parent 94843de711
commit 5d0efb3078
9 changed files with 263 additions and 17 deletions

View File

@@ -64,6 +64,7 @@ public:
Vector<Signal> sigv;
Vector<Slot> slov;
std::vector<PropertyBase*> m_Properties;
std::vector<PropertyBase*> m_DynamicProperties;
};
// Implementations of Property methods
@@ -71,6 +72,13 @@ void Object::RegisterProperty(PropertyBase* prop) {
if (prop) d->m_Properties.push_back(prop);
}
void Object::RegisterDynamicProperty(PropertyBase* prop) {
if (prop) {
d->m_DynamicProperties.push_back(prop);
d->m_Properties.push_back(prop);
}
}
const std::vector<PropertyBase*>& Object::GetProperties() const {
return d->m_Properties;
}
@@ -109,7 +117,12 @@ Object::Object() : d(new ObjectPrivate) {}
Object::Object(const Object &copy) : d(new ObjectPrivate(*copy.d)) {}
Object::~Object() { delete d; }
Object::~Object() {
for (auto* p : d->m_DynamicProperties) {
delete p;
}
delete d;
}
void Object::DeepCopy(const Object &copy) {
// should lock to be tread safe //