*/
return;
}
-
+
g_atomic_int_set (&_touching, 0);
if (_state == Touch) {
assert (!nascent.empty ());
Glib::Mutex::Lock lm (ControlList::_lock);
-
+
if (mark) {
nascent.back()->end_time = when;
-
+
} else {
-
+
/* nascent info created in start touch but never used. just get rid of it.
*/
root->add_property ("automation-id", EventTypeMap::instance().to_symbol(_parameter));
- root->add_property ("id", _id.to_s());
+ root->add_property ("id", id().to_s());
snprintf (buf, sizeof (buf), "%.12g", _default_value);
root->add_property ("default", buf);
fast_simple_add (x, y);
}
+ thin ();
+
if (!ok) {
clear ();
error << _("automation list: cannot load coordinates from XML, all points ignored") << endmsg;
fast_simple_add (x, y);
}
+ thin ();
+
thaw ();
return 0;
return -1;
}
- if ((prop = node.property ("id")) != 0) {
- _id = prop->value ();
+ if (set_id (node)) {
/* update session AL list */
AutomationListCreated(this);
}
}
bool have_events = false;
-
+
for (niter = nlist.begin(); niter != nlist.end(); ++niter) {
if ((*niter)->name() == X_("events")) {
deserialize_events (*(*niter));