summaryrefslogtreecommitdiff
path: root/gtk2_ardour/editor_regions.cc
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2013-01-04 22:46:51 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2013-01-04 22:46:51 +0000
commit72393f101ba2cae980838dd0d857719719ecc3d7 (patch)
treea54069a53df9879b75bfd6ae3455fd60cc1a1d30 /gtk2_ardour/editor_regions.cc
parent1f6684237c1711858c4853016131a70a6ef0edf9 (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.cc17
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()) {