- if (!rv.region.envelope_active()) {
- XMLNode &before = rv.region.get_state();
- rv.region.set_envelope_active(true);
- XMLNode &after = rv.region.get_state();
- trackview.session().add_command(MementoCommand<AudioRegion>(rv.region, before, after));
- }
-
+ if (!rv.audio_region()->envelope_active()) {
+ XMLNode ®ion_before = rv.audio_region()->get_state();
+ rv.audio_region()->set_envelope_active(true);
+ XMLNode ®ion_after = rv.audio_region()->get_state();
+ trackview.session().add_command(new MementoCommand<AudioRegion>(*(rv.audio_region().get()), ®ion_before, ®ion_after));
+ }
+