pgm_table->attach (*cui, col, col + 1, row, row+1, FILL|EXPAND, FILL);
}
+ insert->plugin ()->read_midnam();
+
midi_refill_patches ();
insert->plugin()->BankPatchChange.connect (
boost::bind (&GenericPluginUI::midi_bank_patch_change, this, _1),
gui_context());
- /* Note: possible race with MidiTimeAxisView::update_patch_selector()
- * which uses this signal to update/re-register the midnam (also in gui context).
- * MTAV does register before us, so the midnam should already be updated when
- * we're notified.
- */
- insert->plugin()->UpdateMidnam.connect (
+ insert->plugin()->UpdatedMidnam.connect (
midi_connections, invalidator (*this),
boost::bind (&GenericPluginUI::midi_refill_patches, this),
gui_context());
pi->plugin()->UpdateMidnam.connect (midnam_connection, invalidator (*this),
boost::bind (&MidiTimeAxisView::reread_midnam, this),
gui_context());
+ reread_midnam ();
pluginprovided = true;
std::string model_name = pi->plugin ()->midnam_model ();
{
boost::shared_ptr<Processor> the_instrument (_route->the_instrument());
boost::shared_ptr<PluginInsert> pi = boost::dynamic_pointer_cast<PluginInsert>(the_instrument);
- pi->plugin ()->read_midnam();
+ bool rv = pi->plugin ()->read_midnam();
- if (_patch_change_dialog) {
+ if (rv && _patch_change_dialog) {
_patch_change_dialog->refresh ();
}
}