Save and restore _saved_meter_point; fixes #4195.
authorCarl Hetherington <carl@carlh.net>
Mon, 24 Oct 2011 22:54:30 +0000 (22:54 +0000)
committerCarl Hetherington <carl@carlh.net>
Mon, 24 Oct 2011 22:54:30 +0000 (22:54 +0000)
git-svn-id: svn://localhost/ardour2/branches/3.0@10304 d708f5d6-7413-0410-9779-e7cbd77b26cf

libs/ardour/track.cc

index 549a54e010473905c209edfa55b89e43c93af65b..5370d8197cc4d4eec7c45d534304078c077160c0 100644 (file)
@@ -76,6 +76,7 @@ Track::state (bool full)
 {
        XMLNode& root (Route::state (full));
        root.add_property (X_("monitoring"), enum_2_string (_monitoring));
+       root.add_property (X_("saved-meter-point"), enum_2_string (_saved_meter_point));
        root.add_child_nocopy (_rec_enable_control->get_state());
        root.add_child_nocopy (_diskstream->get_state ());
        return root;
@@ -128,6 +129,12 @@ Track::_set_state (const XMLNode& node, int version)
                _monitoring = MonitorAuto;
        }
 
+       if ((prop = node.property (X_("saved-meter-point"))) != 0) {
+               _saved_meter_point = MeterPoint (string_2_enum (prop->value(), _saved_meter_point));
+       } else {
+               _saved_meter_point = _meter_point;
+       }
+
        return 0;
 }