diff options
Diffstat (limited to 'gtk2_ardour/route_ui.cc')
-rw-r--r-- | gtk2_ardour/route_ui.cc | 25 |
1 files changed, 5 insertions, 20 deletions
diff --git a/gtk2_ardour/route_ui.cc b/gtk2_ardour/route_ui.cc index 040dac6e0e..dc861fbbbb 100644 --- a/gtk2_ardour/route_ui.cc +++ b/gtk2_ardour/route_ui.cc @@ -26,6 +26,8 @@ #include <ardour/route_group.h> #include <pbd/memento_command.h> +#include <pbd/stacktrace.h> +#include <pbd/shiva.h> #include "route_ui.h" #include "keyboard.h" @@ -46,7 +48,6 @@ using namespace Gtkmm2ext; using namespace ARDOUR; using namespace PBD; - RouteUI::RouteUI (boost::shared_ptr<ARDOUR::Route> rt, ARDOUR::Session& sess, const char* m_name, const char* s_name, const char* r_name) : AxisView(sess), @@ -67,7 +68,8 @@ RouteUI::RouteUI (boost::shared_ptr<ARDOUR::Route> rt, ARDOUR::Session& sess, co set_color (unique_random_color()); } - _route->GoingAway.connect (mem_fun (*this, &RouteUI::route_removed)); + new Shiva<Route,RouteUI> (*_route, *this); + _route->active_changed.connect (mem_fun (*this, &RouteUI::route_active_changed)); mute_button = manage (new BindableToggleButton (_route->mute_control(), m_name )); @@ -97,6 +99,7 @@ RouteUI::RouteUI (boost::shared_ptr<ARDOUR::Route> rt, ARDOUR::Session& sess, co RouteUI::~RouteUI() { + GoingAway (); /* EMIT SIGNAL */ delete mute_menu; } @@ -582,17 +585,6 @@ RouteUI::reversibly_apply_route_boolean (string name, void (Route::*func)(bool, } void -RouteUI::reversibly_apply_audio_track_boolean (string name, void (AudioTrack::*func)(bool, void *), bool yn, void *arg) -{ - _session.begin_reversible_command (name); - XMLNode &before = audio_track()->get_state(); - bind (mem_fun (*audio_track(), func), yn, arg)(); - XMLNode &after = audio_track()->get_state(); - _session.add_command (new MementoCommand<AudioTrack>(*audio_track(), &before, &after)); - _session.commit_reversible_command (); -} - -void RouteUI::reversibly_apply_track_boolean (string name, void (Track::*func)(bool, void *), bool yn, void *arg) { _session.begin_reversible_command (name); @@ -743,13 +735,6 @@ RouteUI::idle_remove_this_route (RouteUI *rui) } void -RouteUI::route_removed () -{ - ENSURE_GUI_THREAD(mem_fun (*this, &RouteUI::route_removed)); - delete this; -} - -void RouteUI::route_rename () { ArdourPrompter name_prompter (true); |