summaryrefslogtreecommitdiff
path: root/gtk2_ardour/sfdb_ui.cc
diff options
context:
space:
mode:
Diffstat (limited to 'gtk2_ardour/sfdb_ui.cc')
-rw-r--r--gtk2_ardour/sfdb_ui.cc13
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;
}
}
+