-void
-RouteUI::set_route_group_solo(boost::shared_ptr<Route> route, bool yn)
-{
- RouteGroup* route_group;
-
- if((route_group = route->route_group()) != 0){
- _session.begin_reversible_command (_("mix group solo change"));
- Session::GlobalSoloStateCommand *cmd = new Session::GlobalSoloStateCommand(_session, this);
- route_group->apply(&Route::set_solo, yn, this);
- cmd->mark();
- _session.add_command (cmd);
- _session.commit_reversible_command ();
- } else {
- reversibly_apply_route_boolean ("solo change", &Route::set_solo, !route->soloed(), this);
- }
-}
-
-void
-RouteUI::reversibly_apply_route_boolean (string name, void (Route::*func)(bool, void *), bool yn, void *arg)
-{
- _session.begin_reversible_command (name);
- XMLNode &before = _route->get_state();
- bind(mem_fun(*_route, func), yn, arg)();
- XMLNode &after = _route->get_state();
- _session.add_command (new MementoCommand<Route>(*_route, &before, &after));
- _session.commit_reversible_command ();
-}
-
-void
-RouteUI::reversibly_apply_track_boolean (string name, void (Track::*func)(bool, void *), bool yn, void *arg)
-{
- _session.begin_reversible_command (name);
- XMLNode &before = track()->get_state();
- bind (mem_fun (*track(), func), yn, arg)();
- XMLNode &after = track()->get_state();
- _session.add_command (new MementoCommand<Track>(*track(), &before, &after));
- _session.commit_reversible_command ();
-}
-
-void
-RouteUI::set_route_group_mute(boost::shared_ptr<Route> route, bool yn)
-{
- RouteGroup* route_group;
-
- if((route_group = route->route_group()) != 0){
- _session.begin_reversible_command (_("mix group mute change"));
- Session::GlobalMuteStateCommand *cmd = new Session::GlobalMuteStateCommand (_session, this);
- route_group->apply(&Route::set_mute, yn, this);
- cmd->mark();
- _session.add_command(cmd);
- _session.commit_reversible_command ();
- } else {
- reversibly_apply_route_boolean ("mute change", &Route::set_mute, !route->muted(), this);
- }
-}
-
-void
-RouteUI::set_route_group_rec_enable(boost::shared_ptr<Route> route, bool yn)
-{
- RouteGroup* route_group;
-
- if((route_group = route->route_group()) != 0){
- _session.begin_reversible_command (_("mix group rec-enable change"));
- Session::GlobalRecordEnableStateCommand *cmd = new Session::GlobalRecordEnableStateCommand(_session, this);
- route_group->apply (&Route::set_record_enable, yn, this);
- cmd->mark();
- _session.add_command(cmd);
- _session.commit_reversible_command ();
- } else {
- reversibly_apply_route_boolean ("rec-enable change", &Route::set_record_enable, !_route->record_enabled(), this);
- }
-}
-
-