feat(midi): strum chords with preserved note ends and undo (phase 99)
This commit is contained in:
parent
083ac05ae6
commit
bd0a63c06d
17 changed files with 172 additions and 5 deletions
|
|
@ -270,6 +270,16 @@ int creative_workflow_tests()
|
|||
engine_status.sample_position=48000;s->position(1920);CHECK(s->add_region()==XTC_OK);auto right_clip=s->selected_clip();CHECK(s->select(audio_track,left_clip) && s->toggle_clip(right_clip));
|
||||
CHECK(s->crossfade_selection()==XTC_OK);xtc_clip_info audio{};CHECK(xtc_project_find_clip(s->project(),left_clip,&audio)==XTC_OK && audio.fade_out_tick==1920);
|
||||
CHECK(window.undo()==XTC_OK && xtc_project_find_clip(s->project(),left_clip,&audio)==XTC_OK && !audio.fade_out_tick);
|
||||
engine_status.sample_position=0;
|
||||
CHECK(window.create_track(true)==XTC_OK);auto midi_track=s->selected_track();
|
||||
CHECK(s->add_midi_clip()==XTC_OK);auto chord_clip=s->selected_clip();
|
||||
CHECK(window.open_piano_roll()==XTC_OK);
|
||||
CHECK(window.piano_roll()->add_note(0,200,60,100,0)==XTC_OK);
|
||||
CHECK(window.piano_roll()->add_note(0,200,67,100,0)==XTC_OK);
|
||||
CHECK(s->select(midi_track,chord_clip) && s->strum_chords(30,false)==XTC_OK);
|
||||
xtc_note_info strummed{};size_t note_count=0;CHECK(xtc_project_note_count(s->project(),¬e_count)==XTC_OK);
|
||||
CHECK(xtc_project_get_note(s->project(),note_count-1,&strummed)==XTC_OK && strummed.start_tick==30 && strummed.length_tick==170);
|
||||
CHECK(window.undo()==XTC_OK && xtc_project_get_note(s->project(),note_count-1,&strummed)==XTC_OK && strummed.start_tick==0 && strummed.length_tick==200);
|
||||
CHECK(!panel->comparison_ready(0) && !panel->comparison_ready(1));
|
||||
window.do_callback();puts("Creative workflow GUI checks passed.");return failures ? 1 : 0;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue