mark session dirty if video is moved
[ardour.git] / gtk2_ardour / automation_controller.cc
index 9a06b91da595786a8c563512f17cfb1228acf41d..a80a4742327cf41eadd782287b83b0af455c9af9 100644 (file)
 
 #include "pbd/error.h"
 
-#include "ardour/automation_list.h"
-#include "ardour/automation_control.h"
-#include "ardour/event_type_map.h"
 #include "ardour/automatable.h"
-#include "ardour/panner.h"
-#include "ardour/pan_controllable.h"
+#include "ardour/automation_control.h"
 #include "ardour/session.h"
 
 #include "ardour_ui.h"
@@ -76,9 +72,15 @@ AutomationController::create(
                const Evoral::Parameter& param,
                boost::shared_ptr<AutomationControl> ac)
 {
-       Gtk::Adjustment* adjustment = manage (new Gtk::Adjustment (param.normal(), param.min(), param.max(),
-                                                                  (param.max() - param.min())/100.0,
-                                                                  (param.max() - param.min())/10.0));
+       Gtk::Adjustment* adjustment = manage (
+               new Gtk::Adjustment (
+                       ac->internal_to_interface (param.normal()),
+                       ac->internal_to_interface (param.min()),
+                       ac->internal_to_interface (param.max()),
+                       (param.max() - param.min()) / 100.0,
+                       (param.max() - param.min()) / 10.0
+                       )
+               );
 
         assert (ac);
         assert(ac->parameter() == param);
@@ -95,11 +97,11 @@ AutomationController::get_label (double& xpos)
 void
 AutomationController::display_effective_value()
 {
-       double const ui_value = _controllable->user_to_ui (_controllable->get_value());
+       double const interface_value = _controllable->internal_to_interface (_controllable->get_value());
 
-       if (_adjustment->get_value() != ui_value) {
+       if (_adjustment->get_value () != interface_value) {
                _ignore_change = true;
-               _adjustment->set_value (ui_value);
+               _adjustment->set_value (interface_value);
                _ignore_change = false;
        }
 }
@@ -108,7 +110,7 @@ void
 AutomationController::value_adjusted ()
 {
        if (!_ignore_change) {
-               _controllable->set_value (_controllable->ui_to_user (_adjustment->get_value()));
+               _controllable->set_value (_controllable->interface_to_internal (_adjustment->get_value()));
        }
 }
 
@@ -135,23 +137,6 @@ AutomationController::end_touch ()
        }
 }
 
-void
-AutomationController::automation_state_changed ()
-{
-       ENSURE_GUI_THREAD (*this, &AutomationController::automation_state_changed)
-
-       bool x = (_controllable->automation_state() != Off);
-
-       /* start watching automation so that things move */
-
-       _screen_update_connection.disconnect();
-
-       if (x) {
-               _screen_update_connection = ARDOUR_UI::RapidScreenUpdate.connect (
-                               sigc::mem_fun (*this, &AutomationController::display_effective_value));
-       }
-}
-
 void
 AutomationController::value_changed ()
 {