TreeModel::Row parent;
TreeModel::Row child;
- if (iter == region_list_model->children().end()) {
-
+
+ if (!iter) {
+
parent = *(region_list_model->append());
parent[region_list_columns.name] = _("Hidden");
proxy.reset ();
} else {
+
parent = *iter;
}
void
Editor::remove_a_region (boost::shared_ptr<Region> r)
{
- cerr << "remove " << r->name();
session->remove_region_from_region_list (r);
}
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));
}
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;
}