Merge with trunk R2920.

git-svn-id: svn://localhost/ardour2/trunk@2921 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
David Robillard 2008-01-15 17:23:57 +00:00
parent b2e3b18dab
commit ac1a255706
12 changed files with 202 additions and 110 deletions

View file

@ -295,12 +295,48 @@ Selection::add (TimeAxisView* track)
}
}
void
Selection::add (vector<RegionView*>& v)
{
/* XXX This method or the add (const RegionSelection&) needs to go
*/
bool changed = false;
for (vector<RegionView*>::iterator i = v.begin(); i != v.end(); ++i) {
if (find (regions.begin(), regions.end(), (*i)) == regions.end()) {
changed = regions.add ((*i));
if (Config->get_link_region_and_track_selection() && changed) {
add (&(*i)->get_trackview());
}
}
}
if (changed) {
RegionsChanged ();
}
}
void
Selection::add (const RegionSelection& rs)
{
if (!rs.empty()) {
regions.insert (regions.end(), rs.begin(), rs.end());
RegionsChanged(); /* EMIT SIGNAL */
/* XXX This method or the add (const vector<RegionView*>&) needs to go
*/
bool changed = false;
for (RegionSelection::const_iterator i = rs.begin(); i != rs.end(); ++i) {
if (find (regions.begin(), regions.end(), (*i)) == regions.end()) {
changed = regions.add ((*i));
if (Config->get_link_region_and_track_selection() && changed) {
add (&(*i)->get_trackview());
}
}
}
if (changed) {
select_edit_group_regions ();
RegionsChanged ();
}
}
@ -316,26 +352,6 @@ Selection::add (RegionView* r)
}
}
void
Selection::add (vector<RegionView*>& v)
{
bool changed = false;
for (vector<RegionView*>::iterator i = v.begin(); i != v.end(); ++i) {
if (find (regions.begin(), regions.end(), (*i)) == regions.end()) {
changed = regions.add ((*i));
if (Config->get_link_region_and_track_selection() && changed) {
add (&(*i)->get_trackview());
}
}
}
if (changed) {
select_edit_group_regions ();
RegionsChanged ();
}
}
long
Selection::add (nframes_t start, nframes_t end)
{