+private:
+ class FoundTagColumns : public Gtk::TreeModel::ColumnRecord
+ {
+ public:
+ Gtk::TreeModelColumn<std::string> pathname;
+
+ FoundTagColumns() { add(pathname); }
+ };
+
+ class FreesoundColumns : public Gtk::TreeModel::ColumnRecord
+ {
+ public:
+ Gtk::TreeModelColumn<std::string> id;
+ Gtk::TreeModelColumn<std::string> uri;
+ Gtk::TreeModelColumn<std::string> filename;
+ Gtk::TreeModelColumn<std::string> duration;
+ Gtk::TreeModelColumn<std::string> filesize;
+ Gtk::TreeModelColumn<std::string> smplrate;
+ Gtk::TreeModelColumn<std::string> license;
+ Gtk::TreeModelColumn<bool> started;
+
+ FreesoundColumns() {
+ add(id);
+ add(filename);
+ add(uri);
+ add(duration);
+ add(filesize);
+ add(smplrate);
+ add(license);
+ add(started);
+ }
+ };
+
+ FoundTagColumns found_list_columns;
+ Glib::RefPtr<Gtk::ListStore> found_list;
+
+ FreesoundColumns freesound_list_columns;
+ Glib::RefPtr<Gtk::ListStore> freesound_list;
+
+ Gtk::Button freesound_more_btn;
+ Gtk::Button freesound_similar_btn;
+
+ void handle_freesound_results(std::string theString);
+
+public:
+ SoundFileBrowser (std::string title, ARDOUR::Session* _s, bool persistent);
+ virtual ~SoundFileBrowser ();
+
+ int run ();
+ int status () const { return _status; }
+