summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarl Hetherington <carl@carlh.net>2011-11-18 00:22:31 +0000
committerCarl Hetherington <carl@carlh.net>2011-11-18 00:22:31 +0000
commit5cb4efea80588c6e3be3b58f573d9a5d6f6a7e1b (patch)
tree58ce6243c3ac5c702f573a2ac306a110781c6c54
parent12e80812fdbfcf905d29b423485d103dedf1a92b (diff)
Remove panner altogether, if necessary, when setting up PannerUI. Also reset a mixer strip's peak display when its route is changed (#4485).
git-svn-id: svn://localhost/ardour2/branches/3.0@10668 d708f5d6-7413-0410-9779-e7cbd77b26cf
-rw-r--r--gtk2_ardour/mixer_strip.cc2
-rw-r--r--gtk2_ardour/panner_ui.cc14
2 files changed, 9 insertions, 7 deletions
diff --git a/gtk2_ardour/mixer_strip.cc b/gtk2_ardour/mixer_strip.cc
index 5d018a4251..18f65d7880 100644
--- a/gtk2_ardour/mixer_strip.cc
+++ b/gtk2_ardour/mixer_strip.cc
@@ -545,6 +545,8 @@ MixerStrip::set_route (boost::shared_ptr<Route> rt)
hide_button.show();
}
+ gpm.reset_peak_display ();
+
width_button.show();
width_hide_box.show();
whvbox.show ();
diff --git a/gtk2_ardour/panner_ui.cc b/gtk2_ardour/panner_ui.cc
index 627d4e76aa..c086ce177c 100644
--- a/gtk2_ardour/panner_ui.cc
+++ b/gtk2_ardour/panner_ui.cc
@@ -219,14 +219,10 @@ PannerUI::panshell_changed ()
void
PannerUI::setup_pan ()
{
- if (!_panner) {
- return;
- }
-
- uint32_t const nouts = _panner->out().n_audio();
- uint32_t const nins = _panner->in().n_audio();
+ int const nouts = _panner ? _panner->out().n_audio() : -1;
+ int const nins = _panner ? _panner->in().n_audio() : -1;
- if (int32_t (nouts) == _current_nouts && int32_t (nins) == _current_nins) {
+ if (nouts == _current_nouts && nins == _current_nins) {
return;
}
@@ -242,6 +238,10 @@ PannerUI::setup_pan ()
delete _mono_panner;
_mono_panner = 0;
+ if (!_panner) {
+ return;
+ }
+
if (nouts == 0 || nouts == 1) {
/* stick something into the panning viewport so that it redraws */