From c3e8cdb418008d05a927b442eb9291a1cd6f7111 Mon Sep 17 00:00:00 2001 From: Robin Gareus Date: Fri, 8 Sep 2017 19:37:48 +0200 Subject: PatchChange Dialog: update title & refresh midnam on change --- gtk2_ardour/midi_time_axis.cc | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) (limited to 'gtk2_ardour/midi_time_axis.cc') diff --git a/gtk2_ardour/midi_time_axis.cc b/gtk2_ardour/midi_time_axis.cc index 9e4d0ed5b1..3627074bc8 100644 --- a/gtk2_ardour/midi_time_axis.cc +++ b/gtk2_ardour/midi_time_axis.cc @@ -425,7 +425,7 @@ MidiTimeAxisView::update_patch_selector () boost::bind (&MidiTimeAxisView::drop_instrument_ref, this), gui_context()); pi->plugin()->UpdateMidnam.connect (midnam_connection, invalidator (*this), - boost::bind (&Plugin::read_midnam, pi->plugin ()), + boost::bind (&MidiTimeAxisView::reread_midnam, this), gui_context()); pluginprovided = true; @@ -445,6 +445,17 @@ MidiTimeAxisView::update_patch_selector () } } +void +MidiTimeAxisView::reread_midnam () +{ + boost::shared_ptr the_instrument (_route->the_instrument()); + boost::shared_ptr pi = boost::dynamic_pointer_cast(the_instrument); + pi->plugin ()->read_midnam(); + + if (_patch_change_dialog) { + _patch_change_dialog->refresh (); + } +} void MidiTimeAxisView::model_changed(const std::string& model) { @@ -486,6 +497,10 @@ MidiTimeAxisView::model_changed(const std::string& model) delete controller_menu; controller_menu = 0; build_automation_action_menu(false); + + if (_patch_change_dialog) { + _patch_change_dialog->refresh (); + } } void @@ -1093,7 +1108,7 @@ MidiTimeAxisView::send_patch_change () return; } - PatchChangeGridDialog* d = new PatchChangeGridDialog (string_compose (_("Select Patch for '%1'"), _route->name ()), _route); + PatchChangeGridDialog* d = new PatchChangeGridDialog (_route); _patch_change_dialog = d; d->present (); } -- cgit v1.2.3