diff options
author | Carl Hetherington <carl@carlh.net> | 2010-05-20 01:30:35 +0000 |
---|---|---|
committer | Carl Hetherington <carl@carlh.net> | 2010-05-20 01:30:35 +0000 |
commit | 84a801a7913714a2284f1142cb9bb3a335dd1a7e (patch) | |
tree | d37d6f8c4f074b6951c1a2fda71cd1148328695c /libs/ardour/mute_master.cc | |
parent | ed74a898202e006f9d041cd748c89a9001f095ef (diff) |
A few cleanups and rearrangements in the RC options. Add options for default mute-affects-* settings, and make routes obey them.
git-svn-id: svn://localhost/ardour2/branches/3.0@7122 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/mute_master.cc')
-rw-r--r-- | libs/ardour/mute_master.cc | 25 |
1 files changed, 18 insertions, 7 deletions
diff --git a/libs/ardour/mute_master.cc b/libs/ardour/mute_master.cc index 9a95e70a11..5a261fb44f 100644 --- a/libs/ardour/mute_master.cc +++ b/libs/ardour/mute_master.cc @@ -30,18 +30,29 @@ using namespace ARDOUR; using namespace std; -const MuteMaster::MutePoint MuteMaster::AllPoints = MutePoint (MuteMaster::PreFader| - MuteMaster::PostFader| - MuteMaster::Listen| - MuteMaster::Main); - MuteMaster::MuteMaster (Session& s, const std::string&) - : SessionHandleRef (s) - , _mute_point (AllPoints) + : SessionHandleRef (s) + , _mute_point (MutePoint (0)) , _muted_by_self (false) , _soloed (false) , _solo_ignore (false) { + + if (Config->get_mute_affects_pre_fader ()) { + _mute_point = MutePoint (_mute_point | PreFader); + } + + if (Config->get_mute_affects_post_fader ()) { + _mute_point = MutePoint (_mute_point | PostFader); + } + + if (Config->get_mute_affects_control_outs ()) { + _mute_point = MutePoint (_mute_point | Listen); + } + + if (Config->get_mute_affects_main_outs ()) { + _mute_point = MutePoint (_mute_point | Main); + } } void |