diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2013-01-04 22:46:51 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2013-01-04 22:46:51 +0000 |
commit | 72393f101ba2cae980838dd0d857719719ecc3d7 (patch) | |
tree | a54069a53df9879b75bfd6ae3455fd60cc1a1d30 /gtk2_ardour/editor_regions.cc | |
parent | 1f6684237c1711858c4853016131a70a6ef0edf9 (diff) |
allow region list selection of whole file regions to select every instance of a region that has any source relationship with that whole file region (from a logic feature that came up while writing the manual)
git-svn-id: svn://localhost/ardour2/branches/3.0@13779 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/editor_regions.cc')
-rw-r--r-- | gtk2_ardour/editor_regions.cc | 17 |
1 files changed, 6 insertions, 11 deletions
diff --git a/gtk2_ardour/editor_regions.cc b/gtk2_ardour/editor_regions.cc index 8561fbbfb5..16c401b90e 100644 --- a/gtk2_ardour/editor_regions.cc +++ b/gtk2_ardour/editor_regions.cc @@ -551,6 +551,7 @@ EditorRegions::selection_changed () for (TreeView::Selection::ListHandle_Path::iterator i = rows.begin(); i != rows.end(); ++i) { if ((iter = _model->get_iter (*i))) { + boost::shared_ptr<Region> region = (*iter)[_columns.region]; // they could have clicked on a row that is just a placeholder, like "Hidden" @@ -559,18 +560,12 @@ EditorRegions::selection_changed () if (region) { - if (region->automatic()) { - - _display.get_selection()->unselect(*i); - - } else { - _change_connection.block (true); - _editor->set_selected_regionview_from_region_list (region, Selection::Add); - - _change_connection.block (false); - } + _change_connection.block (true); + _editor->set_selected_regionview_from_region_list (region, Selection::Add); + _change_connection.block (false); } } + } } else { _editor->get_selection().clear_regions (); @@ -1300,7 +1295,7 @@ EditorRegions::name_edit (const std::string& path, const std::string& new_text) if (region) { vector<RegionView*> equivalents; - _editor->get_regions_corresponding_to (region, equivalents); + _editor->get_regions_corresponding_to (region, equivalents, false); for (vector<RegionView*>::iterator i = equivalents.begin(); i != equivalents.end(); ++i) { if (new_text != (*i)->region()->name()) { |