summaryrefslogtreecommitdiff
path: root/gtk2_ardour/editor_audio_import.cc
diff options
context:
space:
mode:
Diffstat (limited to 'gtk2_ardour/editor_audio_import.cc')
-rw-r--r--gtk2_ardour/editor_audio_import.cc27
1 files changed, 19 insertions, 8 deletions
diff --git a/gtk2_ardour/editor_audio_import.cc b/gtk2_ardour/editor_audio_import.cc
index c2351c74fc..6200a6f98f 100644
--- a/gtk2_ardour/editor_audio_import.cc
+++ b/gtk2_ardour/editor_audio_import.cc
@@ -98,7 +98,8 @@ void
Editor::external_audio_dialog ()
{
vector<string> paths;
- uint32_t track_cnt;
+ uint32_t audio_track_cnt;
+ uint32_t midi_track_cnt;
if (_session == 0) {
MessageDialog msg (_("You can't import or embed an audiofile until you have a session loaded."));
@@ -106,22 +107,32 @@ Editor::external_audio_dialog ()
return;
}
- track_cnt = 0;
+ audio_track_cnt = 0;
+ midi_track_cnt = 0;
for (TrackSelection::iterator x = selection->tracks.begin(); x != selection->tracks.end(); ++x) {
AudioTimeAxisView* atv = dynamic_cast<AudioTimeAxisView*>(*x);
- if (!atv) {
- continue;
- } else if (atv->is_audio_track()) {
- track_cnt++;
+ if (atv) {
+ if (atv->is_audio_track()) {
+ audio_track_cnt++;
+ }
+
+ } else {
+ MidiTimeAxisView* mtv = dynamic_cast<MidiTimeAxisView*>(*x);
+
+ if (mtv) {
+ if (mtv->is_midi_track()) {
+ midi_track_cnt++;
+ }
+ }
}
}
if (sfbrowser == 0) {
- sfbrowser = new SoundFileOmega (*this, _("Add Existing Media"), _session, track_cnt, true);
+ sfbrowser = new SoundFileOmega (*this, _("Add Existing Media"), _session, audio_track_cnt, midi_track_cnt, true);
} else {
- sfbrowser->reset (track_cnt);
+ sfbrowser->reset (audio_track_cnt, midi_track_cnt);
}
sfbrowser->show_all ();