X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=libs%2Fardour%2Fautomation_list.cc;h=b6de006d32c746b9dfc6705a550fd9b896b0e613;hb=50dd880d7e75b49e7c80c79f32165a756839651c;hp=3543f8b51f142565c570bd79ed3750de768d81c5;hpb=aae367b63c9b619db1e40f27dc334c6987219481;p=ardour.git diff --git a/libs/ardour/automation_list.cc b/libs/ardour/automation_list.cc index 3543f8b51f..b6de006d32 100644 --- a/libs/ardour/automation_list.cc +++ b/libs/ardour/automation_list.cc @@ -88,8 +88,8 @@ AutomationList::AutomationList (const AutomationList& other, double start, doubl AutomationListCreated(this); } -/** \a id is used for legacy sessions where the type is not present - * in or below the node. It is used if \a id is non-null. +/** @param id is used for legacy sessions where the type is not present + * in or below the AutomationList node. It is used if @param id is non-null. */ AutomationList::AutomationList (const XMLNode& node, Evoral::Parameter id) : ControlList(id) @@ -112,7 +112,6 @@ AutomationList::AutomationList (const XMLNode& node, Evoral::Parameter id) AutomationList::~AutomationList() { - drop_references (); } boost::shared_ptr @@ -171,7 +170,7 @@ AutomationList::maybe_signal_changed () { ControlList::maybe_signal_changed (); - if (!_frozen) { + if (!ControlList::frozen()) { StateChanged (); /* EMIT SIGNAL */ } } @@ -208,18 +207,13 @@ AutomationList::stop_touch () _new_value = false; } -void -AutomationList::freeze () -{ - _frozen++; -} - void AutomationList::thaw () { ControlList::thaw(); if (_changed_when_thawed) { + _changed_when_thawed = false; StateChanged(); /* EMIT SIGNAL */ } } @@ -313,7 +307,7 @@ AutomationList::deserialize_events (const XMLNode& node) return -1; } - freeze (); + ControlList::freeze (); clear (); stringstream str (content_node->content()); @@ -344,8 +338,8 @@ AutomationList::deserialize_events (const XMLNode& node) maybe_signal_changed (); } - thaw (); - + ControlList::thaw (); + return 0; } @@ -377,7 +371,7 @@ AutomationList::set_state (const XMLNode& node, int version) nframes_t x; double y; - freeze (); + ControlList::freeze (); clear (); for (i = elist.begin(); i != elist.end(); ++i) { @@ -397,7 +391,7 @@ AutomationList::set_state (const XMLNode& node, int version) fast_simple_add (x, y); } - thaw (); + ControlList::thaw (); return 0; }