Bring back control slider on MIDI controller "tracks".
authorDavid Robillard <d@drobilla.net>
Sun, 31 Aug 2014 21:52:09 +0000 (17:52 -0400)
committerDavid Robillard <d@drobilla.net>
Sun, 31 Aug 2014 21:54:16 +0000 (17:54 -0400)
gtk2_ardour/midi_time_axis.cc

index 00f16ce1b67fc5cf3690ecb6bc4eaadc9fb40690..7ccb480e599bbe55bdf937d9a8e4a59bb6df1748 100644 (file)
@@ -1318,6 +1318,8 @@ MidiTimeAxisView::create_automation_child (const Evoral::Parameter& param, bool
        }
 
        boost::shared_ptr<AutomationTimeAxisView> track;
+       boost::shared_ptr<AutomationControl> control;
+
 
        switch (param.type()) {
 
@@ -1340,15 +1342,19 @@ MidiTimeAxisView::create_automation_child (const Evoral::Parameter& param, bool
        case MidiSystemExclusiveAutomation:
                /* These controllers are region "automation" - they are owned
                 * by regions (and their MidiModels), not by the track. As a
-                * result we do not create an AutomationList/Line for the track
-                * ... except here we are doing something!! XXX 
+                * result there is no AutomationList/Line for the track, but we create
+                * a controller for the user to write immediate events, so the editor
+                * can act as a control surface for the present MIDI controllers.
+                *
+                * TODO: Record manipulation of the controller to regions?
                 */
 
+               control = _route->automation_control(param, true);
                track.reset (new AutomationTimeAxisView (
                                     _session,
                                     _route,
-                                    boost::shared_ptr<Automatable> (),
-                                    boost::shared_ptr<AutomationControl> (),
+                                    control ? _route : boost::shared_ptr<Automatable> (),
+                                    control,
                                     param,
                                     _editor,
                                     *this,