summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarl Hetherington <carl@carlh.net>2011-10-29 01:19:34 +0000
committerCarl Hetherington <carl@carlh.net>2011-10-29 01:19:34 +0000
commit46b3b7e8d27bf3bdeabaef564b642f9041a2e25b (patch)
tree2f972ce742d406088fb70e05ca2cedf0ec85c41a
parentaaa486a90f350f561f4dbf1397fd7fe8797f729d (diff)
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
-rw-r--r--libs/ardour/route.cc19
1 files 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));