trigger_ui: re-add the ability to pick several clips at once

This commit is contained in:
Ben Loftis 2022-01-06 16:28:57 -06:00
parent 2f9b84fd48
commit e9081b0b7c
3 changed files with 6 additions and 4 deletions

View file

@ -215,7 +215,7 @@ SlotPropertyTable::SlotPropertyTable ()
_load_button.set_name("FollowAction"); _load_button.set_name("FollowAction");
_load_button.set_text (_("Load")); _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.set_name("FollowAction");
_color_button.signal_clicked.connect (sigc::mem_fun (*this, (&TriggerUI::choose_color))); _color_button.signal_clicked.connect (sigc::mem_fun (*this, (&TriggerUI::choose_color)));

View file

@ -189,7 +189,7 @@ TriggerUI::choose_color ()
} }
void void
TriggerUI::choose_sample () TriggerUI::choose_sample (bool allow_multiple_select)
{ {
if (!_file_chooser) { if (!_file_chooser) {
_file_chooser = new Gtk::FileChooserDialog (_("Select sample"), Gtk::FILE_CHOOSER_ACTION_OPEN); _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.disconnect ();
_file_chooser_connection = _file_chooser->signal_response ().connect (sigc::mem_fun (*this, &SlotPropertyTable::sample_chosen)); _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); Menu* load_menu = manage (new Menu);
MenuList& loitems (load_menu->items ()); 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))); loitems.push_back (MenuElem (_("from selection"), sigc::mem_fun (*this, &TriggerUI::set_from_selection)));
items.push_back (MenuElem (_("Load..."), *load_menu)); items.push_back (MenuElem (_("Load..."), *load_menu));

View file

@ -64,7 +64,7 @@ public:
ARDOUR::TriggerBox& triggerbox() const { return trigger()->box(); } ARDOUR::TriggerBox& triggerbox() const { return trigger()->box(); }
void choose_color (); void choose_color ();
void choose_sample (); void choose_sample (bool allow_multiple_select);
void sample_chosen (int r); void sample_chosen (int r);
void launch_context_menu (); void launch_context_menu ();