Don't setup panner UI unless it has changed.
git-svn-id: svn://localhost/ardour2/branches/3.0@5606 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
parent
95c4046ff9
commit
1aa38f074f
@ -304,7 +304,6 @@ MixerStrip::init ()
|
||||
set_flags (get_flags() | Gtk::CAN_FOCUS);
|
||||
|
||||
SwitchIO.connect (mem_fun (*this, &MixerStrip::switch_io));
|
||||
|
||||
}
|
||||
|
||||
MixerStrip::~MixerStrip ()
|
||||
|
@ -311,14 +311,12 @@ Mixer_UI::add_strip (RouteList& routes)
|
||||
if (route->is_hidden()) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
strip = new MixerStrip (*this, *session, route);
|
||||
strips.push_back (strip);
|
||||
|
||||
Config->get_default_narrow_ms() ? _strip_width = Narrow : _strip_width = Wide;
|
||||
|
||||
Config->get_default_narrow_ms() ? _strip_width = Narrow : _strip_width = Wide;
|
||||
|
||||
if (strip->width_owner() != strip) {
|
||||
strip->set_width_enum (_strip_width, this);
|
||||
}
|
||||
|
@ -51,6 +51,7 @@ const int PannerUI::pan_bar_height = 30;
|
||||
|
||||
PannerUI::PannerUI (Session& s)
|
||||
: _session (s),
|
||||
_current_nouts (-1),
|
||||
hAdjustment(0.0, 0.0, 0.0),
|
||||
vAdjustment(0.0, 0.0, 0.0),
|
||||
panning_viewport(hAdjustment, vAdjustment),
|
||||
@ -154,7 +155,7 @@ PannerUI::set_panner (boost::shared_ptr<Panner> p)
|
||||
connections.push_back (_panner->Changed.connect (mem_fun(*this, &PannerUI::panner_changed)));
|
||||
connections.push_back (_panner->LinkStateChanged.connect (mem_fun(*this, &PannerUI::update_pan_linkage)));
|
||||
connections.push_back (_panner->StateChanged.connect (mem_fun(*this, &PannerUI::update_pan_state)));
|
||||
|
||||
|
||||
setup_pan ();
|
||||
|
||||
pan_changed (0);
|
||||
@ -335,14 +336,20 @@ PannerUI::update_pan_state ()
|
||||
void
|
||||
PannerUI::setup_pan ()
|
||||
{
|
||||
cerr << "Setup pan for " << _panner->name() << endl;
|
||||
|
||||
if (!_panner) {
|
||||
return;
|
||||
}
|
||||
|
||||
uint32_t nouts = _panner->nouts();
|
||||
|
||||
if (nouts == _current_nouts) {
|
||||
return;
|
||||
}
|
||||
|
||||
_current_nouts = nouts;
|
||||
|
||||
cout << "Setup pan for " << _panner->name() << endl;
|
||||
|
||||
if (nouts == 0 || nouts == 1) {
|
||||
|
||||
while (!pan_adjustments.empty()) {
|
||||
|
@ -83,6 +83,7 @@ class PannerUI : public Gtk::HBox
|
||||
|
||||
bool ignore_toggle;
|
||||
bool in_pan_update;
|
||||
int _current_nouts;
|
||||
|
||||
static const int pan_bar_height;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user