plugin-pin management.. nearly there
[ardour.git] / libs / ardour / session_vst.cc
index 9bf28473317e556166a68888988586d418144e29..c6978eddc704c7a1273d47d57b5b80abda1de560 100644 (file)
@@ -86,7 +86,7 @@ intptr_t Session::vst_callback (
                SHOW_CALLBACK ("audioMasterAutomate");
                // index, value, returns 0
                if (plug) {
-                       plug->set_parameter_automated (index, opt);
+                       plug->parameter_changed_externally (index, opt);
                }
                return 0;
 
@@ -249,11 +249,18 @@ intptr_t Session::vst_callback (
                                _timeInfo.flags |= (kVstSmpteValid);
                        }
 
+                       //ToDo: 
+                       //if this is found to be burdensome to plugins,
+                       //we should cache the previous state at a global level,
+                       //and only set this flag when the transport changes state
+                       _timeInfo.flags |= (kVstTransportChanged);
+
                        if (session->transport_speed() != 0.0f) {
                                _timeInfo.flags |= (kVstTransportPlaying);
                        }
 
                        if (session->get_play_loop()) {
+                               _timeInfo.flags |= (kVstTransportCycleActive);
                        }
 
                } else {
@@ -318,7 +325,11 @@ intptr_t Session::vst_callback (
 
        case audioMasterSizeWindow:
                SHOW_CALLBACK ("audioMasterSizeWindow");
-               // index: width, value: height
+               if (plug && plug->state()) {
+                       plug->state()->width = index;
+                       plug->state()->height = value;
+                       plug->state()->want_resize = 1;
+               }
                return 0;
 
        case audioMasterGetSampleRate: