add Group::clear(), do not clear _canvas member of Item when unparented (only the...
[ardour.git] / gtk2_ardour / lv2_plugin_ui.cc
index 0c4ea8f0d9b74521771e32ae73f371965a904a56..839bc6a4b8f537bf93d174b834f9c1a64a6d4493 100644 (file)
@@ -56,9 +56,13 @@ LV2PluginUI::write_from_ui(void*       controller,
                if (ac) {
                        ac->set_value(*(const float*)buffer);
                }
-       } else if (format == me->_lv2->atom_eventTransfer()) {
-               me->_lv2->write_from_ui(port_index, format, buffer_size,
-                                       (const uint8_t*)buffer);
+       } else if (format == me->_lv2->urids.atom_eventTransfer) {
+
+               const int cnt = me->_pi->get_count();
+               for (int i=0; i < cnt; i++ ) {
+                       boost::shared_ptr<LV2Plugin> lv2i = boost::dynamic_pointer_cast<LV2Plugin> (me->_pi->plugin(i));
+                       lv2i->write_from_ui(port_index, format, buffer_size, (const uint8_t*)buffer);
+               }
        }
 }
 
@@ -177,6 +181,7 @@ LV2PluginUI::output_update()
 LV2PluginUI::LV2PluginUI(boost::shared_ptr<PluginInsert> pi,
                          boost::shared_ptr<LV2Plugin>    lv2p)
        : PlugUIBase(pi)
+       , _pi(pi)
        , _lv2(lv2p)
        , _gui_widget(NULL)
        , _ardour_buttons_box(NULL)