From f6b35c29c1ed4e0de17ecd44b998acdd2ebabb2e Mon Sep 17 00:00:00 2001 From: marco <marco@5a81b35b-ba03-0410-adc8-b2c5c5119f08> Date: Tue, 6 Jul 2010 12:30:29 +0000 Subject: [PATCH] Add RemoveProp to generic property container Fixes BZDNG-138 git-svn-id: https://dng.biozentrum.unibas.ch/svn/openstructure/trunk@2534 5a81b35b-ba03-0410-adc8-b2c5c5119f08 --- .../base/src/export_helper/generic_property_def.hh | 1 + modules/base/src/generic_property.hh | 12 ++++++++++++ 2 files changed, 13 insertions(+) diff --git a/modules/base/src/export_helper/generic_property_def.hh b/modules/base/src/export_helper/generic_property_def.hh index 3203bc198..11c5dfb80 100644 --- a/modules/base/src/export_helper/generic_property_def.hh +++ b/modules/base/src/export_helper/generic_property_def.hh @@ -185,6 +185,7 @@ void generic_prop_def(O& bp_class) .def("SetGenericFloatProperty", &depr_set_float<C>) .def("SetGenericBoolProperty", &depr_set_bool<C>) .def("SetGenericStringProperty", &depr_set_string<C>) + .def("RemoveProp", &C::RemoveProp) ; } diff --git a/modules/base/src/generic_property.hh b/modules/base/src/generic_property.hh index 4ea8d3253..03ddafedf 100644 --- a/modules/base/src/generic_property.hh +++ b/modules/base/src/generic_property.hh @@ -102,6 +102,12 @@ public: } } + void RemoveProp(const String& key) + { + if (map_) { + map_->erase(key); + } + } void Assign(const GenericPropContainerImpl& impl) { if (impl.map_) { @@ -159,6 +165,7 @@ protected: { return static_cast<const H*>(this)->GpImpl(); } + public: /// \brief checks existence of property bool HasProp(const String& key) const { @@ -296,6 +303,11 @@ public: { this->GetImpl()->GenericProp(key)=value; } + + void RemoveProp(const String& key) + { + this->GetImpl()->RemoveProp(key); + } }; -- GitLab