remove semantic-free Panner::Changed signal; make mackie code pay attention to actual pan controls; make GUI watch PannerShell::Changed for news that the currently chosen panner has changed or changed configuration
git-svn-id: svn://localhost/ardour2/branches/3.0@8924 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
@@ -140,8 +140,7 @@ class Panner : public PBD::Stateful, public PBD::ScopedConnectionList
|
||||
framepos_t start, framepos_t end, pframes_t nframes,
|
||||
pan_t** buffers);
|
||||
|
||||
PBD::Signal0<void> Changed; /* for positional info */
|
||||
PBD::Signal0<void> StateChanged; /* for mute */
|
||||
PBD::Signal0<void> StateChanged;
|
||||
|
||||
int set_state (const XMLNode&, int version);
|
||||
virtual XMLNode& state (bool full_state) = 0;
|
||||
|
||||
@@ -85,13 +85,7 @@ PannerShell::configure_io (ChanCount in, ChanCount out)
|
||||
the config hasn't changed, we're done.
|
||||
*/
|
||||
|
||||
cerr << "PShell: reconfigure for in = " << in << " out = " << out;
|
||||
if (_panner) {
|
||||
cerr << " current panner = " << _panner->in() << " and " << _panner->out();
|
||||
}
|
||||
cerr << endl;
|
||||
|
||||
if (_panner && _panner->in().n_audio() == nins && _panner->out().n_audio() == nouts) {
|
||||
if (_panner && (_panner->in().n_audio() == nins) && (_panner->out().n_audio() == nouts)) {
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -121,7 +115,6 @@ PannerShell::configure_io (ChanCount in, ChanCount out)
|
||||
speakers.reset (s);
|
||||
}
|
||||
|
||||
cerr << "Creating a new panner\n";
|
||||
Panner* p = pi->descriptor.factory (_pannable, speakers);
|
||||
boost_debug_shared_ptr_mark_interesting (p, "Panner");
|
||||
_panner.reset (p);
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
#include "ardour/route.h"
|
||||
#include "ardour/track.h"
|
||||
#include "ardour/midi_ui.h"
|
||||
#include "ardour/panner.h"
|
||||
#include "ardour/pannable.h"
|
||||
#include "ardour/session_object.h" // for Properties::name
|
||||
|
||||
#include "mackie_control_protocol.h"
|
||||
@@ -50,8 +50,9 @@ void RouteSignal::connect()
|
||||
|
||||
_route->PropertyChanged.connect (connections, MISSING_INVALIDATOR, ui_bind (&MackieControlProtocol::notify_property_changed, &_mcp, _1, this), midi_ui_context());
|
||||
|
||||
if (_route->panner()) {
|
||||
_route->panner()->Changed.connect(connections, MISSING_INVALIDATOR, ui_bind (&MackieControlProtocol::notify_panner_changed, &_mcp, this, false), midi_ui_context());
|
||||
if (_route->pannable()) {
|
||||
_route->pannable()->pan_azimuth_control->Changed.connect(connections, MISSING_INVALIDATOR, ui_bind (&MackieControlProtocol::notify_panner_changed, &_mcp, this, false), midi_ui_context());
|
||||
_route->pannable()->pan_width_control->Changed.connect(connections, MISSING_INVALIDATOR, ui_bind (&MackieControlProtocol::notify_panner_changed, &_mcp, this, false), midi_ui_context());
|
||||
}
|
||||
|
||||
boost::shared_ptr<Track> trk = boost::dynamic_pointer_cast<ARDOUR::Track>(_route);
|
||||
|
||||
Reference in New Issue
Block a user