}
{
boost::shared_ptr<PluginInsert> pi = boost::dynamic_pointer_cast<PluginInsert> (_processor);
- if (pi && pi->plugin() && pi->plugin()->get_info()->type != ARDOUR::Lua) {
+ if (pi && pi->plugin()) {
_plugin_preset_pointer = PluginPresetPtr (new PluginPreset (pi->plugin()->get_info()));
}
}
}
}
- Gtk::MenuItem* send_menu_item = dynamic_cast<Gtk::MenuItem*>(ActionManager::get_widget("/ProcessorMenu/send_options"));
- if (send_menu_item) {
- if (single_selection && !_route->is_monitor()) {
- Menu* m = single_selection->build_send_options_menu ();
- if (m && !m->items().empty()) {
- send_menu_item->set_submenu (*m);
- send_menu_item->set_sensitive (true);
+
+ if (!ARDOUR::Profile->get_mixbus()) {
+ Gtk::MenuItem* send_menu_item = dynamic_cast<Gtk::MenuItem*>(ActionManager::get_widget("/ProcessorMenu/send_options"));
+ if (send_menu_item) {
+ if (single_selection && !_route->is_monitor()) {
+ Menu* m = single_selection->build_send_options_menu ();
+ if (m && !m->items().empty()) {
+ send_menu_item->set_submenu (*m);
+ send_menu_item->set_sensitive (true);
+ } else {
+ gtk_menu_item_set_submenu (send_menu_item->gobj(), 0);
+ send_menu_item->set_sensitive (false);
+ }
} else {
- gtk_menu_item_set_submenu (send_menu_item->gobj(), 0);
send_menu_item->set_sensitive (false);
}
- } else {
- send_menu_item->set_sensitive (false);
}
}
_get_plugin_selector()->set_interested_object (*this);
}
-/** @return true if an error occurred, otherwise false */
-bool
-ProcessorBox::choose_lua ()
-{
- LuaScriptInfoPtr spi;
-
- ScriptSelector ss (_("Add Lua DSP Processor"), LuaScriptInfo::DSP);
- switch (ss.run ()) {
- case Gtk::RESPONSE_ACCEPT:
- spi = ss.script();
- break;
- default:
- return true;
- }
- ss.hide ();
-
- PluginPtr p;
- try {
- LuaPluginInfoPtr lpi (new LuaPluginInfo(spi));
- p = (lpi->load (*_session));
- } catch (...) {
- string msg = _(
- "Failed to instantiate Lua DSP Processor,\n"
- "probably because the script is invalid (no dsp function).");
- MessageDialog am (msg);
- am.run ();
- return true;
- }
-
- boost::shared_ptr<Processor> processor (new PluginInsert (*_session, p));
-
- Route::ProcessorStreams err_streams;
- if (_route->add_processor_by_index (processor, _placement, &err_streams, Config->get_new_plugins_active ())) {
- string msg = _(
- "Failed to add Lua DSP Processor at the given position,\n"
- "probably because the I/O configuration of the plugins\n"
- "could not match the configuration of this track.");
- MessageDialog am (msg);
- am.run ();
- }
- return false;
-}
-
/** @return true if an error occurred, otherwise false */
bool
ProcessorBox::use_plugins (const SelectedPlugins& plugins)
myactions.register_action (processor_box_actions, X_("newplugin"), _("New Plugin"),
sigc::ptr_fun (ProcessorBox::rb_choose_plugin));
- act = myactions.register_action (processor_box_actions, X_("newlua"), _("New Lua DSP"),
- sigc::ptr_fun (ProcessorBox::rb_choose_lua));
act = myactions.register_action (processor_box_actions, X_("newinsert"), _("New Insert"),
sigc::ptr_fun (ProcessorBox::rb_choose_insert));
ActionManager::engine_sensitive_actions.push_back (act);
_current_processor_box->choose_plugin ();
}
-void
-ProcessorBox::rb_choose_lua ()
-{
- if (_current_processor_box == 0) {
- return;
- }
- _current_processor_box->choose_lua ();
-}
-
void
ProcessorBox::rb_choose_insert ()
{