diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2011-07-26 17:22:10 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2011-07-26 17:22:10 +0000 |
commit | 8fb9e72a77ac1366ed1aca18f7f76ee4179d9f89 (patch) | |
tree | 413eb2633c4a69588fbd2ba76e20ee598fd3229b /gtk2_ardour/editor_audio_import.cc | |
parent | 921358a5f35beebbed54082f8e55fec9c7758670 (diff) |
allow import to selected MIDI tracks (note that this gets confused if the MIDI file contains multiple MetaTracks - each track ends up in the same track, which may or may not be the right thing)
git-svn-id: svn://localhost/ardour2/branches/3.0@9938 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/editor_audio_import.cc')
-rw-r--r-- | gtk2_ardour/editor_audio_import.cc | 27 |
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 (); |