summaryrefslogtreecommitdiff
path: root/libs/ardour/playlist.cc
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2010-03-02 18:05:26 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2010-03-02 18:05:26 +0000
commit17088ee3ea5af1e6174b098bb5bcfdaec6ebf9b0 (patch)
treecbf9fe8fb94212f9a50c6b760ebaac3b4a1bcec6 /libs/ardour/playlist.cc
parenta5ab2e99e19d5f5d4c1f91f38cd774fefdf257dc (diff)
(1) remove most uses of MementoCommand for Playlist and Region (2) move frozen state from Region into Stateful, renamed "suspend property changes" (3) successive changes to a Property (scalar) after clear_history() do not keep resetting the old value (fixes region trim)
git-svn-id: svn://localhost/ardour2/branches/3.0@6720 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/playlist.cc')
-rw-r--r--libs/ardour/playlist.cc18
1 files changed, 9 insertions, 9 deletions
diff --git a/libs/ardour/playlist.cc b/libs/ardour/playlist.cc
index 6169df8f03..eb21cdcde6 100644
--- a/libs/ardour/playlist.cc
+++ b/libs/ardour/playlist.cc
@@ -855,7 +855,7 @@ Playlist::partition (framepos_t start, framepos_t end, bool cut)
partition_internal (start, end, cut, thawlist);
for (RegionList::iterator i = thawlist.begin(); i != thawlist.end(); ++i) {
- (*i)->thaw ();
+ (*i)->resume_property_changes ();
}
}
@@ -972,7 +972,7 @@ Playlist::partition_internal (framepos_t start, framepos_t end, bool cutting, Re
/* "front" ***** */
- current->freeze ();
+ current->suspend_property_changes ();
thawlist.push_back (current);
current->trim_end (pos2, this);
@@ -1011,7 +1011,7 @@ Playlist::partition_internal (framepos_t start, framepos_t end, bool cutting, Re
/* front ****** */
- current->freeze ();
+ current->suspend_property_changes ();
thawlist.push_back (current);
current->trim_end (pos2, this);
@@ -1054,7 +1054,7 @@ Playlist::partition_internal (framepos_t start, framepos_t end, bool cutting, Re
/* end */
- current->freeze ();
+ current->suspend_property_changes ();
thawlist.push_back (current);
current->trim_front (pos3, this);
} else if (overlap == OverlapExternal) {
@@ -1157,7 +1157,7 @@ Playlist::cut (framepos_t start, framecnt_t cnt, bool result_is_hidden)
partition_internal (start, start+cnt-1, true, thawlist);
for (RegionList::iterator i = thawlist.begin(); i != thawlist.end(); ++i) {
- (*i)->thaw ();
+ (*i)->resume_property_changes();
}
return the_copy;
@@ -2123,15 +2123,15 @@ Playlist::set_state (const XMLNode& node, int version)
if ((region = region_by_id (id))) {
- region->freeze ();
+ region->suspend_property_changes ();
if (region->set_state (*child, version)) {
- region->thaw ();
+ region->resume_property_changes ();
continue;
}
} else if ((region = RegionFactory::create (_session, *child, true)) != 0) {
- region->freeze ();
+ region->suspend_property_changes ();
} else {
error << _("Playlist: cannot create region from XML") << endmsg;
continue;
@@ -2141,7 +2141,7 @@ Playlist::set_state (const XMLNode& node, int version)
// So that layer_op ordering doesn't get screwed up
region->set_last_layer_op( region->layer());
- region->thaw ();
+ region->resume_property_changes ();
}
}