diff options
Diffstat (limited to 'gtk2_ardour/sfdb_ui.cc')
-rw-r--r-- | gtk2_ardour/sfdb_ui.cc | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/gtk2_ardour/sfdb_ui.cc b/gtk2_ardour/sfdb_ui.cc index f18b543e0c..19e265b79e 100644 --- a/gtk2_ardour/sfdb_ui.cc +++ b/gtk2_ardour/sfdb_ui.cc @@ -50,6 +50,8 @@ using namespace ARDOUR; using namespace PBD; using namespace std; +Glib::ustring SoundFileBrowser::persistent_folder; + SoundFileBox::SoundFileBox () : _session(0), @@ -308,6 +310,11 @@ SoundFileBrowser::SoundFileBrowser (string title, ARDOUR::Session* s) chooser.set_filter (filter); chooser.set_select_multiple (true); chooser.signal_update_preview().connect(mem_fun(*this, &SoundFileBrowser::update_preview)); + + if (!persistent_folder.empty()) { + chooser.set_current_folder (persistent_folder); + } + found_list_view.get_selection()->signal_changed().connect(mem_fun(*this, &SoundFileBrowser::found_list_view_selected)); found_search_btn.signal_clicked().connect(mem_fun(*this, &SoundFileBrowser::found_search_clicked)); @@ -318,6 +325,11 @@ SoundFileBrowser::SoundFileBrowser (string title, ARDOUR::Session* s) set_session (s); } +SoundFileBrowser::~SoundFileBrowser () +{ + persistent_folder = chooser.get_current_folder(); +} + void SoundFileBrowser::set_session (Session* s) { @@ -548,3 +560,4 @@ SoundFileOmega::mode_changed () break; } } + |