diff options
author | David Robillard <d@drobilla.net> | 2007-06-29 04:02:58 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2007-06-29 04:02:58 +0000 |
commit | 24ccaac67e9d416b3f3c564a441934313f3e9a21 (patch) | |
tree | f244c9835aadc67f88c73ad2f499b6575f06c27c /gtk2_ardour/region_gain_line.cc | |
parent | f8697ed223c1f59dde5aee1ac7bff8bd8a6e19a8 (diff) |
Further automation refactoring - bring in the concept of Controllable, work towards
making automation + GUI + play/write/touch generic and easily reusable.
Added bar controller to automation track controls (mostly relevant for MIDI CC, but added for gain and pan too Just Because).
Fixed glaring "redirect" list errors.
Fix plugin controls/automation loading.
git-svn-id: svn://localhost/ardour2/trunk@2080 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/region_gain_line.cc')
-rw-r--r-- | gtk2_ardour/region_gain_line.cc | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/gtk2_ardour/region_gain_line.cc b/gtk2_ardour/region_gain_line.cc index 25ba903ca8..6299813121 100644 --- a/gtk2_ardour/region_gain_line.cc +++ b/gtk2_ardour/region_gain_line.cc @@ -38,7 +38,7 @@ using namespace std; using namespace ARDOUR; using namespace PBD; -AudioRegionGainLine::AudioRegionGainLine (const string & name, Session& s, AudioRegionView& r, ArdourCanvas::Group& parent, AutomationList& l) +AudioRegionGainLine::AudioRegionGainLine (const string & name, Session& s, AudioRegionView& r, ArdourCanvas::Group& parent, boost::shared_ptr<AutomationList> l) : AutomationLine (name, r.get_time_axis_view(), parent, l), session (s), rv (r) @@ -67,8 +67,8 @@ AudioRegionGainLine::start_drag (ControlPoint* cp, nframes_t x, float fraction) { AutomationLine::start_drag (cp, x, fraction); if (!rv.audio_region()->envelope_active()) { - trackview.session().add_command(new MementoCommand<AudioRegion>(*(rv.audio_region().get()), &rv.audio_region()->get_state(), 0)); - rv.audio_region()->set_envelope_active(false); + trackview.session().add_command(new MementoCommand<AudioRegion>(*(rv.audio_region().get()), &rv.audio_region()->get_state(), 0)); + rv.audio_region()->set_envelope_active(false); } } @@ -81,18 +81,18 @@ AudioRegionGainLine::remove_point (ControlPoint& cp) model_representation (cp, mr); trackview.editor.current_session()->begin_reversible_command (_("remove control point")); - XMLNode &before = alist.get_state(); + XMLNode &before = alist->get_state(); if (!rv.audio_region()->envelope_active()) { - XMLNode ®ion_before = rv.audio_region()->get_state(); + 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)); + XMLNode ®ion_after = rv.audio_region()->get_state(); + trackview.session().add_command(new MementoCommand<AudioRegion>(*(rv.audio_region().get()), ®ion_before, ®ion_after)); } - alist.erase (mr.start, mr.end); + alist->erase (mr.start, mr.end); - trackview.editor.current_session()->add_command (new MementoCommand<AutomationList>(alist, &before, &alist.get_state())); + trackview.editor.current_session()->add_command (new MementoCommand<AutomationList>(*alist.get(), &before, &alist->get_state())); trackview.editor.current_session()->commit_reversible_command (); trackview.editor.current_session()->set_dirty (); } |