13
0

Reset fades on regions copied from time ranges in other regions (#4035).

git-svn-id: svn://localhost/ardour2/branches/3.0@9494 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
Carl Hetherington 2011-05-11 15:58:09 +00:00
parent 7633066406
commit f31b485e90
2 changed files with 13 additions and 1 deletions

View File

@ -140,6 +140,8 @@ class AudioRegion : public Region
void set_fade_out (FadeShape, framecnt_t);
void set_fade_out (boost::shared_ptr<AutomationList>);
void set_default_fades ();
void set_envelope_active (bool yn);
void set_default_envelope ();
@ -201,7 +203,6 @@ class AudioRegion : public Region
void post_set (const PBD::PropertyChange&);
void init ();
void set_default_fades ();
void set_default_fade_in ();
void set_default_fade_out ();

View File

@ -168,6 +168,17 @@ AudioPlaylist::AudioPlaylist (boost::shared_ptr<const AudioPlaylist> other, fram
, _crossfades (*this)
{
add_property (_crossfades);
/* Audio regions that have been created by the Playlist constructor
will currently have the same fade in/out as the regions that they
were created from. This is wrong, so reset the fades here.
*/
for (RegionList::iterator i = regions.begin(); i != regions.end(); ++i) {
boost::shared_ptr<AudioRegion> ar = boost::dynamic_pointer_cast<AudioRegion> (*i);
assert (ar);
ar->set_default_fades ();
}
/* this constructor does NOT notify others (session) */
}