From 14f461218121d2b0d68158d7061cbaa375d827e8 Mon Sep 17 00:00:00 2001 From: Taybin Rutkin Date: Tue, 1 Aug 2006 21:11:55 +0000 Subject: Added LADSPA_PATH to ardev_common.sh Removed redundent added_plugins list from PluginSelector Started refactoring of PluginManager into PluginInfo PluginManager now uses shared_ptr git-svn-id: svn://localhost/ardour2/trunk@738 d708f5d6-7413-0410-9779-e7cbd77b26cf --- gtk2_ardour/ardev_common.sh | 3 +++ gtk2_ardour/plugin_selector.cc | 53 +++++++++++++++++------------------------- gtk2_ardour/plugin_selector.h | 11 ++++----- 3 files changed, 29 insertions(+), 38 deletions(-) (limited to 'gtk2_ardour') diff --git a/gtk2_ardour/ardev_common.sh b/gtk2_ardour/ardev_common.sh index faf5f69531..ce3b1935c5 100755 --- a/gtk2_ardour/ardev_common.sh +++ b/gtk2_ardour/ardev_common.sh @@ -6,3 +6,6 @@ export LD_LIBRARY_PATH=../libs/surfaces/control_protocol:../libs/ardour:../libs/ # DYLD_LIBRARY_PATH is for darwin. export DYLD_LIBRARY_PATH=$LD_LIBRARY_PATH + +# LADSPA_PATH for OSX +export LADSPA_PATH=$LADSPA_PATH:/Library/Audio/Plug-Ins/LADSPA diff --git a/gtk2_ardour/plugin_selector.cc b/gtk2_ardour/plugin_selector.cc index 3a576d443e..a34533ade9 100644 --- a/gtk2_ardour/plugin_selector.cc +++ b/gtk2_ardour/plugin_selector.cc @@ -51,7 +51,7 @@ PluginSelector::PluginSelector (PluginManager *mgr) o_selected_plug = -1; i_selected_plug = 0; - current_selection = ARDOUR::PluginInfo::LADSPA; + current_selection = PluginInfo::LADSPA; lmodel = Gtk::ListStore::create(lcols); ladspa_display.set_model (lmodel); @@ -226,8 +226,8 @@ void PluginSelector::input_refiller () { guint row; - list &plugs = manager->ladspa_plugin_info (); - list::iterator i; + PluginInfoList &plugs = manager->ladspa_plugin_info (); + PluginInfoList::iterator i; char ibuf[16], obuf[16]; lmodel->clear(); @@ -259,8 +259,8 @@ void PluginSelector::vst_refiller () { guint row; - list &plugs = manager->vst_plugin_info (); - list::iterator i; + PluginInfoList &plugs = manager->vst_plugin_info (); + PluginInfoList::iterator i; char ibuf[16], obuf[16]; vmodel->clear(); @@ -288,7 +288,7 @@ PluginSelector::vst_display_selection_changed() btn_add->set_sensitive (false); } - current_selection = ARDOUR::PluginInfo::VST; + current_selection = PluginInfo::VST; } #endif //VST_SUPPORT @@ -305,8 +305,8 @@ void PluginSelector::au_refiller () { guint row; - list &plugs = manager->au_plugin_info (); - list::iterator i; + PluginInfoList &plugs = manager->au_plugin_info (); + PluginInfoList::iterator i; char ibuf[16], obuf[16]; aumodel->clear(); @@ -334,17 +334,15 @@ PluginSelector::au_display_selection_changed() btn_add->set_sensitive (false); } - current_selection = ARDOUR::PluginInfo::AudioUnit; + current_selection = PluginInfo::AudioUnit; } #endif //HAVE_COREAUDIO void -PluginSelector::use_plugin (PluginInfo* pi) +PluginSelector::use_plugin (PluginInfoPtr pi) { - list::iterator i; - - if (pi == 0 || session == 0) { + if (session == 0) { return; } @@ -359,32 +357,29 @@ void PluginSelector::btn_add_clicked() { std::string name; - ARDOUR::PluginInfo *pi; + PluginInfoPtr pi; Gtk::TreeModel::Row newrow = *(amodel->append()); Gtk::TreeModel::Row row; switch (current_selection) { - case ARDOUR::PluginInfo::LADSPA: + case PluginInfo::LADSPA: row = *(ladspa_display.get_selection()->get_selected()); name = row[lcols.name]; pi = row[lcols.plugin]; - added_plugins.push_back (row[lcols.plugin]); break; - case ARDOUR::PluginInfo::VST: + case PluginInfo::VST: #ifdef VST_SUPPORT row = *(vst_display.get_selection()->get_selected()); name = row[vcols.name]; pi = row[vcols.plugin]; - added_plugins.push_back (row[vcols.plugin]); #endif break; - case ARDOUR::PluginInfo::AudioUnit: + case PluginInfo::AudioUnit: #ifdef HAVE_COREAUDIO row = *(au_display.get_selection()->get_selected()); name = row[aucols.name]; pi = row[aucols.plugin]; - added_plugins.push_back (row[aucols.plugin]); #endif break; default: @@ -403,17 +398,12 @@ PluginSelector::btn_add_clicked() void PluginSelector::btn_remove_clicked() { - list::iterator i; Gtk::TreeModel::iterator iter = added_list.get_selection()->get_selected(); - for (i = added_plugins.begin(); (*i) != (*iter)[acols.plugin]; ++i); - - added_plugins.erase(i); + amodel->erase(iter); if (amodel->children().empty()) { - set_response_sensitive (RESPONSE_APPLY, false); + set_response_sensitive (RESPONSE_APPLY, false); } - - } void @@ -438,7 +428,7 @@ PluginSelector::ladspa_display_selection_changed() btn_add->set_sensitive (false); } - current_selection = ARDOUR::PluginInfo::LADSPA; + current_selection = PluginInfo::LADSPA; } void @@ -455,14 +445,14 @@ int PluginSelector::run () { ResponseType r; - list::iterator i; + TreeModel::Children::iterator i; r = (ResponseType) Dialog::run (); switch (r) { case RESPONSE_APPLY: - for (i = added_plugins.begin(); i != added_plugins.end(); ++i){ - use_plugin (*i); + for (i = amodel->children().begin(); i != amodel->children().end(); ++i) { + use_plugin ((*i)[acols.plugin]); } break; @@ -479,6 +469,5 @@ void PluginSelector::cleanup () { hide(); - added_plugins.clear(); amodel->clear(); } diff --git a/gtk2_ardour/plugin_selector.h b/gtk2_ardour/plugin_selector.h index 5afe7469ab..06c2f1d18e 100644 --- a/gtk2_ardour/plugin_selector.h +++ b/gtk2_ardour/plugin_selector.h @@ -66,7 +66,7 @@ class PluginSelector : public ArdourDialog Gtk::TreeModelColumn type; Gtk::TreeModelColumn ins; Gtk::TreeModelColumn outs; - Gtk::TreeModelColumn plugin; + Gtk::TreeModelColumn plugin; }; LadspaColumns lcols; Glib::RefPtr lmodel; @@ -81,7 +81,7 @@ class PluginSelector : public ArdourDialog add (plugin); } Gtk::TreeModelColumn text; - Gtk::TreeModelColumn plugin; + Gtk::TreeModelColumn plugin; }; AddedColumns acols; Glib::RefPtr amodel; @@ -100,7 +100,7 @@ class PluginSelector : public ArdourDialog Gtk::TreeModelColumn name; Gtk::TreeModelColumn ins; Gtk::TreeModelColumn outs; - Gtk::TreeModelColumn plugin; + Gtk::TreeModelColumn plugin; }; VstColumns vcols; Glib::RefPtr vmodel; @@ -123,7 +123,7 @@ class PluginSelector : public ArdourDialog Gtk::TreeModelColumn name; Gtk::TreeModelColumn ins; Gtk::TreeModelColumn outs; - Gtk::TreeModelColumn plugin; + Gtk::TreeModelColumn plugin; }; AUColumns aucols; Glib::RefPtr aumodel; @@ -141,7 +141,6 @@ class PluginSelector : public ArdourDialog gint o_selected_plug; ARDOUR::PluginManager *manager; - list added_plugins; static void _input_refiller (void *); @@ -153,7 +152,7 @@ class PluginSelector : public ArdourDialog void added_list_selection_changed(); void ladspa_display_selection_changed(); void btn_apply_clicked(); - void use_plugin (ARDOUR::PluginInfo*); + void use_plugin (ARDOUR::PluginInfoPtr); void cleanup (); }; -- cgit v1.2.3