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
|
|
@ -63,6 +63,16 @@ int main(int argc,char **argv) {
|
|||
MainWindow window(false,"");main_window=&window;window.resize(0,0,1400,900);window.show();check(window.open_project(project.c_str()));pump();
|
||||
auto *s=first<SequencerWidget>(window);if(!s)throw std::runtime_error("Sequencer missing");
|
||||
auto reset=[&](){window.reset_layout();check(window.open_project(project.c_str()));window.resize(0,20,1400,900);tab("Sequencer");s->select(0,0);s->position(0);check(window.set_loop(3840,7680,true));window.fit_song();pump();};
|
||||
if(std::getenv("XTC_CAPTURE_CREATIVE_ONLY")) {
|
||||
reset();check(window.open_track_inserts(0));auto *inserts=window.track_inserts();
|
||||
check(inserts->apply_template(1));tab("Track inserts");capture("creative-dub-rack");
|
||||
Fl::add_timeout(.3,[](void*){capture("creative-rack-actions");if(system("xdotool key Escape"))std::abort();});
|
||||
auto *actions=dynamic_cast<Fl_Menu_Button *>(named(window,"Rack actions"));if(!actions)throw std::runtime_error("Missing rack actions");
|
||||
actions->menu()->pulldown(actions->x(),actions->y(),actions->w(),actions->h(),nullptr,actions);
|
||||
reset();dialog("creative-strum-dialog",[&]{s->strum_dialog();});
|
||||
check(s->make_chord({4,7}));check(s->strum_chords(30,false));piano_view();capture("creative-strum-result");
|
||||
window.do_callback();std::puts("Creative workflow captures completed.");return 0;
|
||||
}
|
||||
if(std::getenv("XTC_CAPTURE_HOST_VST3")) {
|
||||
reset();capture("compact-workspace");
|
||||
auto *create=dynamic_cast<Fl_Menu_Button *>(named(window,"Create"));if(!create)throw std::runtime_error("Missing Create dropdown");
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue