clear all solo state should affect VCAs too
This commit is contained in:
parent
d283cefe12
commit
a89b3f5687
@ -51,6 +51,8 @@ class LIBARDOUR_API VCA : public Stripable, public Soloable, public Muteable, pu
|
||||
XMLNode& get_state();
|
||||
int set_state (XMLNode const&, int version);
|
||||
|
||||
void clear_all_solo_state ();
|
||||
|
||||
bool soloed () const;
|
||||
void push_solo_upstream (int32_t) {}
|
||||
void push_solo_isolate_upstream (int32_t) {}
|
||||
|
@ -58,6 +58,7 @@ class VCAManager : public SessionHandleRef, public PBD::StatefulDestructible
|
||||
int set_state (XMLNode const&, int version);
|
||||
|
||||
bool vcas_loaded() const { return _vcas_loaded; }
|
||||
void clear_all_solo_state ();
|
||||
|
||||
static std::string xml_node_name;
|
||||
|
||||
|
@ -107,6 +107,7 @@
|
||||
#include "ardour/user_bundle.h"
|
||||
#include "ardour/utils.h"
|
||||
#include "ardour/vca_manager.h"
|
||||
#include "ardour/vca.h"
|
||||
|
||||
#include "midi++/port.h"
|
||||
#include "midi++/mmc.h"
|
||||
@ -324,6 +325,7 @@ Session::Session (AudioEngine &eng,
|
||||
pthread_cond_init (&_auto_connect_cond, 0);
|
||||
|
||||
init_name_id_counter (1); // reset for new sessions, start at 1
|
||||
VCA::set_next_vca_number (1); // reset for new sessions, start at 1
|
||||
|
||||
pre_engine_init (fullpath);
|
||||
|
||||
|
@ -25,6 +25,7 @@
|
||||
#include "ardour/route.h"
|
||||
#include "ardour/session.h"
|
||||
#include "ardour/track.h"
|
||||
#include "ardour/vca_manager.h"
|
||||
|
||||
#include "i18n.h"
|
||||
|
||||
@ -71,6 +72,9 @@ Session::rt_clear_all_solo_state (boost::shared_ptr<RouteList> rl, bool /* yn */
|
||||
}
|
||||
(*i)->clear_all_solo_state();
|
||||
}
|
||||
|
||||
_vca_manager->clear_all_solo_state ();
|
||||
|
||||
set_dirty();
|
||||
}
|
||||
|
||||
|
@ -146,3 +146,9 @@ VCA::set_state (XMLNode const& node, int version)
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
void
|
||||
VCA::clear_all_solo_state ()
|
||||
{
|
||||
_solo_control->clear_all_solo_state ();
|
||||
}
|
||||
|
@ -177,3 +177,13 @@ VCAManager::set_state (XMLNode const& node, int version)
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
void
|
||||
VCAManager::clear_all_solo_state ()
|
||||
{
|
||||
Mutex::Lock lm (lock);
|
||||
|
||||
for (VCAList::const_iterator i = _vcas.begin(); i != _vcas.end(); ++i) {
|
||||
(*i)->clear_all_solo_state ();
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user