From: Paul Davis Date: Fri, 5 Oct 2018 18:29:15 +0000 (-0400) Subject: make remove work for transport masters (bug fix, really) X-Git-Url: https://git.carlh.net/gitweb/?a=commitdiff_plain;h=e4a914e26e7dfb30a5758b7e464738aeb48d72b4;p=ardour.git make remove work for transport masters (bug fix, really) --- diff --git a/gtk2_ardour/transport_masters_dialog.cc b/gtk2_ardour/transport_masters_dialog.cc index ac2066ceba..027d98964c 100644 --- a/gtk2_ardour/transport_masters_dialog.cc +++ b/gtk2_ardour/transport_masters_dialog.cc @@ -83,6 +83,8 @@ TransportMastersWidget::TransportMastersWidget () table.set_spacings (6); TransportMasterManager::instance().CurrentChanged.connect (current_connection, invalidator (*this), boost::bind (&TransportMastersWidget::current_changed, this, _1, _2), gui_context()); + TransportMasterManager::instance().Added.connect (current_connection, invalidator (*this), boost::bind (&TransportMastersWidget::rebuild, this), gui_context()); + TransportMasterManager::instance().Removed.connect (current_connection, invalidator (*this), boost::bind (&TransportMastersWidget::rebuild, this), gui_context()); rebuild (); } @@ -114,9 +116,7 @@ TransportMastersWidget::current_changed (boost::shared_ptr old_ void TransportMastersWidget::add_master () { - if (!TransportMasterManager::instance().add (LTC, "new ltc")) { - rebuild (); - } + TransportMasterManager::instance().add (LTC, "new ltc"); } void @@ -247,6 +247,7 @@ TransportMastersWidget::Row::name_press (GdkEventButton* ev) void TransportMastersWidget::Row::remove_clicked () { + TransportMasterManager::instance().remove (tm->name()); } void diff --git a/libs/ardour/transport_master_manager.cc b/libs/ardour/transport_master_manager.cc index 7912b82218..0ac3bbfca2 100644 --- a/libs/ardour/transport_master_manager.cc +++ b/libs/ardour/transport_master_manager.cc @@ -359,7 +359,7 @@ TransportMasterManager::remove (std::string const & name) for (TransportMasters::iterator t = _transport_masters.begin(); t != _transport_masters.end(); ++t) { if ((*t)->name() == name) { - if (!tm->removeable()) { + if (!(*t)->removeable()) { return -1; } tm = *t;