- if ((atv = dynamic_cast<AudioTimeAxisView*>(tv)) != 0) {
- if (current_mixer_strip && &(atv->route()) == &(current_mixer_strip->route())) {
- /* this will hide the mixer strip */
- set_selected_mixer_strip(*atv);
+ TimeAxisView *tv;
+ TreeModel::Children rows = route_display_model->children();
+ TreeModel::Children::iterator i;
+ Glib::RefPtr<TreeSelection> selection = route_list.get_selection();
+
+ for (i = rows.begin(); i != rows.end(); ++i) {
+ tv = (*i)[route_display_columns.tv];
+ if (selection->is_selected (i)) {
+ tv->set_marked_for_display (true);
+ } else {
+ AudioTimeAxisView *atv;
+ tv->set_marked_for_display (false);
+ if ((atv = dynamic_cast<AudioTimeAxisView*>(tv)) != 0) {
+ if (current_mixer_strip && &(atv->route()) == &(current_mixer_strip->route())) {
+ // this will hide the mixer strip
+ set_selected_mixer_strip(*atv);
+ }