diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2012-01-20 03:39:45 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2012-01-20 03:39:45 +0000 |
commit | cc5e8d41da336535d04169550d09cfe02e9cb065 (patch) | |
tree | e3d15d394d74e7a0658e1ea096bb811d0d34cc0a | |
parent | 5de9a8f38b0e18317b2b23c5b8698d0d29eba12b (diff) |
patch from colinf to make dbl-click on send "box" map its controls to the strip; remove related stub functions from ProcessorBox; fix crash when removing send due to the process lock not being held
git-svn-id: svn://localhost/ardour2/branches/3.0@11274 d708f5d6-7413-0410-9779-e7cbd77b26cf
-rw-r--r-- | gtk2_ardour/processor_box.cc | 15 | ||||
-rw-r--r-- | gtk2_ardour/processor_box.h | 3 | ||||
-rw-r--r-- | libs/ardour/route.cc | 1 |
3 files changed, 6 insertions, 13 deletions
diff --git a/gtk2_ardour/processor_box.cc b/gtk2_ardour/processor_box.cc index a97f8d08b4..8eb1063bba 100644 --- a/gtk2_ardour/processor_box.cc +++ b/gtk2_ardour/processor_box.cc @@ -657,16 +657,6 @@ ProcessorBox::build_possible_aux_menu () } void -ProcessorBox::show_send_controls () -{ -} - -void -ProcessorBox::new_send () -{ -} - -void ProcessorBox::show_processor_menu (int arg) { if (processor_menu == 0) { @@ -1830,6 +1820,11 @@ ProcessorBox::toggle_edit_processor (boost::shared_ptr<Processor> processor) if (boost::dynamic_pointer_cast<InternalSend> (processor) == 0) { SendUIWindow* w = new SendUIWindow (send, _session); w->show (); + } else { + /* assign internal send to main fader */ + if (_parent_strip) { + _parent_strip->show_send(send); + } } } else if ((retrn = boost::dynamic_pointer_cast<Return> (processor)) != 0) { diff --git a/gtk2_ardour/processor_box.h b/gtk2_ardour/processor_box.h index 270b4147e0..3caa2925c9 100644 --- a/gtk2_ardour/processor_box.h +++ b/gtk2_ardour/processor_box.h @@ -271,9 +271,6 @@ class ProcessorBox : public Gtk::HBox, public PluginInterestedObject, public ARD Width _width; - void new_send (); - void show_send_controls (); - Gtk::Menu *processor_menu; gint processor_menu_map_handler (GdkEventAny *ev); Gtk::Menu * build_processor_menu (); diff --git a/libs/ardour/route.cc b/libs/ardour/route.cc index 1481a1fd1c..6a7ddde48b 100644 --- a/libs/ardour/route.cc +++ b/libs/ardour/route.cc @@ -2565,6 +2565,7 @@ Route::add_send_to_internal_return (InternalSend* send) void Route::remove_send_from_internal_return (InternalSend* send) { + Glib::Mutex::Lock lm (AudioEngine::instance()->process_lock ()); Glib::RWLock::ReaderLock rm (_processor_lock); for (ProcessorList::const_iterator x = _processors.begin(); x != _processors.end(); ++x) { |