From 46b3b7e8d27bf3bdeabaef564b642f9041a2e25b Mon Sep 17 00:00:00 2001 From: Carl Hetherington Date: Sat, 29 Oct 2011 01:19:34 +0000 Subject: [PATCH] Reload meters in the right place even if they are set to a custom position (#4400). git-svn-id: svn://localhost/ardour2/branches/3.0@10330 d708f5d6-7413-0410-9779-e7cbd77b26cf --- libs/ardour/route.cc | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/libs/ardour/route.cc b/libs/ardour/route.cc index a7fb05ec15..76b3f55d22 100644 --- a/libs/ardour/route.cc +++ b/libs/ardour/route.cc @@ -1965,6 +1965,14 @@ Route::_set_state (const XMLNode& node, int version) } } + if ((prop = node.property (X_("meter-point"))) != 0) { + MeterPoint mp = MeterPoint (string_2_enum (prop->value (), _meter_point)); + set_meter_point (mp, true); + if (_meter) { + _meter->set_display_to_user (_meter_point == MeterCustom); + } + } + set_processor_state (processor_state); if ((prop = node.property ("self-solo")) != 0) { @@ -2003,14 +2011,6 @@ Route::_set_state (const XMLNode& node, int version) set_active (yn, this); } - if ((prop = node.property (X_("meter-point"))) != 0) { - MeterPoint mp = MeterPoint (string_2_enum (prop->value (), _meter_point)); - set_meter_point (mp, true); - if (_meter) { - _meter->set_display_to_user (_meter_point == MeterCustom); - } - } - if ((prop = node.property (X_("order-keys"))) != 0) { int32_t n; @@ -2360,6 +2360,7 @@ Route::set_processor_state (const XMLNode& node) new_order.push_back (_amp); } else if (prop->value() == "meter") { _meter->set_state (**niter, Stateful::current_state_version); + new_order.push_back (_meter); } else if (prop->value() == "main-outs") { _main_outs->set_state (**niter, Stateful::current_state_version); } else if (prop->value() == "intreturn") { @@ -2401,7 +2402,7 @@ Route::set_processor_state (const XMLNode& node) } else if (prop->value() == "ladspa" || prop->value() == "Ladspa" || prop->value() == "lv2" || prop->value() == "vst" || - prop->value() == "lxvst" || + prop->value() == "lxvst" || prop->value() == "audiounit") { processor.reset (new PluginInsert(_session));