summaryrefslogtreecommitdiff
path: root/gtk2_ardour
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2007-05-30 13:51:40 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2007-05-30 13:51:40 +0000
commit729abf0d14de3cd488a8dbe2aae1a7cc1900706a (patch)
tree09330b84127988f7d6122cd48ea2b54ebd0e1f78 /gtk2_ardour
parent3f1584bd49a91d705273e74b98d82835821cd5d4 (diff)
fix #1693 and related bug
git-svn-id: svn://localhost/ardour2/branches/2.0-ongoing@1928 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour')
-rw-r--r--gtk2_ardour/editor_region_list.cc25
1 files changed, 9 insertions, 16 deletions
diff --git a/gtk2_ardour/editor_region_list.cc b/gtk2_ardour/editor_region_list.cc
index 681c363c37..f24930f10a 100644
--- a/gtk2_ardour/editor_region_list.cc
+++ b/gtk2_ardour/editor_region_list.cc
@@ -101,37 +101,25 @@ Editor::add_audio_region_to_region_display (boost::shared_ptr<AudioRegion> regio
TreeModel::Row parent;
TreeModel::Row child;
- cerr << "Region " << region->name() << " is hidden\n";
-
if (!iter) {
- cerr << "no parent node for hidden regions yet, add one\n";
-
parent = *(region_list_model->append());
parent[region_list_columns.name] = _("Hidden");
} else {
- cerr << "first node exists, check its name\n";
-
if ((*iter)[region_list_columns.name] != _("Hidden")) {
- cerr << "its not hidden, add another node before it\n";
-
parent = *(region_list_model->insert(iter));
parent[region_list_columns.name] = _("Hidden");
} else {
-
- cerr << "thats the one\n";
parent = *iter;
}
}
- cerr << "now have a parent, append a new child\n";
-
row = *(region_list_model->append (parent.children()));
} else if (region->whole_file()) {
@@ -602,7 +590,6 @@ Editor::hide_a_region (boost::shared_ptr<Region> r)
void
Editor::remove_a_region (boost::shared_ptr<Region> r)
{
- cerr << "remove " << r->name();
session->remove_region_from_region_list (r);
}
@@ -621,7 +608,6 @@ Editor::hide_region_from_region_list ()
void
Editor::remove_region_from_region_list ()
{
- cerr << "Mapping remove over region selection\n";
region_list_selection_mapover (mem_fun (*this, &Editor::remove_a_region));
}
@@ -644,8 +630,15 @@ bool
Editor::region_list_selection_filter (const RefPtr<TreeModel>& model, const TreeModel::Path& path, bool yn)
{
/* not possible to select rows that do not represent regions, like "Hidden" */
+
+ TreeModel::iterator iter = model->get_iter (path);
+
+ if (iter) {
+ boost::shared_ptr<Region> r =(*iter)[region_list_columns.region];
+ if (!r) {
+ return false;
+ }
+ }
- /// XXXX FIXME boost::shared_ptr<Region> r = ((model->get_iter (path)))[region_list_columns.region];
- /// return r != 0;
return true;
}