diff options
-rw-r--r-- | gtk2_ardour/sfdb_ui.cc | 16 | ||||
-rw-r--r-- | gtk2_ardour/sfdb_ui.h | 3 |
2 files changed, 19 insertions, 0 deletions
diff --git a/gtk2_ardour/sfdb_ui.cc b/gtk2_ardour/sfdb_ui.cc index f7be171081..4c96172f16 100644 --- a/gtk2_ardour/sfdb_ui.cc +++ b/gtk2_ardour/sfdb_ui.cc @@ -1293,6 +1293,11 @@ SoundFileOmega::reset_options_noret () bool SoundFileOmega::reset_options () { + if (_import_active) { + _reset_post_import = true; + return true; + } + vector<string> paths = get_paths (); if (paths.empty()) { @@ -1664,6 +1669,8 @@ SoundFileOmega::SoundFileOmega (string title, ARDOUR::Session* s, , copy_files_btn ( _("Copy files to session")) , selected_audio_track_cnt (selected_audio_tracks) , selected_midi_track_cnt (selected_midi_tracks) + , _import_active (false) + , _reset_post_import (false) { VBox* vbox; HBox* hbox; @@ -1977,10 +1984,19 @@ SoundFileOmega::do_something (int action) SrcQuality quality = get_src_quality(); + _import_active = true; + if (copy_files_btn.get_active()) { PublicEditor::instance().do_import (paths, chns, mode, quality, where, instrument); } else { PublicEditor::instance().do_embed (paths, chns, mode, where, instrument); } + + _import_active = false; + + if (_reset_post_import) { + _reset_post_import = false; + reset_options (); + } } diff --git a/gtk2_ardour/sfdb_ui.h b/gtk2_ardour/sfdb_ui.h index 3c4f088258..fcdce2a140 100644 --- a/gtk2_ardour/sfdb_ui.h +++ b/gtk2_ardour/sfdb_ui.h @@ -321,6 +321,9 @@ class SoundFileOmega : public SoundFileBrowser void where_combo_changed (); void do_something (int action); + + bool _import_active; + bool _reset_post_import; }; #endif // __ardour_sfdb_ui_h__ |