NO-OP re-indent
[ardour.git] / libs / pbd / property_list.cc
index ffe1170dd5b858660ff6303dc122837e5b5710b2..ae8674c97b7a1df001a3af9f6c98db0de867cb53 100644 (file)
 
 using namespace PBD;
 
-PropertyList::PropertyList() 
-        : _property_owner (true) 
+PropertyList::PropertyList()
+        : _property_owner (true)
 {
+
+}
+
+PropertyList::PropertyList (PropertyList const & other)
+       : std::map<PropertyID, PropertyBase*> (other)
+       , _property_owner (other._property_owner)
+{
+       if (_property_owner) {
+               /* make our own copies of the properties */
+               clear ();
+               for (std::map<PropertyID, PropertyBase*>::const_iterator i = other.begin(); i != other.end(); ++i) {
+                       insert (std::make_pair (i->first, i->second->clone ()));
+               }
+       }
 }
 
 PropertyList::~PropertyList ()
@@ -39,13 +53,13 @@ PropertyList::~PropertyList ()
 }
 
 void
-PropertyList::add_history_state (XMLNode* history_node)
+PropertyList::get_changes_as_xml (XMLNode* history_node)
 {
         for (const_iterator i = begin(); i != end(); ++i) {
-                DEBUG_TRACE (DEBUG::Properties, string_compose ("Add before/after to %1 for %2\n",
-                                                                history_node->name(), 
+                DEBUG_TRACE (DEBUG::Properties, string_compose ("Add changes to %1 for %2\n",
+                                                                history_node->name(),
                                                                 i->second->property_name()));
-                i->second->add_history_state (history_node);
+                i->second->get_changes_as_xml (history_node);
         }
 }
 
@@ -53,7 +67,15 @@ bool
 PropertyList::add (PropertyBase* prop)
 {
         return insert (value_type (prop->property_id(), prop)).second;
-}        
+}
+
+void
+PropertyList::invert ()
+{
+       for (iterator i = begin(); i != end(); ++i) {
+               i->second->invert ();
+       }
+}
 
 OwnedPropertyList::OwnedPropertyList ()
 {