diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2006-03-22 17:03:00 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2006-03-22 17:03:00 +0000 |
commit | 3aa346b253d515c3d0715ec5e0fa8b6ad477c4e5 (patch) | |
tree | a41d4380ad270324a2d05cbbab0d1e57dce2bdfe /libs/ardour/import.cc | |
parent | 004a49b0c7051a4d0f8972b0aff0ef8fa9cab03d (diff) |
significant changes in code to handle import/embedding - much cleaner and less code, plus the import progress bar now works; unify response handling for Gtkmm2ext::Choice
git-svn-id: svn://localhost/trunk/ardour2@415 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/import.cc')
-rw-r--r-- | libs/ardour/import.cc | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/libs/ardour/import.cc b/libs/ardour/import.cc index f5884a1c1d..aa7b902501 100644 --- a/libs/ardour/import.cc +++ b/libs/ardour/import.cc @@ -61,11 +61,12 @@ Session::import_audiofile (import_status& status) jack_nframes_t so_far; char buf[PATH_MAX+1]; int ret = -1; - vector<AudioRegion *> new_regions; vector<string> new_paths; struct tm* now; string tmp_convert_file; + status.new_regions.clear (); + if ((in = sf_open (status.pathname.c_str(), SFM_READ, &info)) == 0) { error << string_compose(_("Import: cannot open input sound file \"%1\""), status.pathname) << endmsg; return -1; @@ -214,7 +215,7 @@ Session::import_audiofile (import_status& status) AudioRegion *r = new AudioRegion (sources, 0, newfiles[0]->length(), region_name_from_path (PBD::basename(basepath)), 0, AudioRegion::Flag (AudioRegion::DefaultFlags | AudioRegion::WholeFile)); - new_regions.push_back (r); + status.new_regions.push_back (r); } else { for (n = 0; n < nfiles && !status.cancel; ++n) { @@ -230,7 +231,7 @@ Session::import_audiofile (import_status& status) AudioRegion *r = new AudioRegion (*newfiles[n], 0, newfiles[n]->length(), region_name_from_path (PBD::basename (newfiles[n]->name())), 0, AudioRegion::Flag (AudioRegion::DefaultFlags | AudioRegion::WholeFile | AudioRegion::Import)); - new_regions.push_back (r); + status.new_regions.push_back (r); } } @@ -259,7 +260,7 @@ Session::import_audiofile (import_status& status) } if (status.cancel) { - for (vector<AudioRegion *>::iterator i = new_regions.begin(); i != new_regions.end(); ++i) { + for (vector<AudioRegion *>::iterator i = status.new_regions.begin(); i != status.new_regions.end(); ++i) { delete *i; } |