From e9081b0b7cfa38202d868a29f69cf1713ddc8e7b Mon Sep 17 00:00:00 2001 From: Ben Loftis Date: Thu, 6 Jan 2022 16:28:57 -0600 Subject: [PATCH] trigger_ui: re-add the ability to pick several clips at once --- gtk2_ardour/slot_properties_box.cc | 2 +- gtk2_ardour/trigger_ui.cc | 6 ++++-- gtk2_ardour/trigger_ui.h | 2 +- 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/gtk2_ardour/slot_properties_box.cc b/gtk2_ardour/slot_properties_box.cc index 46710d5b19..20e6abc7b1 100644 --- a/gtk2_ardour/slot_properties_box.cc +++ b/gtk2_ardour/slot_properties_box.cc @@ -215,7 +215,7 @@ SlotPropertyTable::SlotPropertyTable () _load_button.set_name("FollowAction"); _load_button.set_text (_("Load")); - _load_button.signal_clicked.connect (sigc::mem_fun (*this, (&TriggerUI::choose_sample))); + _load_button.signal_clicked.connect (sigc::bind((sigc::mem_fun (*this, (&TriggerUI::choose_sample))), false)); _color_button.set_name("FollowAction"); _color_button.signal_clicked.connect (sigc::mem_fun (*this, (&TriggerUI::choose_color))); diff --git a/gtk2_ardour/trigger_ui.cc b/gtk2_ardour/trigger_ui.cc index 5fa463b86b..2b87bfdf9e 100644 --- a/gtk2_ardour/trigger_ui.cc +++ b/gtk2_ardour/trigger_ui.cc @@ -189,7 +189,7 @@ TriggerUI::choose_color () } void -TriggerUI::choose_sample () +TriggerUI::choose_sample (bool allow_multiple_select) { if (!_file_chooser) { _file_chooser = new Gtk::FileChooserDialog (_("Select sample"), Gtk::FILE_CHOOSER_ACTION_OPEN); @@ -229,6 +229,8 @@ TriggerUI::choose_sample () } + _file_chooser->set_select_multiple (allow_multiple_select); + _file_chooser_connection.disconnect (); _file_chooser_connection = _file_chooser->signal_response ().connect (sigc::mem_fun (*this, &SlotPropertyTable::sample_chosen)); @@ -420,7 +422,7 @@ TriggerUI::context_menu () Menu* load_menu = manage (new Menu); MenuList& loitems (load_menu->items ()); - loitems.push_back (MenuElem (_("from file"), sigc::mem_fun (*this, &TriggerUI::choose_sample))); + loitems.push_back (MenuElem (_("from file"), sigc::bind(sigc::mem_fun (*this, (&TriggerUI::choose_sample)), true))); loitems.push_back (MenuElem (_("from selection"), sigc::mem_fun (*this, &TriggerUI::set_from_selection))); items.push_back (MenuElem (_("Load..."), *load_menu)); diff --git a/gtk2_ardour/trigger_ui.h b/gtk2_ardour/trigger_ui.h index 053a7b20ef..acdc94b402 100644 --- a/gtk2_ardour/trigger_ui.h +++ b/gtk2_ardour/trigger_ui.h @@ -64,7 +64,7 @@ public: ARDOUR::TriggerBox& triggerbox() const { return trigger()->box(); } void choose_color (); - void choose_sample (); + void choose_sample (bool allow_multiple_select); void sample_chosen (int r); void launch_context_menu ();