-
-void
-Editor::track_mixer_selection ()
-{
- Mixer_UI::instance()->selection().RoutesChanged.connect (sigc::mem_fun (*this, &Editor::follow_mixer_selection));
-}
-
-void
-Editor::follow_mixer_selection ()
-{
- if (!ARDOUR::Config->get_link_editor_and_mixer_selection() || _following_mixer_selection) {
- return;
- }
-
- _following_mixer_selection = true;
- selection->block_tracks_changed (true);
-
- RouteUISelection& s (Mixer_UI::instance()->selection().routes);
-
- selection->clear_tracks ();
-
- for (RouteUISelection::iterator i = s.begin(); i != s.end(); ++i) {
- TimeAxisView* tav = get_route_view_by_route_id ((*i)->route()->id());
- if (tav) {
- selection->add (tav);
- }
- }
-
- _following_mixer_selection = false;
- selection->block_tracks_changed (false);
- selection->TracksChanged (); /* EMIT SIGNAL */
-}