mirror of
https://github.com/Ardour/ardour.git
synced 2025-12-17 12:16:30 +01:00
redesign technique for naming/creating regions for MIDI clone (or other non-capture driven MIDI region creation operations).
See comments in Session::new_midi_source_name() for details.
This commit is contained in:
parent
0802cbf30c
commit
c52f7957a9
12 changed files with 73 additions and 58 deletions
|
|
@ -335,21 +335,19 @@ MidiSource::mark_streaming_write_completed ()
|
|||
boost::shared_ptr<MidiSource>
|
||||
MidiSource::clone (const string& path, Evoral::MusicalTime begin, Evoral::MusicalTime end)
|
||||
{
|
||||
string newname = PBD::basename_nosuffix(_name.val());
|
||||
string newpath;
|
||||
|
||||
/* get a new name for the MIDI file we're going to write to
|
||||
*/
|
||||
|
||||
if (path.empty()) {
|
||||
|
||||
/* get a new name for the MIDI file we're going to write to
|
||||
*/
|
||||
|
||||
do {
|
||||
newname = bump_name_once (newname, '-');
|
||||
newpath = Glib::build_filename (_session.session_directory().midi_path(), newname + ".mid");
|
||||
|
||||
} while (Glib::file_test (newpath, Glib::FILE_TEST_EXISTS));
|
||||
string newname = PBD::basename_nosuffix(_name.val());
|
||||
newname = bump_name_once (newname, '-');
|
||||
newname += ".mid";
|
||||
newpath = _session.new_source_path_from_name (DataType::MIDI, newname);
|
||||
} else {
|
||||
/* caller must check for pre-existing file */
|
||||
assert (!Glib::file_test (path, Glib::FILE_TEST_EXISTS));
|
||||
newpath = path;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue