summaryrefslogtreecommitdiff
path: root/libs/pbd/xml++.cc
diff options
context:
space:
mode:
authorCarl Hetherington <carl@carlh.net>2011-11-16 23:03:59 +0000
committerCarl Hetherington <carl@carlh.net>2011-11-16 23:03:59 +0000
commit0c9c47086c49d27a38cef5f5cc819e1aec56857c (patch)
tree0fafbaa13412cc26011e547c1ce779cbf294f3a8 /libs/pbd/xml++.cc
parent58dbe9ed13cede08f9e11f428fa6c188325db009 (diff)
Slightly unpleasant fix for creation of tracks from
templates; it would be nice if we could set things up using the Route's logic for setting names of its children, rather than repeating the same logic in XML-land (#4303). git-svn-id: svn://localhost/ardour2/branches/3.0@10655 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/pbd/xml++.cc')
-rw-r--r--libs/pbd/xml++.cc10
1 files changed, 10 insertions, 0 deletions
diff --git a/libs/pbd/xml++.cc b/libs/pbd/xml++.cc
index 1b006fd63d..58a0c4e747 100644
--- a/libs/pbd/xml++.cc
+++ b/libs/pbd/xml++.cc
@@ -422,6 +422,16 @@ XMLNode::remove_property(const string& n)
}
}
+/** Remove any property with the given name from this node and its children */
+void
+XMLNode::remove_property_recursively(const string& n)
+{
+ remove_property (n);
+ for (XMLNodeIterator i = _children.begin(); i != _children.end(); ++i) {
+ (*i)->remove_property_recursively (n);
+ }
+}
+
void
XMLNode::remove_nodes(const string& n)
{