ImportProgressWindow ipw (&import_status, _("Import"), _("Cancel Import"));
+ bool ok = true;
+
if (chns == Editing::ImportMergeFiles) {
/* create 1 region from all paths, add to 1 track,
}
}
- if (!cancel) {
- import_sndfiles (paths, mode, quality, pos, 1, 1, track, false);
+ if (cancel) {
+ ok = false;
+ } else {
+ ok = (import_sndfiles (paths, mode, quality, pos, 1, 1, track, false) == 0);
}
} else {
bool replace = false;
- bool ok = true;
for (vector<string>::iterator a = paths.begin(); a != paths.end(); ++a) {
}
}
+ if (ok) {
+ _session->save_state ("");
+ }
+
import_status.all_done = true;
}
import_status.done = true;
+ int result = -1;
+
if (!import_status.cancel && !import_status.sources.empty()) {
- if (add_sources (import_status.paths,
- import_status.sources,
- import_status.pos,
- import_status.mode,
- import_status.target_regions,
- import_status.target_tracks,
- track, false) == 0) {
- _session->save_state ("");
- }
+ result = add_sources (
+ import_status.paths,
+ import_status.sources,
+ import_status.pos,
+ import_status.mode,
+ import_status.target_regions,
+ import_status.target_tracks,
+ track, false
+ );
/* update position from results */
pos = import_status.pos;
}
-
set_canvas_cursor (current_canvas_cursor);
- return 0;
+ return result;
}
int