- for (TrackViewList::iterator i = track_views.begin(); i != track_views.end(); ++i) {
- if ((*i)->edit_group() == group) {
- unselect_strip_in_display (*(*i));
- }
+ TreeModel::Row row = *(group_model->append());
+ row[group_columns.is_active] = group->is_active();
+ row[group_columns.is_visible] = !group->is_hidden();
+
+ in_edit_group_row_change = true;
+
+ row[group_columns.routegroup] = group;
+
+ if (!group->name().empty()) {
+ row[group_columns.text] = group->name();
+ } else {
+ row[group_columns.text] = _("unnamed");
+ focus = true;
+ }
+
+ group->FlagsChanged.connect (bind (mem_fun(*this, &Editor::group_flags_changed), group));
+
+ if (focus) {
+ TreeViewColumn* col = edit_group_display.get_column (0);
+ CellRendererText* name_cell = dynamic_cast<CellRendererText*>(edit_group_display.get_column_cell_renderer (0));
+ edit_group_display.set_cursor (group_model->get_path (row), *col, *name_cell, true);